PHP更新未收到正确的ID

时间:2013-06-20 12:59:43

标签: php mysql

我正在尝试在完成某个帖子的编辑后更新我的表格。我正在尝试使用粘贴的ID更新它。

由于某种原因,我的查询没有获取要更新的ID。这是我现在拥有的。

使用传递的id显示数据库中的数据:

if (isset($_GET['id']) && is_numeric($_GET['id'])){

             $id = $_GET['id'];

             $show = mysql_query("SELECT * FROM notes WHERE '$id' = id");
             while($edit_row = mysql_fetch_assoc($show)){

                echo '
                    <tr>
                        <td align="center">Title</td>
                        <td><input type="text" name="title" value="'.$edit_row['title'].'" class="title"></td>
                    </tr>
                    <tr>
                        <td align="center">Note</td>
                        <td><textarea cols="35" rows="6" name="notes" class="notes">'.$edit_row['note'].'</textarea></td>
                    </tr>
                    <tr>
                        <td colspan="2" align="center"><input type="submit" name="submit" value="Update" class="new"></td>
                    </tr>
                ';
             }
        }

这是我的查询更新:

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

    $title = trim(mysql_real_escape_string($_POST['title']));
    $notes = trim(mysql_real_escape_string($_POST['notes']));

    $update = mysql_query("UPDATE notes SET title = '$title' WHERE id = '$id'") or die(mysql_error());

    header("Location:notes.php");
}

有什么不对吗?更新查询是不是以某种方式获取id?

3 个答案:

答案 0 :(得分:2)

从哪里获取身份证? 您需要在上面的HTML代码中使用以下内容:

<input type='hidden' name='id' value='.$id.' />

在下面的接收代码中:

$id = trim(mysql_real_escape_string($_POST['id']));

答案 1 :(得分:1)

您没有向表单发送$_GET['id']。添加带有id的隐藏输入。

答案 2 :(得分:-1)

您尝试使用$_GET[]获取ID号,但不通过$_GET[]

发送任何内容