-4

私が持っているphpスクリプトに問題があります。

if(!empty($_POST['iblogtitle']))
{
    $ptitle = mysqli_real_escape_string($link, $_POST['iblogtitle']);
    $pcontent = mysqli_real_escape_string($link, $_POST['iblogcontent']);
    $pblogid = mysqli_real_escape_string($link, $_POST['iblogid']);
    $query = "UPDATE blog SET PostTitle='" . $ptitle . "', PostContent='" . $pcontent . "', PostDate=NOW() WHERE PostID='" . $pblogid . "'";
    $sql = mysqli_query($link, $query);

    if($sql)
    {
        header("LOCATION: blog.php");
    }
    else
    {
        $result = "Blog update failed: " . mysqli_error($link) . " / " . $query;
        echo $result;
    }
}

私が抱えている問題は、このifステートメントが入力されたとき、明らかに$_POST['iblogtitle']値がなければならないということです。ただし、チェックして再チェックし、値を$query含めないように変更しmysqli_real_escape_string、毎回更新に失敗しました。

エラーを受け取りました:

Blog update failed: / UPDATE blog SET PostTitle='', PostContent='', PostDate=NOW() WHERE PostID=''

実際の MySQL エラーはありません。error_reporting がオフになっていることを確認しerror_reporting(1)、変数宣言のすぐ上に設定しました。

4

1 に答える 1

0

私が見ることができるように、スクリプト全体を投稿してください。

接続を含めるのを忘れたために $link が無効になる場合があります。

于 2013-07-02T11:27:05.460 に答える