2015-09-18 3 views
-1

Я работаю над проблемой PHP, которая требует от меня отображения моего имени и неупорядоченного списка первых десяти совершенных квадратов. Вот код, который я получил:Неупорядоченный список, который не отображается правильно

<html> 
<body> 
<p>Your Name</p> 
<ul> 
<li>0</li> 
<li>1</li> 
<li>4</li> 
<li>9</li> 
<li>16</li> 
<li>25</li> 
<li>36</li> 
<li>49</li> 
<li>64</li> 
<li>81</li> 
</ul> 
</body> 
</html> 

И это код, который я произвел:

<html> 
<body> 
<?php echo '<p>Your Name</p>'; ?> 
<ul> 
<? 
    for ($i = 0; $i <= 9; $i++) { 
     echo ('<li>'); 
     echo ($i * $i); 
     echo ('</li'); 
    } 
?> 
</ul> 
</body> 
</html> 

И выход:

Ваше имя

'; ?> 
'); echo ($i * $i); echo (''); } ?> 

Так в чем моя проблема? Заранее спасибо.

+1

'<' на '

+0

@FerozAkbar верен.

+1

синтаксическая ошибка 'echo ('

ответ

4

Вы, ребята правильно на обоих, но это делает вопрос хуже. - YoungMogul 17 минут назад

Я делаю этот комментарий ответ, вместе с дополнительной информацией:

Мое мнение по этому вопросу заключается в следующем: Вы не можете иметь веб-сервер/PHP/установлен или ISN Apache 't правильно настроен. Или вы пытаетесь получить к нему доступ как file:///file.php
, а не http://localhost/file.php Я уверен, что я прав на это, или вы не используете расширение .php или не указали Apache на использование файлов .html как PHP, если это должно быть дело.

Я подтвердил, что я обращаюсь к нему как файл: //file.php, но как это исправить? - YoungMogul 27 сек назад

Используя http://localhost/file.php

  • Доступ к file:///file.php через ваш браузер будет только анализировать необработанный HTML, а не PHP директив.

  • О, это, кроме синтаксической ошибки, уже очерченной.

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

Вот почему вам показывают «код», а не фактические разобранные директивы.

OP:

 
And the output is: 
Your Name 
    '; ?> 
    '); echo ($i * $i); echo (''); } ?> 

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

В противном случае, <? - <?php.

  • Если на размещенной услуге, обратитесь в службу технической поддержки.
  • Если на локальном компьютере проверьте конфигурацию.

NOTA: Если PHP/Apache/Вебсервер не установлен, то он будет никакой пользы, пока вы не сделаете.

Есть несколько там, и в зависимости от среды:

  • ЛАМПЫ
  • MAMP
  • Xampp
  • WampServer
  • т.д.

Местный тест:

Что я могу подтвердить, следующие из источника HTML и фиксируя ошибки синтаксиса в echo ('</li');:

<html> 
<body> 
<p>Your Name</p><ul> 
<li>0</li><li>1</li><li>4</li><li>9</li><li>16</li><li>25</li><li>36</li><li>49</li><li>64</li><li>81</li></ul> 
</body> 
</html> 

Используя следующий исходный код:

<html> 
<body> 
<?php echo '<p>Your Name</p>'; ?> 
<ul> 
<? 
    for ($i = 0; $i <= 9; $i++) { 
     echo ('<li>'); 
     echo ($i * $i); 
     echo ('</li>'); 
    } 
?> 
</ul> 
</body> 
</html> 
+0

Nice pick up ** доступ к нему как файл: ///file.php , а не http: //localhost/file.php** – Saty

+0

@Saty Да, это было clincher там ;-) –

0

Эта ошибка кажется, что ваш short_open_tag не открыт в вашем php.ini файле

Set

short_open_tag=On 

в php.ini

и перезапустите сервер Apache.

ИЛИ изменение <? to <?php

<?php 
    for ($i = 0; $i <= 9; $i++) { 
     echo ('<li>'); 
     echo ($i * $i); 
     echo ('</li>');// change `('</li');` to ` ('</li>');` 
    } 
?> 
0

Просто перепечатывать код PHP как:

<html> 
<body> 
<?php echo '<p>Your Name</p>'; ?> 
<ul> 
<?php 
for ($i = 0; $i <= 9; $i++) { 
    echo ('<li>'); 
    echo ($i * $i); 
    echo ('</li'); 
} 
?> 
</ul> 
</body> 
</html> 
1

У вас есть две ошибки. Используйте <?php вместо <? и echo ('</li>'); вместо echo ('</li');

+1

Первый вариант не является «ошибкой», это вариант «стиль» для кодирования. Второй - это опечатка, поэтому я написал «комментарий» об этом. Однако вы стоите совершенно правильно. –

+0

@ Fred-ii- Я только начинаю .. Длинный путь остается профессиональным .. :) –

+2

как каждый опытный кодер однажды был ;-) Cheers –

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