Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [mega problem] <br /> przy dodawaniu rekordu
Forum PHP.pl > Forum > PHP
Zmorcia
hey, mam formularz dodawania rekordw do bazy danych niewiem dlaczego ale gdzie zrobie enter w formularzu to do bazy zostaje dodany <br /> czym to moze byc spowodowane questionmark.gif oto screen :

zaksmok
najprawdopodobniej funkcja nl2br();, która zamienia koniec wiersza /r/n na <br>.
Zmorcia
kurcze dalej to samo oto moj kod bbcode :

  1. <?php
  2. // bbcode
  3. Function bbcode($str){
  4.  
  5. // Kolorowanie składni
  6. $str=preg_replace_callback("#[php](.*?)[/php]#si", "bbcode_phpCode", $str);
  7.  
  8.  
  9. // kolejny wiersz
  10. $str=nl2br($str);
  11.  
  12. // kodowanie kodu
  13. $str = preg_replace_callback("#<base64>(.*?)</base64>#si", "base64decode", $str);
  14.  
  15. // js
  16. $str = preg_replace_callback("#<(.*?)javascript(.*?)#si", "bbcode_js", $str);
  17.  
  18. // wynik
  19. return $str;}
  20.  
  21.  
  22. function bbcode_phpCode($code){
  23. if(!$code){return;}
  24. $code[1]=trim($code[1]);
  25. $code[1]=html_entity_decode($code[1]);
  26. $code[1]=str_replace('<br />','',$code[1]);
  27. $kod=highlight_string($code[1], TRUE);
  28. if(strtoupper(substr(PHP_OS, 0, 3)) === 'WIN'){
  29. $sys[0]='<code><span style="color: #000000">'."";
  30. $sys[1]=chr(10).'</code>';
  31. }else{
  32. $sys[0]="<font color=\"#000000\">";
  33. $sys[1]="</code>";
  34. }
  35. $kod=str_replace(array($sys[0],$sys[1]),array('<code><font color="#000000">','</code>'),$kod);
  36. $ret='<div class="php"><span class="html"><div style="line-height: 10px">'.$kod.'</div></span></td></tr></table></div>';
  37. return '<base64>'.base64_encode($ret).'</base64>';}
  38.  
  39. // zakodowanie kodu
  40. Function base64decode($str){
  41. return base64_decode(substr($str[0],8,strlen($str[0])-8));
  42. }
  43.  
  44. // anti js
  45. Function bbcode_js($str){
  46. if(!eregi('<a href=\"javascript:mailto:mail('',$str[0])){
  47. return str_replace('javascript','java_script',$str[0]);
  48. }else{return $str[0];}}
  49. <font color=&#092;"#000000\"><div class=\"php\"><span class=\"html\"><div style=\"line-height: 10px\">
  50. ?>
zaksmok
a nie zapisało Ci się w bazie <br>? Może nl2br jest w skrypcie dodawania rekordów i do bazy zapisuje już wersję html'ową?
Zmorcia
oto kawalek kody formualrza :
  1. <?php
  2. $haslo = $wiersz['haslo'];
  3. }
  4. if ( !empty($_POST['tresc']) && !empty($_POST['tytul'])){ 
  5. $tresc= $_POST['tresc'];
  6. $tytul = addslashes(htmlspecialchars($_POST['tytul']));
  7. $kategoria = addslashes(htmlspecialchars($_POST['kategoria']));
  8.  
  9.  
  10. $z1 = mysql_query("SELECT tytul FROM porady WHERE tytul='$tytul'");
  11. $ile = mysql_num_rows($z1);
  12. if($ile ==0){
  13.  
  14. $czas = time();
  15.  
  16. $usersadd = "INSERT INTO porady values ('','$tytul','$tresc','$kategoria','$login','0','$czas')";
  17. mysql_query($usersadd);
  18.  
  19. if($usersadd) {
  20. } else {
  21. echo "Wysyłanie nie powiodło się";
  22. }
  23. ?>
zaksmok
a pokaż rekord z bazy, żebym mógł na tym tekście popracować i funkcje wywołującą
Zmorcia
oto chodzi ze w bazie niema <br> tylko funkcja bbcode ja dodaje a niewiem jak to usunac
zaksmok
No to wystarczy się tego pozbyć:

  1. <?php
  2. // kolejny wiersz
  3. $str=nl2br($str);
  4. ?>
Zmorcia
usunoem ale dalej wyswietlane sa <br /> kurde niewiem co mzoe byc

jestem prawie pewny ze ten kod za to odpowiada:

  1. <?php
  2. function bbcode_phpCode($code){
  3. if(!$code){return;}
  4. $code[1]=trim($code[1]);
  5. $code[1]=html_entity_decode($code[1]);
  6. $code[1]=str_replace('<br />','',$code[1]);
  7. $kod=highlight_string($code[1], TRUE);
  8. if(strtoupper(substr(PHP_OS, 0, 3)) === 'WIN'){
  9. $sys[0]='<code><span style="color: #000000">'."";
  10. $sys[1]=chr(10).'</code>';
  11. }else{
  12. $sys[0]="<font color=\"#000000\">";
  13. $sys[1]="</code>";
  14. <font color=&#092;"#000000\">
  15. ?>
</font color=\"#000000\"></br >

Dobra juz zrobilem Mialem niepotrewbna funckje przy odczytywaniu nl2br ale dostajesz + tongue.gif
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.