Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我想将表单标签中的新数据存储到php文件中?_Php_Forms - Fatal编程技术网

我想将表单标签中的新数据存储到php文件中?

我想将表单标签中的新数据存储到php文件中?,php,forms,Php,Forms,我正在尝试制作一个PHP页面,它将向用户询问三件事。电子邮件、名字和姓氏。我希望将这些数据存储并保存在我的计算机上。现在我正在本地运行XAMPP 当我输入表单标签时,它会重定向。我想保存数据 假设用户(我自己)在电子邮件中加上“John Mayer”这样的名字johnmayer@gmail.com“点击sumbit按钮后,如何将该信息保存在PHP页面上?包含HTML表单的数据输入页面应如下所示: <form action="save-data.php" method="POST">

我正在尝试制作一个PHP页面,它将向用户询问三件事。电子邮件、名字和姓氏。我希望将这些数据存储并保存在我的计算机上。现在我正在本地运行XAMPP

当我输入表单标签时,它会重定向。我想保存数据


假设用户(我自己)在电子邮件中加上“John Mayer”这样的名字johnmayer@gmail.com“点击sumbit按钮后,如何将该信息保存在PHP页面上?

包含HTML表单的数据输入页面应如下所示:

<form action="save-data.php" method="POST">
    <input name="firstname" type="text" />
    <input name="lastname" type="text" />
    <input type="submit" name="submit" value="Save Data">
</form>


现在在名为save-data.PHP的PHP文件中:

<?php
if(isset($_POST['firstname']) && isset($_POST['lastname'])) {
    $data = $_POST['firstname'] . '-' . $_POST['lastname'] . "\n";
    $ret = file_put_contents('/tmp/mydata.txt', $data, FILE_APPEND | LOCK_EX);
    if($ret === false) {
        die('There was an error writing this file');
    }
    else {
        echo "$ret bytes written to file";
    }
}
else {
   die('no post data to process');
}
HTML:

<form action="mailer.php?savedata=1" method="post">
    First Name: <input type="text" name="first_name"><br>
    LastName: <input type="text" name="last_name"><br>
    Your Email: <input type="text" name="email"><br>
<input type="submit" name="submit" value="Submit">
</form>

名字:
姓氏:
您的电子邮件:
PHP:


非常感谢各位。我是在自己写了一些代码之后才发现这一点的

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>HTML</title>
        <meta name="author" content="nelly" />
        <!-- Date: 2016-01-01 -->
    </head>
    <body>
<?php

echo 'Hello' . htmlspecialchars($_POST["first_name"]);

    $input = $_POST["first_name"];
    $handle = fopen("savingData.txt" , "a+");
    $fileName = 'savingData.txt';
    $data = $handle;
    if (is_writable($fileName))
    {
        if (!$handle = fopen($fileName, 'a+'))
        {
            echo "Cannot open file ($fileName)";
            exit; 
        }

        if (fwrite($handle, $input ) === FALSE)
        {
            echo "Cannot write to file name";
            exit;
        }

        echo "Success wrote ($input) to file ($fileName)";

        fclose($handle);
    }

    echo "the file name is not writable?"


?>
    </body>
</html>

HTML

共享您使用的代码在计算机中保存是什么意思?您可以在会话或cookies中保存..我还没有为其编写任何代码。我运行了一个示例,但我在网上找到的示例不起作用。我有一张空白页。我不知道该怎么做才能得到想要的结果。我想将输入保存到计算机上的一个文件中,不在会话中。好的,首先感谢您在这个新年的特殊时刻抽出时间来帮助我,新年快乐!不管是谁,我按照发布的方式运行了您的代码,从Chrome收到了以下错误消息:未定义索引:在第24行的C:\xampp\htdocs\PHP示例表单\testSave.PHP中保存数据:$savedata=$\u请求['savedata'];
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>HTML</title>
        <meta name="author" content="nelly" />
        <!-- Date: 2016-01-01 -->
    </head>
    <body>
<?php

echo 'Hello' . htmlspecialchars($_POST["first_name"]);

    $input = $_POST["first_name"];
    $handle = fopen("savingData.txt" , "a+");
    $fileName = 'savingData.txt';
    $data = $handle;
    if (is_writable($fileName))
    {
        if (!$handle = fopen($fileName, 'a+'))
        {
            echo "Cannot open file ($fileName)";
            exit; 
        }

        if (fwrite($handle, $input ) === FALSE)
        {
            echo "Cannot write to file name";
            exit;
        }

        echo "Success wrote ($input) to file ($fileName)";

        fclose($handle);
    }

    echo "the file name is not writable?"


?>
    </body>
</html>