-1

この質問へのアプローチ方法がわかりません。私は mySQL dbase を持っており、PHP を使用して Web アプリ経由でレコードなどを変更しています。かなりのデバッグの後、mySQL レコードはランダムに保存/更新されていないようで、その理由がわかりません。

背景として、Web アプリは 2 つのことを行います。つまり、ユーザーのブラウザーで を更新して、送信されたばかりのテキストを表示し、php スクリプトをトリガーしてテキストを mySQL レコードに保存します。更新されますが、dbase へのレコードの挿入は、5 つのイベントのうち 2 つが (大まかに) 失敗するようです。

これについて何か考えはありますか?

function submit_wallpost($wallpost){
$userid = $_SESSION['SESS_MEMBER_ID'];

include './mySQL_access.php';

mysql_connect("$host", "$user", "$pass")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB");

mysql_query("INSERT INTO wall (clusterID, userID, postContent) VALUES (111, '$userid', '$wallpost')");

mysql_close();
}
4

2 に答える 2

0

あなたのコードは罰金のようです.エラーが発生した場所を確認する必要があるはずです.

1.クエリから挿入することを意図した値をチェックします。最初にクエリを定義することにより、クエリステートメントを実行から分離してみてください。これは、送信することを意図した値をチェックするのに非常に役立ちますechosql

 $sql="INSERT INTO wall (clusterID, userID, postContent) VALUES (111, '$userid', '$wallpost')"

2.ステートメントの実行が失敗したかどうかを確認してみてください。$sqlこのアイデアはステートメントを返しますecho

 if($result){
      echo 'Success';
   }
   else{
    echo 'Failed';
 }

これらの中で、クエリを失敗させるコードがどこで停止するかについての一般的な考えが得られます

于 2013-04-10T00:41:19.857 に答える