0

嗨,我有一个数据表,它将从我的数据库中获取数据并将其显示在我的表中,但是我正在使用数据表创建两个操作链接,一个用于编辑,另一个用于删除,我已经创建了一个删除函数,现在我想在我的删除链接中使用它我尝试使用它但是当我尝试使用它时它删除了我的所有记录这是我的代码

            while ($row = mysql_fetch_array($result)) {
            echo "<tr>";
            echo "<td align='center'>$row[name]</td>";
            echo "<td align='center'>$row[add1]</td>";
            echo "<td align='center'>$row[city]</td>";
            echo "<td align='center'>$row[tel]</td>";
            echo "<td align='center'>$row[mobile1]</td>";
            echo "<td align='center'>$row[contpers1]</td>";
            echo "<td><a href=\"cutomer.php?mode=false?code=$row[accode]?mode=false\"><img src='images/edit.png'></a>&nbsp;&nbsp;&nbsp;&nbsp;<a href='?delete' onClick=\"return confirm('Confrim Delete?');\"><img src='images/delete.png'></a></td>";
            echo "</tr>";

            if (isset($_GET["delete"])) {
               delete($zdb, "accmast", "accode", $row["accode"], "custmain.php");
                }
             }

这是我的功能

function delete($mydb, $table, $vouch, $chk, $file){
    mysql_select_db($mydb);


   $qry= mysql_query("DELETE FROM $table WHERE $vouch='$chk'") or die(mysql_error());
    header("refresh: 1; $file");
}
4

3 回答 3

0

你应该回应声明

"DELETE FROM $table WHERE $vouch='$chk'" 

看看它在 WHERE 条件下会得到什么。如果它删除所有行,问题应该在这里。

而且我不是 100% 确定,但 $row[accode] 应该替换为该字符串中的 {$row['accode']}

于 2013-04-26T16:26:38.910 回答
0

这里的问题是您要询问是否在 de while 语句中设置了 delete,并且当然删除了所有记录。

尝试在外面和之前使用 if ,您还需要一个要删除的记录的 ID,例如在 GET 变量的“删除”中:

        if (isset($_GET["delete"])) {
           delete($zdb, "accmast", "accode", $_GET["delete"], "custmain.php");
        }
        while ($row = mysql_fetch_array($result)) {
            echo "<tr>";
            echo "<td align='center'>$row[name]</td>";
            echo "<td align='center'>$row[add1]</td>";
            echo "<td align='center'>$row[city]</td>";
            echo "<td align='center'>$row[tel]</td>";
            echo "<td align='center'>$row[mobile1]</td>";
            echo "<td align='center'>$row[contpers1]</td>";
            echo "<td><a href=\"cutomer.php?mode=false?code=$row[accode]?mode=false\"><img src='images/edit.png'></a>&nbsp;&nbsp;&nbsp;&nbsp;<a href='?delete' onClick=\"return confirm('Confrim Delete?');\"><img src='images/delete.png'></a></td>";
            echo "</tr>";
        }
于 2013-04-26T16:30:22.397 回答
0

在 mysql_query()

“从 $table 中删除 $vouch='$chk'”

应该

“从 $table 中删除 $vouch='”。$chk。"'"

于 2013-04-26T16:33:37.487 回答