Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Unterminated string constant: encodeURI


Автор: godsgame 30.9.2005, 18:09
такой код работает:
Код

<a onclick="SendMe(encodeURI('<? echo $line["username"];?>'))"><? echo $line["username"]."[".$line["level"]."]"; ?></a>



а такой выдает ошибку ЕСЛИ $line["username"] содержит ПРОБЕЛ!
Код

$mText .= "<br><a onclick=SendMe(encodeURI('".$line["username"]."'));>".$line["username"]."</a>";        


почему? если $line["username"] без пробела то все нормально

Автор: PARROT 30.9.2005, 20:26
Код

$mText .= "<br><a onclick=SendMe(encodeURI('".$line['username']."'));>".$line['username']."</a>";  

Автор: godsgame 30.9.2005, 22:03
PARROT
ничего не дало...

Автор: PARROT 30.9.2005, 22:08
А что надо сделать? Кого куда переправить? Может отказаться от использования яваскрипта?

Автор: godsgame 30.9.2005, 22:59
PARROT
в чате, при нажатии на ник, в окно сообщений должен печататься этот ник... по другому тут наверно никак
Добавлено @ 23:01
тат ты наверно поняла проблема из-за пробела, но вот что интересно:
в правом окне, где выводится список тех кто онлайн все работает а непосредственно в окне где выводятся сообщения не получается....

вот тут работает(в правом списке):
Код

<td width="100%"><a onclick="SendMe(encodeURI('<? echo $line["username"];?>'))"><? echo $line["username"]."[".$line["level"]."]"; ?></a>

Автор: PARROT 30.9.2005, 23:27
Может ты это имеешь ввиду?
Код

echo "<tr><td><a  onclick='top.chat.document.forms[0].message.value+=\"$line[username], \"'>$line[username]</a>";

http://vaulter.narod.ru/txt.rus/phpchat.html

Автор: godsgame 1.10.2005, 08:58
PARROT
при нике с пробелом снова выдает: Unterminated string constant

Автор: PARROT 1.10.2005, 09:03
Код

//trim - вырезает пустое пространство в начале и в конце строки.
string trim (string str [, string charlist])
trim($nic);

Автор: godsgame 1.10.2005, 09:09
PARROT
так пробел-то внутри, пример: Большой Человек

Автор: PARROT 1.10.2005, 09:25
Тогда удали все пробелы внутри текста, используя регулярные выражения.

Автор: godsgame 1.10.2005, 10:14
PARROT
а смысл? мне же нужно чтоб с пробелом он его вывел....

Автор: [xoodo] 1.10.2005, 12:38
Обе строки по идее должны выводить одно и то же, значится, и работать одинакоко. В разметке они одинаково выглядят?

Или вот так попробуй, с кавычками вокруг СендМи:
Код
echo "<br><a onclick=\"SendMe(encodeURI('".$line['username']."'))\">".$line['username']."</a>";

Автор: godsgame 1.10.2005, 17:09
[xoodo]
пишет что нехватает ";"

Автор: godsgame 1.10.2005, 19:30
делал так:
echo "<br><a onclick=\"SendMe(encodeURI('".$line['username']."'));\">".$line['username']."</a>";

и так:
echo "<br><a onclick=\"SendMe(encodeURI('".$line['username']."'))\";>".$line['username']."</a>";[b]


но не помогло

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)