2010-09-09 3 views
0

вот ошибка, я получаю:Ошибка синтаксического анализа: Ошибка синтаксиса неожиданный T_DOUBLE_ARROW expection «)»

Анализировать ошибка: синтаксическая ошибка, неожиданный T_DOUBLE_ARROW, ожидая «)» в .../Темы/по умолчанию/Display.template .php на линии 170

Вот код:

'notify' => array(
    'test' => 'can_mark_notify', 
    'text' => 125, 
    'image' => 'notify.gif', 
    'lang' => true, 
    'custom' => 
     'onclick="return confirm(Â¥'' 
     . (
      $context['is_marked_notify'] 
      ? $txt['notification_disable_topic'] 
      : $txt['notification_enable_topic'] 
     ) 
     . 'Â¥');"', 
    'url' => $scripturl 
     . '?action=notify;sa=' 
     . ($context['is_marked_notify'] ? 'off' : 'on') 
     . '; topic=' . $context['current_topic'] 
     . '.' . $context['start'] 
     . '; sesc=' 
     . $context['session_id']), 

Я проверил, чтобы увидеть, если все скобки закрыты, и они кажутся. Я не уверен, что делать.

ответ

3

У вас есть несбалансированные одинарные кавычки, начиная с 'custom => 'onclick=..., где вы вставляете некоторые переменные массива PHP в javascript.

'notify' => array(
    'test' => 'can_mark_notify', 
    'text' => 125, 
    'image' => 'notify.gif', 
    'lang' => true, 
    'custom' => 'onclick="return confirm(Â¥'' . ($context['is_marked_notify'] ? 
             ^^^^^ right here 
      $txt['notification_disable_topic'] : $txt['notification_enable_topic']) . 'Â¥');"', 
    'url' => $scripturl . '?action=notify;sa=' . ($context['is_marked_notify'] ? 'off' : 'on') . ';topic=' . $context['current_topic'] . '.' . $context['start'] . ';sesc=' . $context['session_id']), 

Кроме того, вы должны быть очень осторожны, вставляя то, что кажется текстом, в эти обработчики onclick. Что делать, если $txt['notification_disable_topic'], а остальная часть содержит одиночную кавычку (например, «O'Brien»). Вы получите синтаксическую ошибку javascript.

+0

Я ничего не знаю о кодировании. Как это исправить? Извините за непонимание. – Phill

+0

О, вот оно. Спасибо! – Phill

+0

вы должны закрыть эту строку, которую написал Марк в начале своего комментария –

Смежные вопросы