我有一个项目,我需要增强一个给定的网站。在登录页面中,我有两个字段(用户名和密码),如果用户输入错误的凭据,则希望在弹出窗口中显示错误消息。想在javascript中执行此操作我现在的代码是:< / p>
if (isset($errors) && !empty($errors)) {
echo '<p id="err_msg">Oops! There was a problem:<br>';
foreach ($errors as $msg) {
echo " - $msg<br>";
}
echo 'Please try again or <a href="register.php">Register</a></p>' ;
}
答案 0 :(得分:0)
你不需要javascript。如果您执行验证服务器端,那么您可以保证内容是预期的。您可以使用以下内容。然后设置超时以在需要时隐藏该框。
<?php
$sError = '';
$sEmail = '';
// if email posted check/validate
if(isset($_POST['Email']) && $_POST['Email'] != ''){
if(valid_email($_POST['Email'])){
$sEmail = $_POST['Email'];
}else{
$sError .= "[InvalidEmail]";
}
}
// if email is blank after validation, add to error string
if($sEmail == '') $sError .= "[Email]";
// then print using php
if($sError !== ''){
if( strpos($sError, '[Email]') !== false ||
strpos($sError, '[Password]' ) !== false
){
echo"<div class=\"statusMessage alert alert-danger\" role=\"alert\"><ul>";
if(strpos($sError, '[Email]') !== false){
echo "<li>Please enter an email address</li>";
}
if(strpos($sError, '[InvalidEmail]') !== false){
echo "<li>Email provided is invalid</li>";
}
echo "</ul></div>";
}
}
?>