我使用以下代码保存在表单中输入的电子邮件。但是在点击“提交”时,它会发出内部服务器错误。请帮助纠正它。
form.php的代码:
<html>
<body>
<form action="email_script.php" method="POST">
<p> Email Address: <input type="text" name="email" size="30"/> </p>
<input type="submit" name="submit" value="Submit"/>
</body>
</html>
Code for email_script.php:
<? php
$email = $_POST('email');
$file = "file.html"
file_put_contents($file, $email . PHP_EQL, FILE_APPEND);
print("...");
?>
答案 0 :(得分:4)
<?
和php
之间存在差距。这应该是<?php
。
此外,$email = $_POST('email');
应为$email = $_POST['email'];
(带方括号)
另外,如下所述,第二行最后需要一个半冒号。
另外,我从未听说过PHP_EQL
。也许你的意思是PHP_EOL
?
如果您在本地环境中工作,请考虑将error_reporting(-1);
放在php文件的顶部(<?php
之后)。这将提供比“内部服务器错误”更详细的错误。但请记住在将脚本放入实时环境之前删除该行。
另外 - 请注意,只需将表单中的数据添加到服务器上的文件中,无需验证或清除,这是非常危险的。我没有详细说明,因为这不是你提出的问题,但也许会对此有所了解。