繁体   English   中英

从表单获取用户输入,使用php写入文本文件

[英]Get user input from form, write to text file using php

作为订阅者获取的一部分,我希望从html表单中获取用户输入的数据,并使用php将其写入制表符分隔的文本文件。所写的数据需要通过制表符分隔并附加在其他数据下方。

单击表单上的订阅后,我希望它删除表单并在div中显示“感谢订阅”等小消息。

这将在wordpress博客上,并包含在弹出窗口中。

以下是具体细节。 任何帮助深表感谢。

变量/输入是

$Fname = $_POST["Fname"];
$email = $_POST["emailPopin"];
$leader = $_POST["radiobuttonTeamLeader"];
$industry = $_POST["industry"];
$country = $_POST["country"];
$zip = $_POST["zip"];

$ leader是一个双选项单选按钮,其中“是”和“否”为值。

$ country是一个下降的40个左右的国家。

所有其他值都是文本输入。

除了操作之外,我已经完成了所有基本的表单代码并准备就绪,我真正需要知道的是:

如何使用php写入制表符分隔的文本文件,并在提交感谢信息后换出表单?

再次感谢所有的帮助。

// the name of the file you're writing to
$myFile = "data.txt";

// opens the file for appending (file must already exist)
$fh = fopen($myFile, 'a');

// Makes a CSV list of your post data
$comma_delmited_list = implode(",", $_POST) . "\n";

// Write to the file
fwrite($fh, $comma_delmited_list);

// You're done
fclose($fh);

在impode中用\\ t替换标签

以追加模式打开文件

$fp = fopen('./myfile.dat', "a+");

并将所有数据放在那里,标签分开。 最后使用新行。

fwrite($fp, $variable1."\t".$variable2."\t".$variable3."\r\n");

关闭你的文件

fclose($fp);
// format the data
$data = $Fname . "\t" . $email . "\t" . $leader ."\t" . $industry . "\t" . $country . "\t" . $zip;

// write the data to the file
file_put_contents('/path/to/your/file.txt', $data, FILE_APPEND);

// send the user to the new page
header("Location: http://path/to/your/thankyou/page.html");
exit();

通过使用header()函数重定向浏览器,可以避免用户重新加载页面并重新提交数据时出现问题。

这是fwrite()最好的例子,你最多只能使用3个参数,但是附加一个“。” 您可以根据需要使用尽可能多的变量。

if isset($_POST['submit']){
    $Fname = $_POST["Fname"];
    $email = $_POST["emailPopin"];
    $leader = $_POST["radiobuttonTeamLeader"];
    $industry = $_POST["industry"];
    $country = $_POST["country"];
    $zip = $_POST["zip"];

    $openFile = fopen("myfile.ext",'a');
        $data = "\t"."{$Fname}";
        $data .= "\t"."{$email}";
        $data .= "\t"."{$leader}";
        $data .= "\t"."{$industry}";
        $data .= "\t"."{$country}";
        $data .= "\t"."{$zip}";

    fwrite($openFile,$data);
    fclose($openFile);
}

非常非常简单:表单数据将被收集并存储在$ var中,$ var将被写入filename.txt \\ n将添加一个新行。 文件追加禁止覆盖文件

<?php
$var = $_POST['fieldname'];
file_put_contents("filename.txt", $var . "\n", FILE_APPEND);
exit();
?>

换出表单相对容易。 确保将表单的操作设置为同一页面。 只需将表单包装在“if(!isset($ _ POST ['Fname']))”条件中。 在将表单发布到“else {}”部分之后,放置要显示的任何内容。 因此,如果表单已过帐,则会显示“else”子句中的内容; 如果表单未发布,将显示“if(!isset($ _ POST ['Fname']))”的内容,即表单本身。 您不需要其他文件来使其工作。
要在文本文件中写入POSTed值,只需按照上面提到的其他方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM