こんにちは、登録フォームの一部として実行される 2 つのクエリがあります。ユーザー登録情報は ptb_users と ptb_stats の 2 つのテーブルに分割されます。
両方のクエリは正常に機能しています。ただし、両方のテーブルには自動インクリメント列があり、ptb_users では列 user_id が自動インクリメントに設定され、クエリの最後に user_id 値が ptb_users.id に更新/コピーされるように設定され、user_id と ID が一致します。
しかし、ptb_stats id は自動インクリメント列であり、ptb_stats テーブル内で id から user_id に値を更新/コピーするように依頼しました。
私はこのコードを使用してこれを行っています:
$result = mysql_query("UPDATE ptb_users SET ptb_users.user_id=ptb_users.id");
$result2 = mysql_query("UPDATE ptb_users SET ptb_stats.id=ptb_stats.user_id");
何らかの理由で、これは最初のクエリ ($result) で機能し、ptb_users.user_id=ptb_users.id を更新するように要求していますが、($result 2) では機能しません。これが当てはまる理由はありますか?
$query="INSERT INTO ptb_users (user_id,
id,
first_name,
last_name,
email )
VALUES('NULL',
'NULL',
'".$firstname."',
'".$lastname."',
'".$email."'
)";
mysql_query($query) or dieerr();
$result = mysql_query("UPDATE ptb_users SET ptb_users.user_id=ptb_users.id");
$query="INSERT INTO ptb_stats (id,
user_id,
display_name )
VALUES('NULL',
'NULL',
'".$username."'
)";
mysql_query($query) or dieerr();
$result2 = mysql_query("UPDATE ptb_stats SET ptb_stats.id=ptb_stats.user_id");