Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][sql] Dodawanie komentarzy a br?
Forum PHP.pl > Forum > PHP
Mlody993
Witam,
napisałem sobie takie coś do dodawania komentarzy, na razie chcę dodać kilka rzeczy, a potem popracować nad bezpieczeństwem.

  1. <?php
  2. $submit = $_POST['submit'];
  3. $_SERVER['REMOTE_ADDR'];
  4.  
  5. if (isset($submit))
  6. {
  7. $tytul = $_POST['tytul'];
  8. $autor = $_POST['autor'];
  9. $tresc = $_POST['tresc'];
  10. $ip = $_POST['ip'];
  11.  
  12. $polaczenie = @mysql_connect('host', 'login', 'haslo') or die('Brak połączenia z serwerem MySQL.<br />Błąd: '.mysql_error());
  13. $db = @mysql_select_db('baza', $polaczenie) or die('Nie mogę połączyć się z bazą danych<br />Błąd: '.mysql_error());
  14. $sql = "insert into blogkom (tytul, autor, tresc, artid, ip, dodany) values ('$tytul', '$autor', '$tresc', 0, '$ip', NOW())";
  15. $wynik = mysql_query($sql, $polaczenie) or die(mysql_error());
  16. echo "<div align=\"center\" class=\"qw\"><strong><font color=green>Komentarz został dodany poprawnie.</font></strong></div>";
  17. }
  18. else
  19. {
  20. echo '<div class=\"centrix\"><form method="post" action="">
  21. <table>
  22. <tr><td><input type="hidden" name="ip" value="'.$_SERVER['REMOTE_ADDR'].'" /></td></tr>
  23. <tr><td><input type="hidden" name="tytul" value="1" /></td></tr>
  24.  
  25. <tr><td>Autor:</td></tr>
  26. <tr><td><input type="text" name="autor" value="Anonim" style="color:#39759B; font-weight: bold;" /></td></tr>
  27.  
  28. <tr><td>Treść:</td></tr>
  29. <tr><td><font color=\"#39759B\"><textarea name="tresc" rows="5" cols="40" style="color:#39759B; font-weight: bold;"></textarea></font></td></tr>
  30. <tr><td><input type="submit" name="submit" value="Wyślij!" /></td></tr>
  31.  
  32. </table>
  33. </form></div>';
  34. }
  35. ?>


W tym kodzie jest taki problem, że jak ktoś daje w textarea np. enter to potem wyświetla się bez... Przydałoby się BBCode albo przy enterze żeby dodawało <br>, tylko jak to tutaj wprowadzic?
Piogola
Przy wyświetlaniu użyj nl2br
Mlody993
Tak to patrzyłem, jednak nie bardzo wiem gdzie to wrzucić.

wyswietlam komentarze tym kodem:
  1. <?php
  2. $nr = $_GET['nr'];
  3. mysql_connect ("h", "l", "p") or
  4. die ("Nie można połączyć się z bazą MySQL");
  5. mysql_select_db ("b") or
  6. die ("Nie można połączyć się z bazą komentarze");
  7.  
  8.  
  9. if ($news='3') {
  10. $wynik = mysql_query ("SELECT * FROM blogkom WHERE artid='$nr' order by id asc;");
  11. while ($rekord = mysql_fetch_array ($wynik, MYSQL_NUM)) {
  12. print "<p><b><font color=\"#39759B\"><u>".$rekord[3] = stripslashes($rekord[3])."</u></font></b>&nbsp; <font color=\"gray\" size=\"2px;\">| ".$rekord[4] = stripslashes($rekord[4])."</font></p> <div class=\"klein\">".$rekord[5]."</div><br>";
  13. }
  14. }
  15. ?>
Piogola

  1. <?php
  2. $nr = $_GET['nr'];
  3. mysql_connect ("h", "l", "p") or
  4. die ("Nie można połączyć się z bazą MySQL");
  5. mysql_select_db ("b") or
  6. die ("Nie można połączyć się z bazą komentarze");
  7.  
  8.  
  9. if ($news='3') {
  10. $wynik = mysql_query ("SELECT * FROM blogkom WHERE artid='$nr' order by id asc;");
  11. while ($rekord = mysql_fetch_array ($wynik, MYSQL_NUM)) {
  12. print "<p><b><font color=\"#39759B\"><u>".$rekord[3] = nl2br(stripslashes($rekord[3]))."</u></font></b>&nbsp; <font color=\"gray\" size=\"2px;\">| ".$rekord[4] = nl2br(stripslashes($rekord[4]))."</font></p> <div class=\"klein\">".$rekord[5]."</div><br>";
  13. }
  14. }
  15. ?>


Mlody993
Fajnie dzięki. Pozostał teraz problem ;/ W wielu komentach jest już użyty <br> i czyścić około 80 komentarzy z br bedzie problem ;/

Da sie jakos usunac wszystkie znaczniki <br> ? Wszystko mam w bazie mysql...
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.