Kezdeném azzal, hogy igen rákerestem, de nem megy! :)
A gond egyszerű: egy textarea-ből posttal küldök egy szöveget, és azt szeretném feldolgozni. Viszont nem bírom megkeresni a sortöréseket php-ban, ezáltal ráakaszkodnak a sorok első/utolsó szavaira, és azokkal a szavakkal nem tudok mit kezdeni (amúgy a szöveg szavaival dolgozik a script).
nl2br()-t ismerem, de ugye nekem ennek a fordítottja kellene, ami eltünteni. Próbáltam már \r\n, \r, \n-t megkeresni karakterenként de sikertelenül.
Kliens oldali tiltás-t pedig nem favorizálom, mert copy/paste ellen nem véd a javascript.
Előre is köszönet!
- 1162 megtekintés
Hozzászólások
Ha nem bánod, nem kommentálom.
<?php
if (!isset($_POST['ta'])) {
echo '
<form action="" method="post">
<textarea name="ta"></textarea>
<input type="submit" value="send" />
</form>
';
} else {
$count = 1;
$words = split(" ", str_replace("\n", " ", $_POST['ta']));
foreach ($words as $word) {
echo $count++ . ". " . $word . "<br />";
}
}
?>
- A hozzászóláshoz be kell jelentkezni
Nem is kell kommentálni, tökéletesen érthető, de eddig eszembe nem jutott, hogy máshogy kezeli, ha közvetlen post-ból szedem, mint ha a postot kimentem egy string-be, és ott kezelem.
Hálás köszönetem. :)
- A hozzászóláshoz be kell jelentkezni
Nem hinném hogy az lenne a gond.
- A hozzászóláshoz be kell jelentkezni
Lényegében de. Mert stringbe tárolás után, már valamiért nem ismeri fel a \n-et, csak ha így közvetlenül post-ból szedem. Az én kódom majdnem full ugyanez volt, csak nekem a post helyén már a lementett string változója volt, meg exlode-ot használtam split helyett.
- A hozzászóláshoz be kell jelentkezni
Azért mondom, mert nekem úgy is működik.
- A hozzászóláshoz be kell jelentkezni
preg_replace('/[\n\r]+/',' ',$_POST[textarea]);
~~~~~~~~
De ezt az egy lépést ki nem tevé,
Az nem tett semmit, nem tud semmit is.
- A hozzászóláshoz be kell jelentkezni