0

私は多くの投稿を見てきましたが、この単純な UPDATE がデータベースに影響を与えない理由をまだ理解できません:


$con = mysqli_connect("localhost", "username", "password", "database");
// check connection
if (mysqli_connect_errno()) {
    echo "Failed to connect to MySQL: " . mysqli_connect_error();
}


$quantityArray = array();

foreach ($_POST as $key => $value) {
    $quantityArray[$key] = $value;
}

foreach ($quantityArray as $key => $value) {
    $value = mysqli_real_escape_string($con, $value);
}

foreach ($quantityArray as $key => $value) {
    $query = "UPDATE inventory SET quantity = $value WHERE uniqueID = $key";

echo "<br /><br / >" . $query . "<br /><br / >";

    $result = mysqli_query($con, $query);

echo "<br /><br / >" . $result . "<br /><br / >";

}

このスクリプトが呼び出されると、$_POST はキーとしての一意の ID と値としての数量 (どちらも整数値) の配列になります。はい、適切なキーとその値のみが渡されていることをテストして確認しました。なぜこれが機能しないのかは謎です。

更新: $result は何も返しません

ご協力ありがとうございました!

4

4 に答える 4

-1

これを試して:

$query = "UPDATE inventory SET quantity = $value WHERE uniqueID = $key";
于 2013-05-08T19:42:03.233 に答える