【问题标题】:PHP write post to file not working [closed]PHP将帖子写入文件不起作用[关闭]
【发布时间】:2012-11-19 21:46:54
【问题描述】:

我正在尝试获取一个简单的表单,它将使用 php 写入文件。但是我遇到了一个错误,每当我尝试写入通过帖子获得的值时,它会将“0”写入文件而不是值。

我有如下表格:

<form method="post" action="test.php">
<input type="text" name="user" />
<input type="submit" value="submit"/>
</form>

而 test.php 通过以下方式从表单中获取用户:

$user = $_POST['user'];

我可以很好地在页面上显示$user,并且我也可以使用fwrite 将字符串写入文件。但是每当我fwrite($file,$user) 时,唯一写的就是0。我做错了什么?

【问题讨论】:

  • fwrite($user)?您必须将已创建的句柄传递给函数。
  • 为什么不给我们看一些文件操作代码呢?我们无法在不设置代码的情况下帮助您解决文件输出问题...
  • 你能分享整个代码吗?
  • 好吧,fwrite() 有两个参数,$resource 是文件处理程序,$string 用于写入。你只通过了一个。
  • 试试print_r($_POST);看看你在整个帖子中得到了什么:见stackoverflow.com/questions/7093363/…

标签: php post fwrite


【解决方案1】:

你是否在 fwrite 中丢失了文件句柄,而不是文件

$user = $_POST['user'];
$fh = fopen("file.txt","a");
fwrite($fh,($user."\r\n")); // add newline for next time
fclose($fh);

【讨论】:

  • 这有帮助,我添加新行的语法错误。 :(
  • 让你发疯的总是简单的错误
【解决方案2】:

您也可以简单地使用带有 FILE_APPEND 标志的 file_put_contents:

<?php 
if($_SERVER['REQUEST_METHOD']=='POST'){
    if(!empty($_POST['user'])){
        file_put_contents('file.txt',trim($_POST['user'])."\n",FILE_APPEND);
    }
}
?>

【讨论】:

    猜你喜欢
    • 2023-03-13
    • 2012-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-17
    • 1970-01-01
    • 2013-11-28
    相关资源
    最近更新 更多