フォームを送信する前に誰かが入力したかどうかを検証しようとしているテキストエリアがあります。私はすべての検証サーバー側をPHPで実行しています。
私は2つの考えを持っていました。また:
1)フォームを自分自身に送信し、フィールドが同じページで自分自身を検証してから、フォームがデータベースを更新するページにリダイレクトします。私が抱えていた問題は、それ自体に投稿していたため、ページがリダイレクトされると、POST値が無効になったため、それらを使用できなくなったことでした。
2)2ページ目(フォームが最初に投稿するように設定されているページ)で検証を行うだけだと思いました。そのページのコードは次のとおりです。「description」はテキストエリアの名前です。
session_start();
if(!$_POST['description']){
echo "<script>alert(\"Please fill out all fields\");</script>";
header("location:post_job.php");
}
次に、フォームが入力されているページにリダイレクトされます。ただし、このエラーが発生します。
Warning: Cannot modify header information - headers already sent by (output started at siteinfo/site/checkjob.php:4) in siteinfo/site/checkjob.php on line 5
5行目はヘッダー行です(したがって、4行目は明らかにエコー行です)。まだヘッダーを送信していないので、なぜそのエラーが発生するのかわかりません。どんな助けでも大歓迎です。ありがとう!