在服务器中保存联系表单的消息

时间:2018-04-06 16:40:24

标签: php

如何在服务器中保存联系表单的消息? 我使用PHP来保存消息,但它不起作用并且出现“HTTP ERROR 405”错误。

我的HTML代码:

<body>
<form action="contact.php" method="POST">
    <p>Name</p><input type="text" name="name">
    <p>Email</p><input type="text" name="email">
    <p>Message</p><textarea name="message" rows="6" cols="25"></textarea><br/>
    <input type="submit" value="Send"><input type="reset" value="Clear">
</form>
</body>

我的PHP代码

<?php
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$myfile = fopen("textfile.txt", "a") or die("Unable to open file!");
fwrite($myfile, $name);
fwrite($myfile, $email);
fwrite($myfile, $message);
fclose($myfile);
?>

或者有更简单的方法在服务器中保存邮件吗?

2 个答案:

答案 0 :(得分:0)

显示405 Method Not Allowed,因为您的服务器不支持 POST 。 尝试GET方法

<body>
<form action="contact.php" method="GET">
    <p>Name</p><input type="text" name="name">
    <p>Email</p><input type="text" name="email">
    <p>Messages</p><textarea name="messages" rows="6" cols="25"></textarea><br/>
    <input type="submit" value="Send"><input type="reset" value="Clear">
</form>
</body>

php

<?php
$name = $_GET['name'];
$email = $_GET['email'];
$message = $_GET['message'];
$myfile = fopen("messages.txt", "a") or die("Unable to open file!");
fwrite($myfile, $name);
fwrite($myfile, $email);
fwrite($myfile, $message);
fclose($myfile);
?>

答案 1 :(得分:0)

在以下过程之后问题得以解决。

  1. 重新安装LAMP(instruction video
  2. 修改了apache2.conf文件(instruction
    设置目录/ var / www
  3. 的AllowOverride
  4. 更改/ var / www / html文件夹的权限(instruction1instruction2
  5. 将您的html和php文件放在/ var / www / html文件夹中
  6. 最后,转到http://localhost/contact.html,联系表单可以将消息保存在文本文件中。