Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Skrypt komentarzy
Forum PHP.pl > Forum > Przedszkole
Kacper558
Witam znalazłem na necie taki skrypt komentarzy czy mógłby mi ktoś go posklejać w gotowe stronki?


Skrypt:
  1. //KOD.1 - Tabela dla komentarzy
  2.  
  3. CREATE TABLE `project`.`comments` (
  4. `id` INT( 10 ) NOT NULL ,
  5. `data` VARCHAR( 50 ) NOT NULL ,
  6. `autor` VARCHAR( 40 ) NOT NULL ,
  7. `host` VARCHAR( 100 ) NOT NULL ,
  8. `ip` VARCHAR( 80 ) NOT NULL ,
  9. `tresc` VARCHAR( 250 ) NOT NULL ,
  10. `id_newsa` VARCHAR( 20 ) NOT NULL ,
  11. `status` VARCHAR( 2 ) NOT NULL ,
  12. PRIMARY KEY ( `id` )
  13. ) ENGINE = MYISAM ;
  14.  
  15. //KOD.2 - Sprawdzanie, czy istnieją już jakieś komentarze
  16.  
  17. $data=date('Y-m-d H:i:s'); //aktualna data
  18. $ok = trim($_POST['ok']);
  19. $result = mysql_query("SELECT * FROM newsy WHERE id='$id'"); //pobiera nam dane o wybranym newsie
  20. $row = mysql_fetch_array($result);
  21. $news = $row['id']; //przypisujemy id newsa do zmiennej
  22.  
  23. $result = mysql_query("SELECT * FROM komentarze WHERE id_newsa='$news' AND status='1' order by data DESC"); //wybieramy komentarze, które mają id_newsa zgodne ze zmienną $news, a także status=1.
  24. $row = mysql_fetch_array($result);
  25.  
  26. if(mysql_num_rows($result)<=0) //sprawdzamy czy są już jakieś komentarze do tego newsa, a jeśli nie wyświetlamy komunikat
  27. {
  28. echo "<center>Brak komentarzy!<p></center>";
  29. }
  30. else //jeśli tak to je wyświetlamy
  31. {
  32. do
  33. {
  34. echo '<div style="float: right;">('.$row['host'].', '.$row['ip'].')<br/></div>
  35. <b>'.$row['autor'].'</b> - '.$row['data'].'<br/>
  36. '.nl2br($row['tresc']).'<p>';
  37. }
  38. while($row = mysql_fetch_array($result));
  39. }
  40.  
  41. //KOD.3 - Formularz dodawania komentarzy
  42.  
  43. echo '<form action="komentarz2.php" method="post">
  44. <div style="float: left; width:30%;">Autor</div>
  45. <div style="float: left; width:70%"><input type="text" name="autor" size="30" maxlength="10"></input></div>
  46. <div style="float: left; width:30%;">Treść</div>
  47. <div style="float: left; width:70%"><textarea name="tresc" cols="65" rows="8"></textarea></div>
  48. <input type="hidden" name="data" value="'.$data.'"/>
  49. <input type="hidden" name="id_newsa" value="'.$news.'"/>
  50. <input type="hidden" id="hash" name="hash" value="'.generateHash().'">
  51. <input type="hidden" id="ip" name="ip" value="'.gethostbyname($_SERVER['REMOTE_ADDR']).'">
  52. <input type="hidden" id="host" name="host" value="'.ethostbyaddr($_SERVER['REMOTE_ADDR']).'">
  53. <div style="float: left; width:30%;">Finalizacja</div>
  54. <div style="float: left; width:70%"><input type="submit" value="Akceptuj"><p></div>
  55. </form>';
  56.  
  57. //KOD.4 - Funkcja generujące kod dla danego komentarza
  58.  
  59. function generateHash()
  60. {
  61. return md5(time() * rand());
  62. }
  63.  
  64. //KOD.5 - Plik komentarz2.php dodaje napisany komentarz do bazy
  65.  
  66. // odbieramy dane z formularza
  67. $data = $_POST['data'];
  68. $tresc = $_POST['tresc'];
  69. $autor = $_POST['autor'];
  70. $id_newsa = $_POST['id_newsa'];
  71. $hash = $_POST['hash'];
  72. $ip = $_POST['ip'];
  73. $host = $_POST['host'];
  74.  
  75. if($autor && $tresc && $data && $id_newsa) {
  76.  
  77. // łączymy się z bazą danych
  78. $connection = @mysql_connect('xxx', 'xxx', 'xxx')
  79. or die('Brak połączenia z serwerem MySQL');
  80. $db = @mysql_select_db('xxx', $connection)
  81. or die('Nie mogę połączyć się z bazą danych');
  82.  
  83. // dodajemy rekord do bazy
  84. if (!$_SESSION['adduser'] || $_POST['hash'] != $_SESSION['adduser']){
  85. $_SESSION['adduser'] = $_POST['hash']; //sprawdzamy, czy użytkownik nie odświeżył strony
  86. $ins = @mysql_query("INSERT INTO komentarze SET autor='$autor', tresc='$tresc', data='$data', id_newsa='$id_newsa', href='$href', ip='$ip', host='$host'");
  87.  
  88. echo 'Komentarz dodany do kolejki oczekujących';
  89.  
  90. }
  91. else //jeżeli odświeżył wyświetlamy komunikat
  92. {
  93. echo 'Ten komentarz został już dodany';
  94. }
  95.  
  96. //KOD.6 - Miejsce akceptacji komentarzy w Panelu
  97.  
  98. A. - komentarze niezaakceptowane (niesprawdzone)
  99.  
  100. $result = mysql_query("SELECT * FROM komentarze WHERE status='0' order by data DESC");
  101. $row = mysql_fetch_array($result);
  102.  
  103. do
  104. {
  105. echo'<div style="float: left; width:6%;"><font color="red">'.$row['id'].'</font></div>
  106. <div style="float: left; width:10%;">'.substr($row['autor'], 0, 9).'</div>
  107. <div style="float: left; width:25%;">'.substr($row['data'], 0, 24).'</div>
  108. <div style="float: left; width:33%;">'.substr($row['tresc'], 0, 30).'</div>
  109. <div style="float: left; width:18%"><a href="panel.php?page=edytuj_komentarz_tresc&id='.$row['id'].'" target="_parent"></a>
  110. <a href="panel.php?page=usun_komentarz&id='.$row['id'].'" target="_parent">Usuń</a></div><br>';
  111. }
  112. while($row = mysql_fetch_array($result));
  113.  
  114.  
  115. B. - Komentarze już zaakceptowane i wyświetlone już na stronie
  116.  
  117. $result = mysql_query("SELECT * FROM komentarze WHERE status='1' order by data DESC");
  118. $row = mysql_fetch_array($result);
  119.  
  120. do
  121. {
  122. echo '<div style="float: left; width:6%;"><font color="green">'.$row['id'].'</font></div>
  123. <div style="float: left; width:10%;">'.substr($row['autor'], 0, 9).'</div>
  124. <div style="float: left; width:25%;">'.substr($row['data'], 0, 24).'</div>
  125. <div style="float: left; width:33%;">'.substr($row['tresc'], 0, 30).'</div>
  126. <div style="float: left; width:18%"><a href="panel.php?page=edytuj_komentarz_tresc&id='.$row['id'].'" target="_parent"></a>
  127. <a href="panel.php?page=usun_komentarz&id='.$row['id'].'" target="_parent">Usuń</a></div><br>';
  128. }
  129. while($row = mysql_fetch_array($result));
  130.  
  131. //KOD.7 - Edytowanie komentarzy i ich akceptacja
  132.  
  133. function edytuj_komentarz_tresc($id)
  134. {
  135. {
  136. $ok = trim($_POST['ok']);
  137. $result = mysql_query("SELECT * FROM komentarze WHERE id='$id'");
  138. $row = mysql_fetch_array($result);
  139. echo'<form action="" method="post">
  140. <div style="float: left; width:30%;">Autor</div>
  141. <div style="float: left; width:70%"><textarea name="autor" cols="65" rows="1">'.stripslashes($row['autor']).'</textarea></div>
  142. <div style="float: left; width:30%;">Data</div>
  143. <div style="float: left; width:70%"><textarea name="data" cols="65" rows="1">'.stripslashes($row['data']).'</textarea></div>
  144. <div style="float: left; width:30%;">Treść</div>
  145. <div style="float: left; width:70%"><textarea name="tresc" cols="65" rows="4">'.stripslashes($row['tresc']).'</textarea></div>
  146. <div style="float: left; width:30%;">IP autora</div>
  147. <div style="float: left; width:70%"><textarea name="ip" cols="65" rows="2" readonly="readonly">'.stripslashes($row['ip']).'</textarea></div>
  148. <div style="float: left; width:30%;">HOST autora</div>
  149. <div style="float: left; width:70%"><textarea name="host" cols="65" rows="2" readonly="readonly">'.stripslashes($row['host']).'</textarea></div>
  150. <div style="float: left; width:30%;">Status</div>
  151. <div style="float: left; width:70%"><input type="checkbox" name="status" value="1"/> Pokaż na stronie<p></div> //jeśli zaznaczymy komentarz pojawi się na stronie
  152. <div style="float: left; width:30%;">Finalizacja</div>
  153. <div style="float: left; width:70%"><input type="submit" name="ok" value="Edytuj">
  154. <input type="reset" value="Reset"></div>
  155. </form>';
  156.  
  157. }
  158. if ($ok == 'Edytuj')
  159. {
  160. $autor = $_POST['autor'];
  161. $data = $_POST['data'];
  162. $tresc = $_POST['tresc'];
  163. $status = $_POST['status'];
  164. mysql_query ("UPDATE komentarze SET autor='$autor', data='$data', tresc='$tresc', status='$status' WHERE id=$id ")
  165. or die('Błąd zapytania');
  166. }
  167. }
  168.  
  169. //KOD.8 - Usuwanie komentarzy
  170.  
  171. function usun_komentarz($id)
  172. {
  173. $query = "DELETE FROM komentarze WHERE id = '$id'";
  174.  
  175. if(mysql_query($query) && !empty($id) )
  176. echo 'Komentarz został usunięty poprawnie!<p><a href="java script:history.go(-1)">wróć</a></p>';
  177. else
  178. echo 'Błąd wprowadzania danych.<p>Wybrałeś złe ID komentarza';
  179. }



Z góry dziękuje.
Gość
  1. Witam znalazłem na necie taki skrypt komentarzy czy mógłby mi ktoś go posklejać w gotowe stronki?


rachunek na jaki adres wyslac?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.