0

次のコードがあります。

$query = "UPDATE jobs SET `ipt` = '$ipt', `prejobform` = '$prejobform', `fileddate` = '$fileddate' WHERE `job_id` = '$jobid'";

  $result = mysql_query($query);


     if (!$result) {
        //ERROR LOGGER HERE
        echo mysql_error();
     }
     else {
        header('Location: view_job.php?jobid='.$jobid);
     }

このコードは正しく動作しているようにリダイレクトされますが、データベースを確認すると、フィールドが更新されていません。問題は私が見逃している単純なものだと確信していますが、問題を見つけるのに途方に暮れています。

4

1 に答える 1

0
  1. UPDATEクエリの場合、実際に行を更新した場合だけでなく、クエリが成功した (正しく解析され、実行された) 場合に true を返しmysql_queryます。

  2. 基になるテーブルがInnoDBあり、以前にトランザクションを開始した場合、クエリは暗黙的にトランザクションをコミットせず、スクリプトを終了するか切断するとロールバックします。

于 2012-04-24T15:57:31.297 に答える