PHP:如何从用户那里获取输入、存储并显示?

PHP:如何从用户那里获取输入、存储并显示?,php,html,forms,Php,Html,Forms,我一直在尝试创建一些php代码,让我 使用文本框从用户处获取输入。然后我想去商店 输入(可能有7个字符长),然后显示它 在列表格式的页面上(例如 1. 2. 3. ) 我已经在这里读了几个小时的教程什么的,不是所有的 我发现只显示了fwrite函数,当我尝试追加时,我仍然 最后删除数据 如果可能的话,我希望最新的输入显示在列表的顶部 有人能帮我吗? 我真的很沮丧,我几乎不懂php。。有点胡闹 有了它,我就想不出来了=/ 我正在考虑将用户的输入存储在一个数组中,然后显示该数组。。 但这对我也不起作

我一直在尝试创建一些php代码,让我 使用文本框从用户处获取输入。然后我想去商店 输入(可能有7个字符长),然后显示它 在列表格式的页面上(例如 1. 2. 3. )

我已经在这里读了几个小时的教程什么的,不是所有的 我发现只显示了fwrite函数,当我尝试追加时,我仍然 最后删除数据

如果可能的话,我希望最新的输入显示在列表的顶部

有人能帮我吗? 我真的很沮丧,我几乎不懂php。。有点胡闹 有了它,我就想不出来了=/

我正在考虑将用户的输入存储在一个数组中,然后显示该数组。。
但这对我也不起作用。

如果他们通过表单提交数据,它将发布到服务器;意思是你可以使用:

file_put_contents('/path/to/file','contents',FILE_APPEND);
<form action="target.php" method="post">
     <input type="text" name="username" value="" />
     <input type="submit" name="submit value="Submit" />
</form>


如果他们通过表单提交数据,它将发布到服务器;意思是你可以使用:

<form action="target.php" method="post">
     <input type="text" name="username" value="" />
     <input type="submit" name="submit value="Submit" />
</form>


因此,您需要一个表单,让用户输入文本,然后显示所有用户输入的所有文本,有点像墙或留言簿

我假设您在表单提交后通过查看
$\u POST
获取了用户的输入。要在不覆盖现有文件内容的情况下将其存储在文件中,最简单的方法是使用特殊的
file\u APPEND
标志将其存储在文件中

假设您的HTML表单有一个带有
name=“newData”
的文本框。然后,在表单提交目标脚本中:

//store all user input in a file called data.txt in the current directory
$filename = "./data.txt" ;
$newData = $_POST['newData'] . "\n" ;
file_put_contents($filename, $newData, FILE_APPEND);

//now fetch all data and display it
$lines = file($filename) ; 

echo '<ul>' ;

foreach ($lines as $line) {
    echo "<li>$line</li>" ;
}

echo '</ul>' ;
//将所有用户输入存储在当前目录中名为data.txt的文件中
$filename=“./data.txt”;
$newData=$\u POST['newData']。“\n”;
文件内容($filename、$newData、文件附加);
//现在获取所有数据并显示它
$lines=文件($filename);
回声“
    ”; foreach($line作为$line){ 回声“
  • $line
  • ”; } 回声“
”;
以这样的方式开始,了解基本操作,然后您可以了解:

  • 过滤用户输入,这样您就不会存储和显示任何令人讨厌的内容
  • 将数据文件存储在web根目录之外,以便无法通过浏览器访问
  • 美化输出列表

因此,您希望有一个表单,让用户输入文本,然后显示所有用户输入的所有文本,有点像墙或留言簿

我假设您在表单提交后通过查看
$\u POST
获取了用户的输入。要在不覆盖现有文件内容的情况下将其存储在文件中,最简单的方法是使用特殊的
file\u APPEND
标志将其存储在文件中

假设您的HTML表单有一个带有
name=“newData”
的文本框。然后,在表单提交目标脚本中:

//store all user input in a file called data.txt in the current directory
$filename = "./data.txt" ;
$newData = $_POST['newData'] . "\n" ;
file_put_contents($filename, $newData, FILE_APPEND);

//now fetch all data and display it
$lines = file($filename) ; 

echo '<ul>' ;

foreach ($lines as $line) {
    echo "<li>$line</li>" ;
}

echo '</ul>' ;
//将所有用户输入存储在当前目录中名为data.txt的文件中
$filename=“./data.txt”;
$newData=$\u POST['newData']。“\n”;
文件内容($filename、$newData、文件附加);
//现在获取所有数据并显示它
$lines=文件($filename);
回声“
    ”; foreach($line作为$line){ 回声“
  • $line
  • ”; } 回声“
”;
以这样的方式开始,了解基本操作,然后您可以了解:

  • 过滤用户输入,这样您就不会存储和显示任何令人讨厌的内容
  • 将数据文件存储在web根目录之外,以便无法通过浏览器访问
  • 美化输出列表

如上所述,您可以使用
$\u POST
来获取数据,但是值得注意的是,如果您在web应用程序中实际使用此功能,则需要对其进行清理。您只需使用PHP的

就可以做到这一点。如上所述,您可以使用
$\u POST
来获取数据,但是值得注意的是,如果您在web应用程序中实际使用它,则需要对其进行清理。您只需使用PHP的

就可以做到这一点。在PHP中尝试从用户处获取输入

$variablname=fgets(标准输入法);
echo$变量

在php中尝试从用户获取输入

$variablname=fgets(标准输入法);
echo$变量

非常感谢Fanis!它工作得很好!!关于我应该在哪里做一些研究,或者我应该读些什么来做过滤和其他你建议的事情,你有什么建议吗?想法是你不能相信用户的输入。用户可能想要添加危险的数据,当您在HTML(如您的墙)中显示时,这些数据将运行一些令人讨厌的javascript、窃取其他用户的cookie等。因此,您应该过滤用户输入并转义输出。对于初学者,您应该
$newData=htmlentities($\u POST['newData'])。“\n”
-其中涉及
过滤器输入()
非常感谢Fanis!效果很好!!关于我应该在哪里做一些研究,或者我应该读些什么来做过滤和其他你建议的事情,你有什么建议吗?想法是你不能相信用户输入。当你在HTML中显示时,用户可能想要添加危险的数据(例如你的墙),将运行一些令人讨厌的javascript,窃取其他用户的cookie等。因此,您应该过滤用户输入并转义输出。对于初学者,您应该
$newData=htmlentities($\u POST['newData'])。“\n”
-其中涉及
过滤输入()