我一直在尝试创建一些可以让我的PHP代码 使用文本框从用户获取输入。我想再存储 输入(可能长达7个字符)然后显示它 在列表格式的页面上(例如 1 2 3 )
我已经在这几个小时阅读教程,什么不是,但一切 我发现只显示了fwrite功能,当我试图追加我时 最终删除数据。
如果可能的话,我希望最新的输入显示在列表的顶部。
有人能帮助我吗? 我真的很沮丧,我知道几乎没有PHP ..有点玩耍 有了它,无法弄清楚= /
我在考虑将用户的输入存储在数组中,然后显示数组。 但这对我也不起作用。
答案 0 :(得分:2)
所以你想要一个表格,让用户输入文字,然后显示所有用户输入的所有文字,有点像墙或留言簿。
我假设你已经设法通过在表单提交后查看$_POST
来获取用户的输入。要将其存储在文件中而不覆盖现有文件内容,最简单的方法是使用特殊file_put_contents
标记FILE_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>' ;
像这样开始查看基本操作,然后您可以查看:
答案 1 :(得分:1)
如果他们通过表单提交数据,它将POST到服务器;意思是你可以使用:
<form action="target.php" method="post">
<input type="text" name="username" value="" />
<input type="submit" name="submit value="Submit" />
</form>
用于标记,然后用于PHP(在target.php上):
<?php
if (isset($_POST['submit']) { //to check if the form was submitted
$username= $_POST['username'];
}
?>
此时,您可以在任何想要回显上一页输入数据的地方使用<?php echo $username ?>
。
我也不是PHP专家(我推荐Lynda.com培训视频,“PHP&amp; MySQL Essential Training”和“PHP&amp; MySQL Beyond The Basics”和Kevin Skoglund)但也许这有帮助。
答案 2 :(得分:1)
尝试使用php中的用户输入
$ variablname = fgets(STDIN); echo $ variable;
答案 3 :(得分:0)
file_put_contents('/path/to/file','contents',FILE_APPEND);
答案 4 :(得分:0)
如上所述,您可以使用$_POST
来获取数据,但值得注意的是,如果您实际在Web应用程序中使用此数据,则需要对XSS进行清理。您可以使用PHP的htmlspecialchars()