Существует файл discovery.html, который ссылается на файл validate_signup.php через действие в html-форме. Когда я нахожусь в validate_signup.php и пытаюсь получить значения с помощью $_POST['XXX'] текстовых полей в форме, а именно regFName, regSName, regEName, regPName, он возвращает ошибку, в которой указывается неопределенный индекс XXX.
Каталог файлов (не уверен, что это может сыграть роль)
Папка -- HTML, PHP и т. д.
HTML-- discovery.html и т. д. PHP -- validate_signup.php и т. д.
Я создаю другой файл html и php, который работает аналогично, и в этом примере это сработало.
HTML ОТ:
<form class = "modal-content animate" onsubmit = "return validate();" action = "../PHP/validate-signup.php" methode = "post">
<div class = "containerL">
<label><b>First name</b></label>
<input type = "text" class = "LoginFromPage" id = "regFName" placeholder = "Enter Frist name" name = "regFName" required>
<label><b>Surname</b></label>
<input type = "text" class = "LoginFromPage" id = "regSName" placeholder = "Enter Surname" name = "regSName" required>
<labelb>Email</b></labelb>
<input type = "text" class = "LoginFromPage" id = "regEName" placeholder = "Enter Email" name = "regEName" required>
<label><b>Password</b></label>
<input type = "password" id = "regPName" placeholder = "Enter Password" name = "regPName"required>
<button type = "submit">Register</button>
<button type = "button" onclick = "document.getElementById('id02').style.display='none'" id = "cancelbtn">Cancel</button>
<div id = "error_para" ></span>
</div>
</form>
PHP:
$password = $_POST["regPName"];
$email = $_POST["regEName"];
$surname = $_POST["regSName"];
$firstname = $_POST["regFName"];
JS-валидация данных
var error = "";
var name = document.getElementById( "regFName" );
if (valPass() == false)
{
error = "Password must contain an UpperCase, LowerCase, Number and Symbol character";
document.getElementById( "error_para" ).innerHTML = error;
return false;
}
var email = document.getElementById( "regEName" );
if ( email.value == "" || email.value.indexOf( "@" ) == -1 )
{
error = " You Have To Write Valid Email Address. ";
document.getElementById( "error_para" ).innerHTML = error;
return false;
}
else
{
return true;
}
Покажите, что делает onsubmit = "return validate();".
Все они возвращают NULL
Я также пробовал это с удалением onsubmit = "return validate();" но результат был тот же



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


правильный method нет methode
<form class = "modal-content animate" onsubmit = "return validate();" action = "../PHP/validate-signup.php" method = "post">
<div class = "containerL">
<label><b>First name</b></label>
<input type = "text" class = "LoginFromPage" id = "regFName" placeholder = "Enter Frist name" name = "regFName" required>
<label><b>Surname</b></label>
<input type = "text" class = "LoginFromPage" id = "regSName" placeholder = "Enter Surname" name = "regSName" required>
<labelb>Email</b></labelb>
<input type = "text" class = "LoginFromPage" id = "regEName" placeholder = "Enter Email" name = "regEName" required>
<label><b>Password</b></label>
<input type = "password" id = "regPName" placeholder = "Enter Password" name = "regPName" required>
<button type = "submit">Register</button>
<button type = "button" onclick = "document.getElementById('id02').style.display='none'" id = "cancelbtn">Cancel</button>
<div id = "error_para"></span>
</div>
</form>
Я просто собираюсь пойти, залезть в клубок и заплакать, я так долго пытался найти проблему, спасибо, теперь это работает!
не могли бы вы попробовать
var_dump($_POST);?