Autor Zpráva
Shadowek
Profil
Dobrý den, potřeboval bych aby obsah jedné textarea byl odřádkovaný.
Obsah textarea se po uložení nahraje do DB. Při editaci se z db vytáhne obsah textarey a muže se s ním zase pracovat ale je neodřádkovaný. Nevím jak to udělat protože uvnitř textarey se smí vyskytovat TAGy takže <br> je naprosto nevhodné.
Step
Profil
když neměníš \r\n za <br> a escapuješ to tak tam je potom problém s těma lomítkama

možná je to neni úplně nejlepší řešení, ale mělo by to fungovat, při výpisu je ještě potřeba použít
<pre></pre>


$text = mysql_real_escape_string($text);
$text = str_replace("\r", "r",$text);
$text = str_replace("\n", "n",$text);
keeehi
Profil
Někde se ti v tom přenosu ztratily znak pro nový řádek (\r\n). Tak si najidi, kde ti tyto znaky mizí. Pak už by to mělo být vpořádku.
Manny
Profil *
Shadowek zkus na ten text v textaree aplikovat fci nl2br()...
Shadowek
Profil
Step:
Teď mi to neodřádkuje ale vypíše \r\n
AM_
Profil
Manny:
Shadowek zkus na ten text v textaree aplikovat fci nl2br()...
fuj, <br> v textaree nemá co dělat, formátuje se podle nových řádků (\r)\n

Shadowek:
Teď mi to neodřádkuje ale vypíše \r\n
To, co napsal Step, mi nedává moc dobrý smysl, proč při výpisu do textarey string escapovat jako pro zápis do mysql, a replace typu "\\r"=>"r" rozhodně nemůže dělat nic dobrého.

Máš možná hokej jinde v escapování, ověř si, že data od uživatele se escapují jen jednou (se zapnutými magic_quotes_gpc ti uložení do databáze mysql_escape_string($_POST['text']) vytvoří 2x oescapovaný string (magic_quotes_gpc automaticky escapuje data v _GET a _POST).
Step
Profil
AM:
špatně jsem si to přečetl, takhle by se to ošetřilo při zápisu do db, výpis by potom měl fungovat bez jakéhokoliv dalšího ošetření, teda aspoň mě to tak funguje

to že to vypisuje \r\n znamená že tam je ve skutečnosti \\r\\n, možná jestli máš zapnuté magic_quotes_gpc() ja psal AM_
každopádně to co jsem psal předtim používám a když vypíšu text zpátky do texarea tak je normálně odřádkovaný....
Shadowek
Profil
To je divné ... jsem s tím nic neudělal ( nejspíš ) a už to funguje ...

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0