如何从POST获得价值

时间:2012-12-05 00:33:30

标签: php

这段代码在过去的四个小时里一直在绊倒我。它正在按主要ID删除一行照片。

我有var_dump($selectedPhoto),这是正确的ID,一个数字。我每次按删除照片时都会运行代码,进入mysqli_stmt_store_result部分并拍摄$txtMessage但数据库不会更新。

这真的很奇怪,因为我使用了完全相同的代码,在另一个页面上使用了不同的变量,它完全正常。

你能看到这个错误吗?或者有更好的方法来编写delete语句。

if (isset($_POST['btnDeletePhoto']))
{
    $selectedPhoto = $_SESSION['selectedPhoto'];
    $deleteString = "DELETE FROM Photos WHERE PhotoID = ?";
    $preparedDeleteStmt = mysqli_prepare($link, $deleteString);
    mysqli_stmt_bind_param($preparedDeleteStmt, 'i', $selectedPhoto);
    if (!mysqli_stmt_execute($preparedDeleteStmt))
    {
        mysqli_close($link);
        die("The system is not available, try again later");
    }
    if(mysqli_stmt_store_result($preparedDeleteStmt))
    {
        $txtMessage = "Delete successfull";
    }

要添加:$selectedPhoto是选择,下拉列表值的值。

1 个答案:

答案 0 :(得分:0)

如果照片来自选择的值,则它不会存储在会话变量中,因此您可能需要更改:

$selectedPhoto = $_SESSION['selectedPhoto'];

为:

$selectedPhoto = $_POST['selectedPhoto'];

除此之外,您还需要为所有数据库操作添加错误处理。