同じphpスクリプトを使用している2つのフォームを含むhtmlページを取得しました..
<?php
if ($conn) {
if (isset($_POST['form_student'])) {
if ($_POST['form_student'] == 'Send') {
if (!empty($_POST["Ime"]) && !empty($_POST["Prezime"]) && !empty($_POST["BrojIndeksa"]) && !empty($_POST["TipNastave"])) {
header('Location: forme.html');
echo "<script>alert('Processing data to sql.');</script>";
} else {
echo 'You didnt fill all fields!';
echo "<script>alert('You didn't fill all fields!');</script>";
}
}
}
if (isset($_POST['form_subject'])) {
if ($_POST['form_subject'] == 'Send') {
// same checks just like above with redirecting
// and displaying alert box
}
}
}
?>
最初の問題は、すべてのフィールドに入力しないと機能し、「すべてのフィールドに入力しませんでした!」というメッセージが表示されることです。しかし、警告ボックスのメッセージは表示されず、すべてのフィールドに入力しないと機能しません。そして、そのphpスクリプトページにリダイレクトせずに、実際にphpスクリプトを処理して、htmlページにメッセージボックスを表示するにはどうすればよいのでしょうか。それはajaxやjqueryなしで可能ですか、代わりにhtml拡張子をphpに変更する必要があります。そこですべてのチェックを行い、スクリプトを action="" に処理しないようにしますか?