Открыть Ответить

Чат в реальном времени

31
01.12.2010 23:56:17 01.12.2010 23:59:16

если убрать

PHP
$text = htmlspecialchars($text); 
$text = mysql_escape_string($text);

то всё работает идеально

Goshan
Goshan
3.92

3.92

32
01.12.2010 23:57:43

настроил, вот так работает:

PHP
	$text = substr($_POST['text'], 0, 500);
	$text = htmlspecialchars($text);
	$text = str_replace("\n", "<br>", $text);
	$text = mysql_escape_string($text);
Goshan
Goshan
3.92

3.92

33
02.12.2010 00:00:49

А, блин, я не заметил, что Вы сначала обрабатываете все в mysql_escape_string($text);...
Конечно, mysql_escape_string($text); должно быть вообще в самом конце, а в идеале прямо перед запросом в базу...

GRAFLEKX
GRAFLEKX
3.92

3.92

34
02.12.2010 00:01:11

да, так и есть :)

Goshan
Goshan
3.92

3.92

35
02.12.2010 00:03:12

Сделайте лучше обработку для двух условий:

Код
$text = str_replace("\r\n", "<br>", $text); 
$text = str_replace("\n", "<br>", $text);

Иначе перевод каретки не обработается и перенос строки не сработает...

GRAFLEKX
GRAFLEKX
3.92

3.92

36
02.12.2010 00:09:27

спасибо, сделаю.

Goshan
Goshan
3.92

3.92

37
05.12.2010 20:29:45

кто-нибудь знает, как реализовать отправку формы из <textarea> по Enter или Ctrl+Enter? Очень необходимо..

Goshan
Goshan
3.92

3.92

38
05.12.2010 20:50:43 05.12.2010 20:55:03

Отправка формы из textarea по нажатию Enter или Ctrl+Enter:

Код
validForm=function(oForm){
if(!oForm.messageName.value||!oForm.messageBox.value){alert('Заполните оба поля'); return false;}
else return oForm.submit();
}

Форма:

Код
<form action="addMessage.php" method="post" onsubmit="return validForm(this)">
<p><b>Имя:</b><br />
<input type="text" width="40" name="messageName" /></p>
<p><b>Сообшение:</b><br />
<textarea name="messageBox" cols="40" rows="5" onkeypress="if(event.keyCode==10||(event.ctrlKey && event.keyCode==13))validForm(this.form)"></textarea></p>
<input type="submit" name="messageButton" value="Отправить комментарий" />
</form>

Только вот одна проблема - разные браузеры по разному отслеживают нажатие данных клавиш, поэтому может не работать в некоторых браузерах!

GRAFLEKX
GRAFLEKX
3.92

3.92

39
08.12.2010 21:47:36 08.12.2010 22:33:04

спасибо. но при нажатии ctrl+enter перекидывает на главную, отправки данных из формы при этом не происходит...
это может быть связано с тем, что отправка формы происходит через jquery без перезагрузки страницы?

upd: не было параметра method=post, добавил, теперь при нажатии происходит вроде бы как отправка, но результата нет... (сообщение не появляется в бд)
___
что за дьявол, ни один способ, который я нашел в интернете, не собирается никак работать! аж бесит =/

единственный вариант, где ХОТЬ ЧТО-ТО происходит, это

Код
onkeypress="if((event.ctrlKey) && ((event.keyCode==10)||(event.keyCode==13))) {this.form.submit();}"

но только перезагружается страница (а не должна, ибо jquery), и ничего не записывается =/

Goshan
Goshan
3.92

3.92

Открыть Ответить
Хотите опробовать SLAED CMS в действии?
Идеи и предложения
Обратная связь
Подтверждение

Поделиться
QR-код

Предварительный просмотр