-3

我有一个 php 中的取消链接功能的问题,我有一个删除脚本,我单击删除按钮会从表中删除图像 ID,但是当我将取消链接功能添加到同一个按钮时,它会自动删除图像但是ID 仍然显示一个空图像。

  <a href="inc/delete.php?id=<?php echo $i_id?>"><img src="inc/delete.png" style="height:15px;width:15px;"></img></a>

上面的代码删除了图像 ID,但没有删除有效的图像,但我还需要从文件中删除图像。

<a href="inc/delete.php?id=<?php echo $i_id, unlink('photos/'.$i_img);?>"><img src="inc/delete.png" style="height:15px;width:15px;"></img></a>

上面的代码会在我刷新页面时自动调用,如果有图像,它将删除它并保留 ID。我的问题是,每当我单击删除图像并取消链接时,我都想执行该操作。任何帮助将不胜感激。

4

4 回答 4

1

逗号是什么-> $i_id,取消链接

你正在调用unlink()函数

只需删除 href 中的 unlink 并将 unlink 函数放入 delete.php 文件中

<a href="inc/delete.php?id=<?php echo $i_id; ?>"><img src="inc/delete.png" style="height:15px;width:15px;"></img></a>
于 2013-07-28T13:46:56.673 回答
0

unlink()从以下代码中删除:

<a href="inc/delete.php?id=<?php echo $i_id, unlink('photos/'.$i_img);?>"><img src="inc/delete.png" style="height:15px;width:15px;"></img></a>

delete.php并在您的文件中使用以下逻辑。

 $query = "YOUR DELETE QUERY";

 if( mysqli_query($connection, $query) ){  //if query executes successfully   
    if( file_exists("YOUR FILE PATH") ) { //check for the existence of file
        if( unlink("YOUR FILE PATH") ){ 
           //success! file has been deleted from server and entry from database
        } else {
           //Error! file not deleted from server but entry from database is gone
        }                    
    }
 } else {
     //error in database operation
 }
于 2013-07-28T14:10:18.487 回答
0

好吧,我是这样做的,以防万一以后有人需要答案。

delete.php
    $id = $_GET["id"]; //ID OF THE ITEM FROM THE OTHER FILE
$select=mysql_query("select img from $table where id='$id'");
$image=mysql_fetch_array($select);
$img = $image['img'];
unlink("C:/wamp/www/ifinal/photos/$img");
$result=mysql_query("delete from $table where id='$id'");

将 id 发送到的 hrefdelete.php

 <a href="inc/delete.php?id=<?php echo $i_id;?>"><img src="inc/delete.png" style="height:15px;width:15px;"></img></a>
于 2013-07-30T12:09:43.983 回答
0

这不是 php 的工作方式......您的 php 指令在页面呈现给用户之前在服务器端执行。在这里,您对 php 说的是“在此处回显 id,然后立即调用此函数”,而不是“回显此 id,单击时调用此函数”;所有这些都是在将页面发送到客户端之前完成的,一旦浏览器加载了页面,您就无法调用函数。基本上,请记住 php 与服务器“对话”,而不是与浏览器对话。

你不能告诉浏览器“在点击时使用取消链接php功能”......浏览器不知道如何使用php。

您必须告诉浏览器“调用服务器上的 php 页面”,该页面将理解 php 并仅在调用页面时根据 id 取消链接图像,就像 Ka_lin 建议的那样。

也许您应该尝试更多地了解客户端和服务器之间的区别以及调用php脚本的过程。

于 2013-07-28T13:59:11.710 回答