質問: php+mysqlでの排他処理とdbクローズ <環境> apache1.3.37 php4.4.6 mysql4.0.27 phpで、掲示板などのスクリプト作成を勉強しています。 これまで、ログをログファイルとして保存するように作成しておりましたが、データベースに保存するように変更している途中です。 そこで、教えていただきたいのは下記の2点です。 ・ロック処理の必要性 →ログファイルを作成するタイプの場合、同時アクセスによるファイル破損を防ぐため、ロック処理が必要でした。dbに変更した場合も同様に必要なのでしょうか? ・dbのクローズ処理 →最小限のソースを以下に記します。9行目のクローズ処理は必ず必要でしょうか?また、エラーが発生した場合、7行目で処理が終わるのですが、この直前にもクローズ処理を記入する必要があるのでしょうか? 1) 宜しくお願いします。
回答: >同時アクセスによるファイル破損を防ぐため、ロック処理が必要でした。 >dbに変更した場合も同様に必要なのでしょうか? データの追加だけで更新作業がないため特にロックする必要はないと思います。 >クローズ処理は必ず必要でしょうか? php側で自動でクローズしてくれますので、特になくてもリソースを 食いつぶすようなことはありませんが、やはり書いておいたほうが よいとは思います。 >エラーが発生した場合、 これは単なるデバッグ処理なので、最低限の記述でよいでしょう。 普通はこんな書き方をすることが多いですね $result=mysql_query($query) or die($query."".mysql_error());