2017-03-08 2 views
0

주어진 웹 사이트를 개선해야하는 프로젝트가 있습니다. 로그인 페이지에서 두 개의 필드 (Username & 암호)를 가지고 있으며 사용자가 틀린 암호를 입력하면 팝업 창에 오류 메시지를 표시하고 싶습니다. 자바 스크립트에서이 작업을 수행하려고 생각합니다. 코드는 내가 지금까지 가지고 있습니다 :팝업 오류 메시지 표시

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

반향 사용 경고 alert ("Something") – LazyDeveloper

+0

@LazyDeveloper 저는 이것이 PHP 코드라고 생각합니다. 그래서'echo'는 잘 작동하고'alert'는 작동하지 않을 것입니다. – Arun

+0

오 그러면 스크립트 태그를 추가하고 경고를 표시해야합니다. 예 : echo '' – LazyDeveloper

답변

0

자바 스크립트가 필요하지 않습니다. 유효성 검사 서버 측에서 수행하는 경우 내용이 예상대로 보장 될 수 있습니다. 다음과 같은 것을 사용할 수 있습니다. 그런 다음 시간 초과를 설정하여 필요한 경우 상자를 숨 깁니다.

<?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>"; 
    } 
} 
?>