0

列の値を NULL に設定しようとするクエリ (今のところ安全ではありません) があります。基本的には、空に戻すだけです。データベース設計で「NULL を許可」がチェックされています。そのMSSQLデータベース。まず、私が試した:

$query = "UPDATE  Table_Name SET Image = '', Thumb = '' WHERE PageID = 5";

それで:

$query = "UPDATE  Table_Name SET Image = NULL, Thumb = NULL WHERE PageID = 5";

2 番目のものはエラーを生成しませんが、データベースの値を NULL に設定しません。私が見ることができるもの(ウェブサイトの調査)から、「NULL」は正しいですか?申し訳ありませんが、PHP は初めてです。

編集

クエリは if ステートメントによって呼び出されます。これは、GET 値が等しいかどうかを確認します。これはあまり安全ではないことは承知しています。テクニックを使って少しテスト/プレイしようとしています。完全な呼び出しとクエリは次のとおりです。

<?php
if (isset($_GET['change']) && $_GET['change'] == "image1") {
    $query = "UPDATE  Table_Name SET Image = NULL, Thumb = NULL WHERE     NewsID = ".$_GET['id']." ";
}
?>

このifステートメントは、削除「ボタン」をトリガーします。コードは次のようになります。

<a href="Update.php?change=image1&cid=<?php echo $row["NewsID"]; ?>&id=<?php echo $row["NewsID"]; ?>">delete</a></td>

私は今、クエリが呼び出されていないと信じていますか? ただし、ボタンは変更され、本来の値が設定されるため、if ステートメントがこれを認識していないと推測できます。Update.php は、クエリが現在表示されているページであるため、ほとんど更新として機能します。

4

1 に答える 1

0

長い間 PHP を使用していませんが、NULL を引用符で囲む必要はありますか?

これを試して:

$query = "UPDATE  Table_Name SET Image = 'NULL', Thumb = 'NULL' WHERE PageID = 5";

お役に立てれば。

于 2013-06-20T14:02:39.773 に答える