使用PHP将表单数据保存到文本

时间:2014-01-02 05:13:40

标签: php html forms

我有一个带有电子邮件注册表单的登录页面。我需要将电子邮件地址保存到.txt文件。

我已经有一个php脚本,每次用户在表单中输入数据时都会通过电子邮件发送给我。我想添加该脚本以将相同的数据保存到.txt文件。我不太了解php这样做,每次尝试时都会出错。

这是php文件:

<?php

/* Save file commands */




/* Subject and Email variables */

    $emailSubject = 'Real Family Trips Contest';
    $webmaster = 'my-email@domain.com';


/* Gathering Data Variables */

    $emailField = $_POST['emailaddy'];

    $body = <<<EOD
<br><hr><br>
Email address: $emailField <br>
EOD;

    $headers = "From: $emailField\r\n";
    $headers .= "Content-type: text/html\r\n";
    $success = mail ($webmaster, $emailSubject, $body, $headers);
    header('Location: http://realfamilytrips.com/share-itineraries');
exit();
?>

以下是表格:

<form action="/signup.php" method="post">
    <input type="text" class="field" name="emailaddy" value="Enter your email address" title="Enter your email address" />
    <input type="submit" value="Send" class="send" />
</form>

我不确定我是否需要一个新的.php文件,或者是否可以使用我目前拥有的文件。如果我必须创建一个新文件,action= area?形式的内容感谢您的帮助。

4 个答案:

答案 0 :(得分:0)

$myFile = "email.txt";
$fh = fopen($myFile, 'w') or die("can't open file");
fwrite($fh, $body);
fclose($fh);

答案 1 :(得分:0)

查看file_put_contents

您可以使用它在基于文本的文件中存储您想要的任何内容。

用于您案例的示例如下:

$filename = 'email_list.txt';
file_put_contents($filename, $body, FILE_APPEND);

答案 2 :(得分:0)

<?php
    $output_file = 'myTextFile.txt';
    $textFileData = 'insert data here';
    file_put_contents($output_file, $textFileData);
?>

http://au2.php.net/file_put_contents

答案 3 :(得分:0)

您将多次运行该脚本,希望附加电子邮件地址。所以你需要file_put_contents或fwrite

的特殊选项
file_put_contents("emails.txt", $emailField . "\n", FILE_APPEND);

这将附加到文件的末尾。此外,从脚本中将“\ n”添加到$ emailField的末尾,每行会有一个电子邮件地址。