2013-11-21 2 views
1

Я тестирую этот файл на своем локальном сервере WAMP и продолжаю получать ошибку в строке 5 ... Я пытаюсь проверить, получены ли мои данные формы, когда страница загружает, и если да, то он должен скопировать входящие значения в ассоциативный массив. Если данные формы не будут получены, она отобразит пустую форму ... Проблема в том, что моя форма даже не загружается, и я полагаю, что это связано с линией 5. Я просто не могу понять, как это сделать.My PHP Heredoc (EOF) не работает

Спасибо

Вот мой PHP/HTML:

<?php 
    $message = ""; 
    function printform() 
    { 
     print <<<EOF 
     <form> 
      Customer First Name:<input type='text' name='fname' /><br /> 
      Customer Last Name:<input type='text' name='lname' /><br /> 
      Postal Code:<input type='text' name='postal' /><br /> 
      <input type='submit' value='Send' /> 
     </form> 
EOF; 
    } 

    function checkdata($mydata) 
    { 
     //validate the data 

     return "error"; 
    } 

?> 

<html> 
    <head> 
    <title>Day 13 Exercise</title> 
    </head> 
<body> 
     <?php 
     if (isset($_REQUEST['fname'])) 
     { 
      //validate data 
      $data = $_REQUEST; 
      //print_r($data); 
      $message = checkdata($data); 
      if ($message) 
      { 
       //there is an error 
       //redisplay form and display error message 
       print("<h2 style='color:red'>$message</h2>"); 
       printform(); 
      } 
      else 
      { 
       //enhance later to write data to database 
       print("Data is valid"); 
      } 
     } 
     else 
     { 
      //page is loading for the first time 
      printform(); 
     } 
    ?> 
</body> 
</html> 
+0

PS. Я еще не добавил массивы, но форма должна отображаться, и это не так. Просто продолжайте говорить «Ошибка анализа: синтаксическая ошибка, неожиданный T_SL в C: \ wamp \ www \ Day4 \ day13exercise.php в строке 5 « – Kelsey

ответ

2

Постарайтесь избавиться от двух пространств в конце строки после EOF;, как правило, пробелы в конце строки не вопрос в PHP, но синтаксис очень придирчивый о белом пространстве. < < < синтаксис очень разборчивый о белом пространстве.

+0

Я не верил в это, но я тестировал его, и он действительно путается с пробелами даже после'; '.. – DanFromGermany

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