[PHP-users 31230] Re: ブラウザの終了と同時にデータベースのデータを削除したい

Katsuo Mogi mogi-k2 @ msg.biglobe.ne.jp
2007年 1月 8日 (月) 20:49:34 JST


茂木です。

In the message [PHP-users 31228] Re: ブラウザの終了と同時にデータベースのデータを削除したい
               <u8xgdswwz.wl%mogi-k2 @ msg.biglobe.ne.jp>
Katsuo Mogi <mogi-k2 @ msg.biglobe.ne.jp> wrote:

> 1:PHPで処理 - 2:ブラウザへ表示 - 3:ブラウザ閉じる - 4:DBデータ削除

このプロセス、誤解されそうな記述をしてしまったので訂正いたします。

> 1の終わりの時点でデータベースとの接続は切れます。
> 1のソース中でmysql_connect()したリソースIDを使いまわして
> register_shutdown_function()のときに
> mysql_select_db()しようとしていたら、上記エラーがでるかと思います。


register_shutdown_function()の処理が実行されるのは、
1の終わりのタイミング、または1の実行中に3が発生した場合、でした。

より正確には、マニュアルhttp://jp.php.net/manual/ja/features.connection-handling.phpに

「シャットダウン関数を定義した場合、リモートユーザーが STOP ボタンを押した後、 次にスクリプトが何か出力を行おうとした場合、PHP は接続が破棄されたことを検知し、 シャットダウン関数がコールされます。 このシャットダウン関数は、スクリプトが正常に終了した 際にもコールされます。」

とあります。失礼しました。

--
---------------------------------
 茂木克夫
    mail: mogi-k2 @ msg.biglobe.ne.jp
    site: http://www.momo.dyndns.org/~katsu/
---------------------------------


PHP-users メーリングリストの案内