Устранение неполадок "ошибка синтаксического анализа, неожиданная ошибка" > "

Я получаю эту ошибку, которая читает

Ошибка анализа: ошибка синтаксического анализа, неожиданная ' > ' в C:\wamp\www\about.php в строке 11

Вот мой код:

<?php
session_start();
include ("include/header.php");
if (!isset($_SESSION['name'])){;
header("Location:includeindex.php");
exit;
 }
 else{
TopNavigation("about Me -ECA236","About Me",$_SESSION['name']);
echo "<p>Here is a little about me. I am a mother of twin girls who are 9 </p>
echo "<p>I been married for 5 years but been with my husband for 11 years </p>
echo "<p>I am attending college for Computer Programming and Database Mangament      </p>
echo "<p>After I get done with this degree I am want to go back for Web Design </p>
echo "<p>since half my classes are web design now. I enjoy camping,bon fires and </p>
echo "<p>playing video games, hanging out with friends and family.</p>
Footer();
   }
 ?>

Я попытался добавить; до конца и "до конца, но то же самое всплывает. Может кто-то увидеть, что я делаю неправильно.

Вот ошибка, которую я получаю, когда я добавляю "; в конце:

Предупреждение: include (include/header.php) [function.include]: не удалось открыть поток: нет такого файла или каталога в C:\wamp\www\about.php в строке 3

Предупреждение: include() [function.include]: Не удалось открыть 'include/header.php' для включения (include_path = '; C:\php5\pear') в C:\wamp\www\about.php в строке 3

Предупреждение: не удается изменить информацию заголовка - уже отправленные заголовки (вывод начат в C:\wamp\www\about.php: 3) в C:\wamp\www\about.php в строке 5

Ответы

Ответ 1

У вас есть:

echo "<p>playing video games, hanging out with friends and family.</p>

Вам нужно:

echo "<p>playing video games, hanging out with friends and family.</p>";

Ответ 2

Вам нужно добавить цитату "; в конец строк echo

Ответ 3

Вам нужна цитата и точка с запятой в конце каждой эхо-строки.

Вообще говоря, каждый раз, когда вы открываете цитату в строке на PHP, вам также нужно ее закрыть, и каждая строка (за несколькими исключениями, например, операторы управления потоком и т.д.) должна быть заканчивается точкой с запятой.

Ответ 4

Вы не закрываете кавычки:

echo "

Вот немного обо мне. Я мать близнецов, которых 9 ";

Ответ 5

Все ваши эхо-строки должны закрыть свои речевые знаки и завершить с помощью точки с запятой.

Ответ 6

Вы вообще не закрываете никаких выражений эха. Ниже следует работать:

<?php
session_start();
include ("include/header.php");
if (!isset($_SESSION['name'])){
header("Location:includeindex.php");
exit;
 }
 else{
TopNavigation("about Me -ECA236","About Me",$_SESSION['name']);
echo "<p>Here is a little about me. I am a mother of twin girls who are 9 </p>";
echo "<p>I been married for 5 years but been with my husband for 11 years </p>";
echo "<p>I am attending college for Computer Programming and Database Mangament      </p>";
echo "<p>After I get done with this degree I am want to go back for Web Design </p>";
echo "<p>since half my classes are web design now. I enjoy camping,bon fires and </p>";
echo "<p>playing video games, hanging out with friends and family.</p>";
Footer();
   }
 ?>

Я также вижу полуточку на строке 4, которую я не считаю нужным, - удалил ее выше.

Ответ 7

попробуйте следующее:

session_start();
include_once ("include/header.php");
if (!isset($_SESSION['name'])) {
    header("Location:includeindex.php");
    exit;
}
else {
    TopNavigation("about Me -ECA236", "About Me", $_SESSION['name']);
    echo "<p>Here is a little about me. I am a mother of twin girls who are 9</p>";
    echo "<p>I been married for 5 years but been with my husband for 11 years</p>";
    echo "<p>I am attending college for Computer Programming and Database Mangament</p>";
    echo "<p>After I get done with this degree I am want to go back for Web Design</p>";
    echo "<p>since half my classes are web design now. I enjoy camping,bon fires and</p>";
    echo "<p>playing video games, hanging out with friends and family.</p>";
    Footer();
}

Ответ 8

Синтаксис файла неверен. Следующий пример должен исправить это, однако сообщение просто означает, что часть вашего вывода действительно является кодом, потому что вы пропустили правильное использование цитат " вокруг строк. Имейте в виду, что строки работают и над несколькими строками, поэтому это, вероятно, легче понять:

<?php
session_start();
include ("include/header.php");
if (!isset($_SESSION['name']))
{
  header("Location:includeindex.php");
  exit;
} else {
  TopNavigation("about Me -ECA236","About Me",$_SESSION['name']);
  echo "
    <p>Here is a little about me. I am a mother of twin girls who are 9 </p>
    <p>I been married for 5 years but been with my husband for 11 years </p>
    <p>I am attending college for Computer Programming and Database Mangament      </p>
    <p>After I get done with this degree I am want to go back for Web Design </p>
    <p>since half my classes are web design now. I enjoy camping,bon fires and </p>
    <p>playing video games, hanging out with friends and family.</p>
    " # string ends here
    ;
  Footer();
}
?>

Или даже лучше, чем это PHP:

<?php
session_start();
include ("include/header.php");
if (!isset($_SESSION['name']))
{
  header("Location:includeindex.php");
  exit;
} else {
  TopNavigation("about Me -ECA236","About Me",$_SESSION['name']);
  ?>
    <p>Here is a little about me. I am a mother of twin girls who are 9 </p>
    <p>I been married for 5 years but been with my husband for 11 years </p>
    <p>I am attending college for Computer Programming and Database Mangament</p>
    <p>After I get done with this degree I am want to go back for Web Design </p>
    <p>since half my classes are web design now. I enjoy camping,bon fires and </p>
    <p>playing video games, hanging out with friends and family.</p>
  <?php
  Footer();
}
?>

Ответ 9

Как и все остальные, вам нужны кавычки и полуколоны. Но это также игнорирует то, что для этого существуют менее подробные (и менее накладные) методы. Например, вы можете сделать все под одним выражением echo:

echo"
  <p>>Here is a little about me. I am a mother of twin girls who are 9</p>
  <p>I been married for 5 years but been with my husband for 11 years</p>
  <p>I am attending college for Computer Programming and Database Mangament</p>
";

Или альтернативный метод

$content = " <<<END
  <p>Here is a little about me. I am a mother of twin girls who are 9</p>
  <p>I been married for 5 years but been with my husband for 11 years</p>
  <p>I am attending college for Computer Programming and Database Mangament</p>
END;

echo $content;

Лучшее возможное решение, если вы собираетесь делать тонны не-php, - это просто закрыть тег PHP и сделать это с прямым HTML, где вам не нужно беспокоиться о котировках и точках с запятой вообще

?>
  <p>Here is a little about me. I am a mother of twin girls who are 9</p>
  <p>I been married for 5 years but been with my husband for 11 years</p>
  <p>I am attending college for Computer Programming and Database Mangament</p>
<?php

Моя точка зрения заключается в том, что я вижу много повторений <?php> и </php>, а также тонну echo повторения на примерах SO. Это работает? Конечно. Но это не нужно. Это замедляет вас и создает больше возможностей испортить. И это просто уродливо! Я не хочу его отлаживать!