problema textarea

  • Creatore Discussione Creatore Discussione ispanic
  • Data di inizio Data di inizio

ispanic

Utente Attivo
28 Ago 2014
119
0
0
Ciao ragazzi ho una textarea, dove gli utenti possono scrivere una descrizione, ho impostato il numero masismo di caratteri a 200, però se un utente (stupido) scrivesse in questo modo:
c
c
c
c
c
Io vedrei nel mio database appunto alla voce descrizione questo:
c
c..
Come posso far sì che nel database venga lo stesso caricato tutto in solo uno spazio o comunque in spazi preselezionati da me?
Quindi in pratica se un utente scrive questo:
c
c
c
c
il database lo legge:
c c c c c
 
Potresti sostituire l' "a capo" con qualcosa e poi, dopo averlo estratto dal database, potresti sostituire quel qualcosa con l' "a capo".
 
Un piccolo esempio in codice me lo potresti fare?

PHP:
<?php
$text = $_POST['text']; // $text è il testo pubblicato attraverso la textarea
$dbtext = strtr($text, "\n", "&np;"); // sostituisce l' "a capo" con "&np;" in $text

// queries di inserimento nel db (dovrai inserire ovviamente $dbtext)
?>

PHP:
<?php
// connetti ed estrai ($dbtext è il testo estratto dal db)

$text = strtr($dbtext, "$np;", "\n"); //sostituisce il "&np;" con l' "a capo" in $dbtext
?>
 
Ciao ho provato prima strtr e non funzionava..
Quindi ho cercato un po' ed ho beccato un str_replace(), ma non gunge nemmeno questo
PHP:
$dbtext = str_replace ("\n", "&nbsp;", $descrizione);

$query = "insert into download (nome_paragone, descrizione)
value ('$nome_paragone', '$dbtext')";
 
Ultima modifica:
Prova indicandolo in questo modo:

PHP:
<?php
$dbtext = strtr($descrizione, array("\n" => "qualcosa"));
?>
 
Ci sono appena riusito! Facendo così:
PHP:
$dbtext = str_replace ("\r\n", " ", $descrizione);
 
Ti sconsiglio di sostituirlo con " ", perché durante l'estrazione, gli spazi - convertendoli - diventeranno "a capo".
 

Discussioni simili