フォームのテキストフィールド(index.php)に文字を入力して、内容を改行ごとにリスト化し、その結果(post.php)を、テキストファイル(greeting.txt)に書き出したいです。
■現段階でできていることは以下の通りです。
・フォームのテキストフィールド(index.php)に文字を入力して、内容を改行ごとにリスト化してページに表示。
→本来は表示させません。
・フォームから入力されたテキストをテキストファイルに保存
→リスト(<li>○○○</li>)にしたい。
■現在のソースは以下の通りです(post.php)。
<?php $greeting = str_replace(['\r\n', '\r'], PHP_EOL, $_POST['greeting']); $lines = explode(PHP_EOL, $greeting); foreach( $lines as $line ) { echo "<li>[{$line}]</li>" . PHP_EOL; } $greeting = $_POST['greeting']; $data = $data.$greeting; $greeting_file = 'greeting.txt'; $fp = fopen($greeting_file,'w'); if ($fp){ if (flock($fp, LOCK_EX)){ if (fwrite($fp, $data) === FALSE){ print('ファイル書き込みに失敗しました'); } flock($fp, LOCK_UN); }else{ print('ファイルロックに失敗しました'); } } fclose($fp); ?>
単純にecho "<li>[{$line}]</li>" . PHP_EOL;で出力されたものをechoで表示させず(サンプルにしたものがechoで出力されていたためそのままにしています)、テキストファイルに書き出したいです。
詳しい方、ご教授いただけると大変助かります。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/05/06 07:47