안녕하세요 저는 HTML 형식을 가지고 있습니다. 자바 스크립트로 입력 필드의 유효성을 검사하고 모두 사실이면 데이터베이스에 양식 입력 필드를 추가하는 PHP 함수를 호출하고 싶습니다. 양식에 onsubmit
태그를 추가했지만 PHP 함수는 어느쪽으로 든 호출됩니다. 여기에 지금까지 한 일이다자바 스크립트 유효성 검사 후 PHP 함수 호출
signup.php 현재 매번
<body>
<form method="post" action="student_signup.php" onsubmit="return validateForm()">
<table>
<tr>
<td> Όνομα:</td>
<td><input type="text" name="name" id="name" onblur="validateName('name')"> </td>
<td><span id="nameError" style="display: none;"></span> <td>
</tr>
<tr>
<td> Επώνυμο:</td>
<td><input type="text" name="surname" id="surname" onblur="validateName('surname')"> </td>
<td><span id="surnameError" style="display: none;"></span> <td>
</tr>
<tr>
<td> Username:</td>
<td><input type="text" name="username" id="username" onblur="validateName('username')"> </td>
<td><span id="usernameError" style="display: none;"></span> <td>
</tr>
<tr>
<td> Κωδικός:</td>
<td><input type="password" name="password" id="password" onblur="validatePassword('password')" > </td>
<td><span id="passwordError" style="display: none;"></span> <td>
</tr>
<tr>
<td> Επαλήθευση κωδικού:</td>
<td><input type="password" name="passwordConfirm" id="passwordConfirm" onblur="validateConfirmPassword('password','passwordConfirm')"> </td>
<td><span id="passwordConfirmError" style="display: none;"></span> <td>
</tr>
</form>
</table>
.
.
.
.
</body>
<php?
if($_SERVER['REQUEST_METHOD']=='POST')
{
echo "adding to database";
foo();
}
php>
validate.js
function validateForm() {
var error = 0;
if (!validateName('name')) {
document.getElementById('nameError').style.display = "block";
error++;
}
if (!validateEmail('password')) {
document.getElementById('emailError').style.display = "block";
error++;
}
alert(error);
if (error > 0) {
return false;
}
}
alertbox 인쇄 비록 문이 경우 인쇄의 메시지 "2 ". 그래서 자바 스크립트 함수의 반환을 확인하고 그에 따라 PHP 함수를 호출 할 수 있나요? 아니면 서버 쪽에서 유효성 검사를해야합니까? 사용자가 무언가를 입력 할 때마다 기능이 트리거되고 오류가 포함 된 메시지가 입력 필드 옆에 인쇄됩니다. 서버 측에서 유효성 검사를 수행하면 이는 유용하지 않습니다. 클라이언트와 서버 양쪽에서 유효성 검사를 수행하는 것이 좋은 방법입니까? thx 사전에!
질문을 읽는 중이고 불행히도 요점을 얻을 수 없습니다. :) [answer] (http://stackoverflow.com/questions/24687208/php-form-submits-before -javascript-validation/24687243 # 24687243) 도움이 될 수도 있습니다. 그렇지 않은 경우 마지막 단락을 명확히하십시오. – hex494D49
항상 유효성 검사를 수행하십시오. 서버 쪽에서 클라이언트 쪽을 수행하는 것은 사용자에게 단지 납득할 만합니다. 자바 스크립트 유효성 검사를 둘러 보는 것은 매우 쉽습니다. 내가 그것을하고 싶은 방식은 모든 서버 측의 유효성을 검사 한 다음 ajax를 사용하여 검증을 위해 데이터를 보내는 것이다. 그렇게하면 코드를 2 번 코딩 할 필요가 없으며 둘 사이에는 차이가 없습니다. – ArtisticPhoenix
@ArtisiticPhoenix 현재 각 입력 항목에 onblur 태그가 있으므로 사용자가 올바르게 입력하지 않으면주의해야합니다. 서버 측에서 이렇게하면 쓸모가 없습니다. 클라이언트 측과 서버 측 모두에게해야합니까? – JmRag