Posted By

daisuke103 on 02/11/08


Tagged

php file textmate post sample as2 mdn


Versions (?)

PHP MdN FlashがPHPと連携して掲示板 PHP側


 / Published in: Other
 

  1. <?/*
  2. データ保存のためのファイルを用意
  3. Flashから値を受け取って、返す
  4. */?>
  5.  
  6. <?php
  7. //データを保存するためのテキストファイル名
  8. define("FILE_NAME", "p046.txt");
  9.  
  10. //何らかのエラーが発生した時にerrorプロパティを作成<1>
  11. function error($message){ print("error=".$message."&"); };
  12.  
  13. //立ち上がり時
  14. //POSTからstartupを受け取る
  15. $startup = $_POST['startup'];
  16. if($startup == "true"){
  17. $fp = fopen(FILE_NAME,'r');
  18. print(fread($fp,filesize(FILE_NAME)));
  19. fclose($fp);
  20. }
  21.  
  22. //POSTからcommentを受け取る<2>
  23. $comment = $_POST['comment'];
  24. if($comment != ""){
  25. $fp = fopen(FILE_NAME,'r+');
  26. if(!$fp){error("ファイルが見つかりませんでした");}
  27. if(!flock($fp,LOCK_EX)){error("ファイルロックに失敗しました");}
  28.  
  29. $text = fread($fp,filesize(FILE_NAME));
  30. $var_array = explode("&",$text);
  31. $var_total = $var_array[0];
  32. $total = explode("=",$var_total);
  33. $total_num = $total[1];
  34. $new_comment = "comment".($total_num)."=".$comment."&"."date".($total_num)."=".date("Y-m-d (D) H:i:s");
  35. array_push($var_array,$new_comment);
  36.  
  37. rewind($fp);
  38.  
  39. for($num = 0 ; $num <= ($total_num*2)+1 ; $num++)
  40. {
  41. if($num == 0){
  42. write_print($fp,"total=".($total_num+1)."&");
  43. }else if($num < ($total_num*2)+1){
  44. write_print($fp,$var_array[$num]."&");
  45. }else{
  46. write_print($fp,$var_array[$num]);
  47. }
  48. }
  49. fclose($fp);
  50. }
  51.  
  52. //ファイルへの書き込みとレシーブ用の表示をまとめる
  53. function write_print($filepath,$string){
  54. fwrite($filepath,$string);
  55. print($string);
  56. }
  57.  
  58.  
  59. ?>
  60.  
  61.  

Report this snippet  

You need to login to post a comment.