|
|
|
| У меня вопрос по поводу пользовательского ввода. Я написал скрипт гостевой книги.
Проблема в том, что если при вводе текста в поле <textarea> пользователь нажмет Enter и продолжить писать текст, то последующий вывод информации нарушается.
Есть ли какая нибудь функция, которая заставляет игнорировать нажатие на Enter? То есть чтобы весь текст был в одну строку. | |
|
|
|
|
|
|
|
для: FiX
(25.07.2005 в 13:24)
| | Так а при выводе эти данные все равно будут в одну строку. Если только вы не применили функции nl2br(). | |
|
|
|
|
|
|
|
для: FiX
(25.07.2005 в 13:24)
| | Приведите пожалуйста HTML-код формы? | |
|
|
|
|
|
|
|
для: cheops
(25.07.2005 в 13:59)
| |
<table border="0" align="center" class="bodytext" cellpadding="0" cellspacing="0"><tr>
<tD><form action=action.php method=post name="form1">
Ваше имя:</td><tD align="right"><input type=text name=name></td></tr><tr>
<tD>E-mail:</td><tD align="right"><input type=text name="mail"></td></tr><tr>
<td colspan="2">Сообщение:<br><div align="right">
<textarea name="text" style="font-family:tahoma;font-size:11px;height:70px;width:220"></textarea></td></tR><tr>
<tD></td><tD><input type="submit" value="Добавить"></div></form></td></tR></table>
</tD><tD>
Дополнительно:<Br>
<a class=body href="javascript:setcode(' текст ')">Жирный текст </a><Br>
<a class=body href="javascript:setcode(' текст ')">Курсив </a><Br>
<a class=body href="javascript:setcode(' [u] текст [/u] ')">Подчеркнутый текст [u] [/u]</a><Br><bR>
</tr></table>
</tR>
<?php
break;
}
?>
</table>
|
Это сама форма добавления;
<?php
if ($name==""):
print "Вы не ввели имя!<br>";
elseif ($mail==""):
print "Вы не ввели E-mail!<br>";
elseif ($text==""):
print "Вы не ввели текст сообщения!<br>";
else:
$text = htmlspecialchars($text);
$text = str_replace("","<b>",$text);
$text = str_replace("","</b>",$text);
$text = str_replace("","<i>",$text);
$text = str_replace("","</i>",$text);
$text = str_replace("[u]","<u>",$text);
$text = str_replace("[/u]","</u>",$text);
trim($text);
$dt = date("d.m.y");
$wrtext = "$dt|$name|$mail|$text \n";
$data = "data.dat";
$files = fopen($data,"a");
fputs($files,$wrtext);
fclose($files);
header ("location: index.php");
endif;
?>
|
А вот сам скрипт записи... (выше) | |
|
|
|
|
|
|
|
для: FiX
(25.07.2005 в 20:24)
| | Добавьте в обработчике строки
<?php
$text = str_replace("\r\n","<br>",$text);
$text = str_replace("\n","<br>",$text)
?>
|
Функция nl2br() помоему переводы строк не удаляет, а они действительно могут представлять проблему при хранении информации в файле. | |
|
|
|