ここで更新する必要があることがいくつかあります。
フォーム要素には異なる名前を付ける必要があるため、PHP サーバー側コードでそれらを区別できます。このようなもの:
<form action="emaillist.php" method="post">
<input type="text" name="email" />
<br />
<br />
<input type="submit" name="emailSubmit" value="submit" />
<br />
</form>
フォーム投稿であることを確認するには、サーバー側のコードを条件付きでラップする必要があります。現在、このページを最初にロードすると、ファイルに書き込まれます。ただし、フォーム データを使用してページに再度投稿するまで、コンテンツはありません。そのため、フォーム投稿かどうかを確認する必要があります。これを行う一般的な方法は、投稿データに送信ボタンがあるかどうかを確認することです。
if (isset($_POST["emailSubmit"])) {
$file = fopen("emaillist.txt","a+");
fwrite($file,$email);
fclose($file);
print_r(error_get_last());
}
確認のために、あなたはPHPが初めてだと言っているので...ファイルがクライアントではなくサーバーに書き込まれることを期待していますよね?
別のページにリダイレクトするには、サーバー側の PHP コードで location ヘッダーを設定するだけです。これは、コンテンツがクライアントに送信される前に行う必要があります。これは事後イベントでのみ発生させたいため、前と同じ条件にする必要があります。
if (isset($_POST["emailSubmit"])) {
$file = fopen("emaillist.txt","a+");
fwrite($file,$email);
fclose($file);
print_r(error_get_last());
header("Location: http://www.yoursite.com/newPage.php") ;
}