Witam.
Z PHP nigdy nie miałem większego kontaktu więc jak można się domyśleć jestem zupełnie zielony w tych sprawach. znalazłem w sieci skrypt dodawania komentarzy, taki najprostszy. Chcę go umieścić na swojej stronce ale jest pewien problem, mianowicie: za każdym razem przy odświeżeniu strony lub przy kliknięciu w <DODAJ KOMENTARZ> skrypt dodaje albo poprzedni komentarz jeszcze raz albo dodaje pusty komentarz.
Czy ktoś może mi z tym pomóc bo ja jestem naprawdę lama jeżeli o te sprawy chodzi.

plik kom.php:
  1. <?
  2.  
  3. $DATADIR="data/";
  4. $FORMAT="<TABLE WIDTH=100% cellspacing=0><TR BGCOLOR=#000000><TD>%imie% (%email%)</TD><TD ALIGN=RIGHT>%data%</TD></TR><TR><TD COLSPAN=2 BGCOLOR=#000000>%tekst%</TD></TR></TABLE>";
  5.  
  6. // --------------------------------------------------------
  7.  
  8. $commentID="a$commentID";
  9.  
  10. function displayComments()
  11. {
  12. global $commentID, $start, $DATADIR, $FORMAT;
  13.  
  14. if(strstr($commentID, "/"))
  15. return;
  16.  
  17.  if(!file_exists($DATADIR.$commentID))
  18. return;
  19.  
  20. $file=fopen($DATADIR.$commentID, "r");
  21. flock($file, 1);
  22.  
  23. $i=0;
  24.  
  25. while(!feof($file))
  26. {
  27. $imie=chop(fgets($file, 1000));
  28. $email=chop(fgets($file, 1000));
  29. $data=chop(fgets($file, 1000));
  30. $comment=chop(fgets($file, 100000));
  31.  
  32. if(feof($file))
  33. break;
  34.  
  35. $display=$FORMAT;
  36.  
  37. if($email)
  38. $mailto="<A HREF="mailto:$email">$email</A>";
  39. else
  40. $mailto="Brak e-maila";
  41.  
  42.  
  43. $display=str_replace("%imie%", $imie, $display);
  44. $display=str_replace("%email%", $mailto, $display);
  45. $display=str_replace("%data%", $data, $display);
  46. $display=str_replace("%tekst%", $comment, $display);
  47.  
  48. echo($display);
  49.  
  50. $i++;
  51. }
  52.  
  53. flock($file, 3);
  54. fclose($file);
  55. }
  56.  
  57. function displayForm()
  58. {
  59. global $REQUEST_URI, $commentID;
  60. $id=substr($commentID, 1);
  61. $len=strlen($REQUEST_URI)-strlen(strchr($REQUEST_URI, "?"));
  62. $url=substr($REQUEST_URI, 0, $len);
  63. ?>
  64. <FORM ACTION=<?=$url?> METHOD=POST>
  65. <INPUT TYPE=HIDDEN NAME=COMMENTACTION VALUE=add>
  66. <INPUT TYPE=HIDDEN NAME=commentID VALUE="<?=$id?>">
  67. <TABLE>
  68. <TR><TD>Nick:</TD><TD><INPUT TYPE=TEXT NAME=f_imie SIZE=35></TD>
  69. <TR><TD>Email:</TD><TD><INPUT TYPE=TEXT NAME=f_email SIZE=35></TD>
  70. <TR><TD>Treść:</TD><TD><TEXTAREA NAME=f_tresc COLS=28 ROWS=7></TEXTAREA></TD>
  71. <TR><TD></TD><TD><INPUT TYPE=SUBMIT VALUE="DODAJ KOMENTARZ"></TD></TR>
  72. </TABLE>
  73. </FORM>
  74. <?
  75. }
  76.  
  77. if($COMMENTACTION=="add")
  78. {
  79. $file=fopen($DATADIR.$commentID, "a");
  80. flock($file, 2);
  81.  
  82.  $f_tresc=str_replace("n", "<BR>", $f_tresc);
  83.  $f_tresc=str_replace("r", "", $f_tresc);
  84.  $f_imie=str_replace("n", "<BR>", $f_imie);
  85.  $f_imei=str_replace("r", "", $f_imie);
  86.  $f_email=str_replace("n", "<BR>", $f_email);
  87.  $f_email=str_replace("r", "", $f_email);
  88.  
  89.  fputs($file, $f_imie);
  90. fputs($file, "n");
  91.  fputs($file, $f_email);
  92. fputs($file, "n");
  93.  fputs($file, date("H:i d-m-Y"));
  94. fputs($file, "n");
  95.  fputs($file, $f_tresc);
  96. fputs($file, "n");
  97.  
  98. flock($file, 3);
  99. fclose($file);
  100. }
  101.  
  102. ?>


a na stronie gdzie ma być komentarz:
  1. <?
  2.  $commentID=1; // tu musisz dla każdego tematu komentarzy pliku wpisać inną liczbę
  3.  include("kom.php3");
  4. ?>
  5.  
  6. //Tam, gdzie mają się wyświetlać komentarze:
  7. <?
  8.  displayComments();
  9. ?>
  10.  
  11. //Tam, gdzie ma być formularz do wpisywania komentarzy.
  12. <? displayForm(); ?>


jak ktoś może to proszę o pomoc. smile.gif