PHPとMySQLを使用して、PARENTとmulti-CHILDの関係を使用してサインアップを追跡したいと思います。複数のユーザーが同じ親コードを使用してサインアップしようとすると、問題が発生します。親には2人ではなく、1人のユーザーのみがクレジットされます。私が理解している解決策は、レコードをロックすることです。または、サーバー時間とレコードタイムスタンプを使用して、最終更新を決定します。
#THIS IS NOT PRODUCTION CODE, BUT JUST INTENDED TO DEFINE MY PROCESS
#PLEASE ADVISE AND MAKE ADJUSTMENTS AS YOU SEE FIT
$sqlget = SELCT * record of PARENT and WHERE id is of PARENT
$ts -> timestamp;
$st -> servertime;
$af -> aff_number;
今、親のタイムスタンプの最後のレコード更新を確認したいのですが、その更新が10秒以内に発生した場合は、$sqlgetを再実行したいと思います。
$ tsをINTに、$ stをINTに変換して、条件が失敗した場合にIFステートメントを実行して$sqlgetをループできるようにするにはどうすればよいですか。
if($ts <= $st by 10 seconds) { wait 10 seconds and rerun sqlget }
else { get current $af (INT) and +1; UPDATE record; close connection;
META-refresh to next page; }
では、このプロセスは機能しているように見えますか?これにより、複数の子が同時に署名した場合でも、子の登録ごとに親が常に適切にクレジットされるようになりますか?複数の同時登録は期待していませんが、場合によっては発生する可能性があるため、親が適切にクレジットされていることを確認する必要があります。