在php中意外结束文件?

时间:2015-06-16 03:45:59

标签: php mysql

我正在为项目编写这个php表单,由于某种原因,我在代码的末尾收到错误消息?有人可以向我解释为什么会这样吗?对于像这样的未来情况,这确实会有所帮助。

font-family: "Courier New";
font-style: normal;
font-size: 4.8em;
font-weight: 400;
letter-spacing: -0.125em;
line-height: 1.5em;

2 个答案:

答案 0 :(得分:1)

注意:

  • 你忘记了一个下划线(_)到你的一个heredoc。
  • 您忘记了插入查询的列。
  • 您在>上忘记了$result = $conn-query($query);,它应该是$result = $conn->query($query);

代码:

echo <<<_END
  <form action = "sqltest.php" method="post"><pre>        
  Author <input type="text" name = "author">
  Title <input type="text" name = "title">
  Type <input type="text" name="Type">
  Year <input type="text" name="year">
  ISBN <input type="text" name="isbn">
  <input type="submit" value="ADD RECORD">
  </pre></form>
_END;

插入查询:

$query = "INSERT INTO publications VALUES (column1, column2, column3, column4)".
         "('$author',  '$title', '$type', '$year' ,'$isbn')";

答案 1 :(得分:0)

Heredocs对于它们结束时非常严格,以至于它不会意外地结束你不想要的地方,它必须以前面没有空格的开头字符结束(没有空格,只有一个新行)然后是分号。

所以这个:

    echo <<< END
    Some words and stuff
    END; //Whitespace before END;

无效语法,这将是正确的语法:

    echo <<< END
    Some words and stuff
END; //No whitespace before END;