Adaugare tag BR la rand nou

Discutii despre script-uri si coduri PHP-MySQL, precum si lucru cu XML in PHP.
cadou
Mesaje:328

Adaugare tag BR la rand nou

Nu inteleg unde e greseala
am asa :

Cod: Selectaţi tot

<textarea name="editsts<?php echo "$list[sid]";?>" id="editsts<?php echo "$list[sid]";?>" maxlength="300" style="width:610px;height:50px;" value=""><?php echo "$list[status]";?></textarea>
iar in fisierul de editare am asa:

Cod: Selectaţi tot

$status = $_POST['status'];
$sts = str_replace('
','<br>',$status);
 
Problema e ca merge totul ok, dar cand face update-ul in baza de date nu imi inlocuieste .
De exemplu daca vreau sa fac update la textul urmator:

Cod: Selectaţi tot

"Test editare
pe 2 
sau 3 randuri"
Mie in baza de date ar trbuie sa fie de genu:

Cod: Selectaţi tot

"Test editare<br>
pe 2 <br>
sau 3 randuri"
Dar nu ii pune si <br> il pune pe tot intr-un singur rand.
Daca in textarea scriu textu si mai pun si br ar fi ok
Care e problema ca nu inteleg.
la update folosesc $sts , nu $status .

MarPlo Mesaje:4343
Incearca functia nl2br(), e speciala pentru a inlocui rand nou cu tag html <br>.

Cod: Selectaţi tot

$sts = nl2br($status);
 
De asemenea, da echo la comanda SQL de Update si vezi in sursa html a paginii cum e textul din Update.

-La <textarea>, in loc de

Cod: Selectaţi tot

echo "$list[status]";
ar trebui:

Cod: Selectaţi tot

echo $list['status'];
 

cadou Mesaje:328
ms, merge.
Si inversul la nl2br() care este?
Adica daca am in baza de date cu BR si vreau in anumite locuri sa excluda br-ul?

MarPlo Mesaje:4343
Inversul la nl2br() se poate cu str_ireplace():

Cod: Selectaţi tot

$text = str_ireplace(array('<br>', '<br/>', '<br />'), "\n", $text);
 

ionatan Mesaje:94
Buna ziua, Am si eu un textarea cu care adaug o descriere in baza de date si nu reusesc sa adaug un tag BR la rand nou

Cod: Selectaţi tot

<textarea class="denumire_manopera" NAME='descriere'  ROWS=3 style="width:100%; color:#000000;" ></textarea> 

Cod: Selectaţi tot

  $data_raport = $con->real_escape_string($data['data_raport']);
  $descriere = $con->real_escape_string($data['descriere']);
  $timplucru = $con->real_escape_string($data['timp_lucru']);
 $sql = "insert into rapoarte_de_lucru(data,descriere,timp_lucru,id_lucrare,id_utilizator) values('$data_raport', '$descriere', '$timplucru', '".Session::get('id_lucrare_raport_lucru')."', '".Auth::user()->id."' )";
Cumpără adevărul, şi nu-l vinde, înţelepciunea, învăţătura şi priceperea.
https://www.crestinmultimedia.com/

MarPlo Mesaje:4343
Se aplica functia nl2br() la continutul la care vrei ca randul nou sa fie inlocuit cu <br>.
In codul dat mai sus se face asa:

Cod: Selectaţi tot

$descriere = nl2br($con->real_escape_string($data['descriere'])); 

ionatan Mesaje:94
Multumesc, La partea de afisare nu stiam de ca nu imi afisa randul sub celalalt si am pus:

Cod: Selectaţi tot

$descriere = nl2br($row['descriere']); 
apoi

Cod: Selectaţi tot

echo $descriere;
Cumpără adevărul, şi nu-l vinde, înţelepciunea, învăţătura şi priceperea.
https://www.crestinmultimedia.com/

Subiecte similare