この投稿は 2014-06-13 21:46:24 に dimply によって最終編集されました 次の PHP コードがあります
$query = "insert into index_base (cardid, name, sex, nationality, birth, address, issued, expiration) values ($cardid, $name, $gender, $folk, $birthday, $addr, $agency, $expire)";<br />mysql_query($query);<br />if($buy=="1"){<br /> $bid = mysql_insert_id();<br />echo($bid);<br /> $time=date("Y-m-d",time());<br /> $time.=":1";<br /> $query = "insert into index_b2a (bid, aid, `limit`, now) values ($bid, $aid, '$time', 1)";<br />echo($query);<br /> $result = mysql($query);<br /> echo("result 为".$result);<br /> if(mysql_affected_rows()==1)die("1");<br /> else die("0");<br />}
echo と die によって返された値に従って、リクエスト $query = "index_b2a (bid, aid, `limit`, now) 値 ($bid, $aid, '$time ', 1)"; これは絶対に正しいはずです。$result は 1、影響を受ける行も 1 です。
しかし、データベース内で、挿入されたエントリがどこにあるのかわかりません。
echo($query) を追加しました。出力されたリクエストは、index_b2a (bid、aid、`limit`、now) の値に挿入されます (102631, '89', '2014-06-13) : 1', 1)、mysql を直接入力します。もちろん正しく実行され、データベースを更新すると、挿入されたエントリがすぐに表示されます。
limit はキーワードなので、" を引用符として追加しました。
エラーが発生しないように、89 の外側の引用符も削除され、2014-06-13:1 の値も変更され、その後のコロンと数字の 1 が削除されます。
次に実行します:
これは mysql では動作しますが、php では動作しませんが、戻り値は実行が成功したことを示しています。
何が問題なのかわかりませんか?
------解決策---------$result =
mysql ( $query); mysql() は ($query) にありますか?それとも間違いですか?
echo mysql_error(); エラーがあるかどうかを確認します。
------解決策-----$result = mysql($query);そうですか?