0

MySQL テーブルを更新しようとしていますが、何も更新されていません。小さな問題が見られないだけだと思います。助けていただければ幸いです。ありがとう

したがって、ホッケープールのトレードブロックです。プレイヤーをトレードブロックに入れたい場合は、フォームのチェックボックスをチェックして送信するだけで、データベースの値が「1」に変更されます。

形:

echo "<table border='1'>";

echo "<tr><th>NAME</th> <th>POS</th> <th>BLOCK</th></tr>";

$counter = 1;

while($row = mysql_fetch_array( $result )) {

echo "<tr><td>"; 

echo "{$row['f_name']}" . " " . "{$row['l_name']}";

echo "</td><td><input name='pl_id[$counter]' type='hidden' value='{$row['pl_id']}'>";

echo "{$row['pos']}";

echo "</td><td><input name='pos[$counter]' type='hidden' value='{$row['pos']}'>";                                   


    echo "<input type='checkbox' name='block[$counter]' size='1' value='1'";

    if($row['block'] == '1')
    {
        echo "checked='checked'";
    }

    echo "></td></tr>";                 

$counter++;

} 
echo "</table>";

PHP ページを送信:

mysql_connect("localhost", "user", "pass") or die(mysql_error());
mysql_select_db("mbbcom1_fantrax") or die(mysql_error());

$i = 1;
while ($i < 26) {

$block = $_POST['block'][$i];
$pl_id = $_POST['pl_id'][$i];

$query = mysql_query("UPDATE 'players'
                     SET  `block` = '$block' 
                     WHERE `players`.`pl_id` = '$pl_id'");                  
mysql_query($query); 

$i++; }

echo mysql_close();
4

2 に答える 2

2

WHERE の前のカンマを削除

mysql_query("UPDATE 'players' SET block= '$block' WHERE players. pl_id= '$pl_id'");

于 2012-08-02T17:05:19.617 に答える
0

less に対する } があるため、PHP コードは実行されません。

while ループと foreach ループを実行しますが、for ループを閉じているだけです。

WHEREそしてもちろん、ステートメントの前に , は必要ありません

于 2012-08-02T17:06:20.643 に答える