2016-10-12 1 views
1
<li> 
     <a style="text-decoration:none;" href="<?=$this->baseUrl?>/trip/edittrip/<?php echo $this->tripdes[0]['Id']; ?>" 
     <?php if($this->trip==active) { ?> class="act" <?php } ?>>General Info</a> 
    </li> 

Когда я ее отладки, я получаю сообщение об ошибке, что: начальный тег() не закрыта должным образом, ожидаемый «>»PHP код необходимую помощь для этого ssnippet

Я новичок в HTML и PHP и не может определить причину этого сообщения, хотя этот код работал нормально раньше. Может ли кто-нибудь мне помочь?

+0

Я не вижу здесь проблем (пока поддерживаются короткие теги). Как вы отлаживаете его? – sidyll

+0

Я использую eclipse PDT (из-за поддержки фреймворка zend). Это старое приложение, которое я получил от кого-то и теперь пытаюсь заставить его работать. –

+0

Это проблема с вашей программой. В коде нет ничего плохого, возможно, что происходит, что ваш программный парсер смущен чем-то здесь. – sidyll

ответ

0

Попробуйте это:

<li> 
    <a style="text-decoration:none;" href="<?=$this->baseUrl?>/trip/edittrip/<?php echo $this->tripdes[0]['Id']; ?>"> 
    <?php if($this->trip==active) { ?> class="act" <?php } ?>General Info</a> 
</li> 
+0

Спасибо, я использовал этот код и, видимо, ошибка ушла, но я не уверен, есть ли результат, но есть много таких экземпляров, которые мне нужно исправить, прежде чем я уверен. Будем держать вас в курсе! –

0

Объяснение: Вы путаете синтаксис PHP tags.

В PHP у вас есть теги для открытия и закрытия двумя способами. Вы должны использовать любой из них.

  1. <?php //Code Here ?> - Первый метод
  2. <?= //Code Here ?> - Второй метод

Рекомендуется использовать какой-то один формат Кодекса.

Основные

Ошибка:

Вопрос:

Вы должны добавить class="act" когда IF является ИСТИНА, иначе вы не нужно добавить класс, если условие не выполняется.

Ответ:

При проверке состояния ПЧ к коду, необходимо использовать ECHO для печати некоторого значения над Т.И. HTML иначе он не будет печатать код, что вы написали в код.

Важно: Вам нужно добавить класс до закрытия <a> тега. Если вы повторите тег вне кода, это приведет к ошибке.

Часть IF будет выглядеть следующим образом.

<?php if($this->trip==active) { echo 'class="act"'; } else{} ?> 

Следовательно, код будет выглядеть следующим образом.

<li> 
<a style="text-decoration:none;" href="<?php echo $this->baseUrl; ?>/trip/edittrip/<?php echo $this->tripdes[0]['Id']; ?>"<?php if($this->trip==active) { echo 'class="act"'; } else{} ?>>General Info</a> 
</li> 
+0

Привет, Нареш, спасибо за подробное решение. Я использовал ваш код, но он все равно дает мне такое же сообщение об ошибке. Это проблема с моим отладчиком? Я могу попытаться использовать другой отладчик, если вы можете порекомендовать мне его. –

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