проблема с одинарной кавычкой

  • Автор темы Автор темы Etwas
  • Дата начала Дата начала

Etwas

Новичок
проблема с одинарной кавычкой

Привет!
В общем проблема у меня такая:

Получаю данные о клиентах
PHP:
$rows = $user->getUnionCompany($g_page-1, $g_name, $g_namenat);

затем отправляю все это в шаблон:
PHP:
$tpl->assign(array('rows' => $rows, 'name' => $g_name, 'namenat' => $g_namenat, 'next_page' => $next_page, 'prev_page' => $prev_page));

В самом шаблоне:
PHP:
<td>
     <a href="#" onClick="document.forms[1].prepare.value='{$row.fullnameeng|replace:"\"":"&quot;"}'; window.opener.document.forms[0].client_name.value = '{$row.fullnameeng|replace:"\"":"&quot;"}';">
            {$row.fullnameeng} ({$row.shortnameeng|default:"--"})
      </a> 
</td>

Так вот, поля все выводит, и работает замечательно, но! Когда в названии клиента встречается одинарная кавычка, допустим в компании D'arty, Ява-скрипт не передает в форму этого клиента, понятное дело, потому что кавычка закрывает его value.
Компании вносятся через программу, написанную на делфях, поэтому за вводом не слежу.
Вопрос: Как можно безболезненно обойти эту ошибку?
 
ну двойную-то кавычку ты заменяешь?
какая проблема заменить одинарную?
 
Автор оригинала: Фанат
ну двойную-то кавычку ты заменяешь?
какая проблема заменить одинарную?
Ну проблема в том, что я не знаю, как заменить несколько параметров. Т.е. сейчас заменяется двойная кавычка, а чтобы добавить еще и замену одинарной, я не знаю.
 
ты не знаешь, как написать в пхп несколько строчек подряд?
перед отправкой в шаблон?
 
Погодь, чего-то я не понял.

Массив row имеет у себя $row.fullnameeng, т.е. имя клиента. Что в нем находится, мне не известно.

value='{$row.fullnameeng|replace:"\"":"&quot;"} Уже в шаблоне он заменяет двойную кавычку на спец. символ.

Или, как я тебя понял, ты предлагаешь перед отправкой в шаблон, заменить в массиве апострофы и уже потом отправить?
 
модификаторы можно применять последовательно

value='{$var|replace:"\"":"&amp;quot;"|replace:"'":"&amp;#039;"}'
 
Сверху