1

テーブル(請求書)、フィールド(チェック済み)を更新しようとしています。ユーザーがチェックボックスをチェックすると、フィールド(チェック済み)は1になります

page1 : detail.php

while($row = mysql_fetch_array($results))
{
   $ch=$row['checked'] ;
   $idw=$row['key'];
}

次に、ユーザーがこの行を以前にチェックしたかどうかをチェックします。

if ($ch==1)
{
   echo "this record has been checked";
}
else 
{
   echo "<form action=\"checked.php\" method=\"GET\"  enctype=\"multipart/form-data\"     >";
   echo "<input type=\"hidden\" name=\"ids\" value=\"$idw\" ><br>";
   echo "<input type=\"checkbox\" name=\"check\" value=\"checked\" ><br>";
   echo "<p><input name=\"submit\" type=\"submit\" value=\"submit\"  /></p>";
   echo "</form>";
}

page2:checked.php

$idw=$_GET['ids'];
$check=$_GET['check'];
$sql="UPDATE bill SET checked=1 where key=$idw";
$results=mysql_query($sql);
if ($results)
{
     echo "the record has been updated successfully";
}

更新が機能しなくなりました。何か助けてください

4

5 に答える 5

0

クエリの試行でエラーが発生しました。これを変更します。

$sql="UPDATE bill SET checked=1 key=$idw";

これとともに:

$sql="UPDATE bill SET checked=1 WHERE key=$idw";
于 2012-12-03T11:49:29.450 に答える
0

更新ステートメントは次のようになります。

$sql="UPDATE bill SET checked=1 where key=$idw";
于 2012-12-03T11:49:36.253 に答える
0

このクエリのSQLステートメントにセミコロンがありません。

$sql="UPDATE bill SET checked=1 where key=$idw;";
               // Notice this semicolon here -^

また、keyが数値以外の列の場合は、引用符で囲む必要があります$idw

$sql="UPDATE bill SET checked=1 where key='$idw';";
于 2012-12-03T12:39:02.683 に答える
0

それがあなたのために仕事をするなら、これを試してください

  WHERE key='".$idw."'
于 2012-12-03T12:11:16.487 に答える
0

(key "PK") の代わりにフィールド (num) を入力すると、更新が完了しました。しかし、PKによっては更新が行われなかった理由はまだわかりません

皆さん、ありがとうございました。

于 2012-12-04T05:38:39.770 に答える