0

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. 私は何を間違っていますか?

4

2 に答える 2

3

fwriteで、ファイルではなくファイルハンドルがありませんか

$user = $_POST['user'];
$fh = fopen("file.txt","a");
fwrite($fh,($user."\r\n")); // add newline for next time
fclose($fh);
于 2012-11-19T21:50:44.487 に答える
0

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);
    }
}
?>
于 2012-11-19T21:52:42.363 に答える