doushi2902 2010-04-29 03:58
浏览 57
已采纳

PHP和MySQL删除多行脚本问题

I'm trying to delete two tables rows from two different tables at once when a user clicks the delete button, but for some reason I cant get the table rows to delete can some one help me figure out what is wrong with my script? Thanks

Here is the MySQL tables.

CREATE TABLE cases (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
file VARCHAR(255) NOT NULL,
case VARCHAR(255) NOT NULL,
name VARCHAR(255) NOT NULL,
PRIMARY KEY (id)
);

CREATE TABLE users_cases (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
cases_id INT UNSIGNED NOT NULL,
user_id INT UNSIGNED NOT NULL,
PRIMARY KEY (id)
);

Here is the PHP & MySQL script.

if(isset($_POST['delete_case'])) {

$cases_ids = array();

$mysqli = mysqli_connect("localhost", "root", "", "sitename");
$dbc = mysqli_query($mysqli,"SELECT cases.*, users_cases.* FROM cases INNER JOIN users_cases ON users_cases.cases_id = cases.id WHERE users_cases.user_id='$user_id'");

if (!$dbc) {
    print mysqli_error($mysqli);
}  else {
    while($row = mysqli_fetch_array($dbc)){ 
        $cases_ids[] = $row["cases_id"];
    }
}

foreach($_POST['delete_id'] as $di) {
    if(in_array($di, $cases_ids)) {
        $mysqli = mysqli_connect("localhost", "root", "", "sitename");
        $dbc = mysqli_query($mysqli,"DELETE FROM users_cases WHERE cases_id = '$delete_id'");

        $dbc2 = mysqli_query($mysqli,"DELETE FROM cases WHERE id = '$delete_id'");
    }

}

}

Here is the XHTML.

<li>
<input type="text" name="file[]" size="25" />
<input type="text" name="case[]" size="25" />
<input type="text" name="name[]" size="25" />
<input type="hidden" name="delete_id" value="' . $row['cases_id'] . '" />
</li>

<li>
<input type="text" name="file[]" size="25" />
<input type="text" name="case[]" size="25" />
<input type="text" name="name[]" size="25" />
<input type="hidden" name="delete_id" value="' . $row['cases_id'] . '" />
</li>

<li>
<input type="text" name="file[]" size="25" />
<input type="text" name="case[]" size="25" />
<input type="text" name="name[]" size="25" />
<input type="hidden" name="delete_id" value="' . $row['cases_id'] . '" />
</li>
  • 写回答

2条回答 默认 最新

  • dongyan1625 2010-04-29 04:13
    关注

    Maybe I'm mistaken here, you set every other form element to be put into an array EXCEPT delete_id. Is delete_id supposed to be an array in the form like so?

    <li>
        <input type="text" name="file[]" size="25" />
        <input type="text" name="case[]" size="25" />
        <input type="text" name="name[]" size="25" />
        <input type="hidden" name="delete_id[]" value="' . $row['cases_id'] . '" />
    </li>
    
    <li>
        <input type="text" name="file[]" size="25" />
        <input type="text" name="case[]" size="25" />
        <input type="text" name="name[]" size="25" />
        <input type="hidden" name="delete_id[]" value="' . $row['cases_id'] . '" />
    </li>
    
    <li>
        <input type="text" name="file[]" size="25" />
        <input type="text" name="case[]" size="25" />
        <input type="text" name="name[]" size="25" />
        <input type="hidden" name="delete_id[]" value="' . $row['cases_id'] . '" />
    </li>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥50 需求一个up主付费课程
  • ¥20 模型在y分布之外的数据上预测能力不好如何解决
  • ¥15 processing提取音乐节奏
  • ¥15 gg加速器加速游戏时,提示不是x86架构
  • ¥15 python按要求编写程序
  • ¥15 Python输入字符串转化为列表排序具体见图,严格按照输入
  • ¥20 XP系统在重新启动后进不去桌面,一直黑屏。
  • ¥15 opencv图像处理,需要四个处理结果图
  • ¥15 无线移动边缘计算系统中的系统模型
  • ¥15 深度学习中的画图问题