2015-01-31 3 views
-1

자바 스크립트와 PHP를 사용하여 서명을 확인하는 방법, 이처럼?자바 스크립트와 PHP를 사용하여 서명을 확인하는 방법은?

첫째, 사용자가 입력 username에 데이터를 입력하고 password

만약 username하고 정확한 password, 그것은 경고가 될 것입니다 SUCCESS

그러나 username 또는 잘못된 password, 그것은 경고가 될 것입니다 FAIL

내 코드를 테스트했지만 작동하지 않습니다. 내가 어떻게 할 수 있니?

HTML

<form method="post" action="" ENCTYPE = "multipart/form-data" onsubmit="return checkform(this);" id="sign_in_fid"> 
    <label> 
     Your Username 
    </label> 
    <input type="text" name="username" id="username"> 
    <br> 
    <label> 
     Your Password 
    </label> 
    <input type="password" name="password" id="password"> 
    <br>  
    <br> 
<input name="submit" type="submit" value="Sign in"/> 
</form> 

JAVASCRIPT

<script language="JavaScript" type="text/javascript"> 
function checkform (form) 
{ 
    var username_val = document.getElementById("username").value; 
    var password_val = document.getElementById("password").value;   
</script> 


<?PHP 
    include("connect.php"); 
    $strUsername = "<script>document.writeln(username_val);</script>"; 
    $strPassword = "<script>document.writeln(password_val);</script>"; 

    $sql = "SELECT * FROM av8_users WHERE BINARY username = '$strUsername' and password = '$strPassword'"; 
    $result=mysql_query($sql); 
    $row=mysql_fetch_array($result); 
    $active=$row['active']; 
    $count=mysql_num_rows($result); 
    if($count==1) 
     { 
?> 
      <script> 
      alert("SUCCESS"); 
      </script> 
<?PHP 
     } 
    else 
     { 
?> 
      <script> 
      alert("FAIL"); 
      </script> 
<?PHP 
     } 
?> 
<script> 
return true ; 
} 
</script> 
+1

스크립트가 공격에 매우 취약 변경해보십시오. mysql을 사용하지 말고, mysqli를 사용하고 준비된 구문을 찾아서 사용하십시오. 양식에 게시물 제출 유형을 설정했지만 사용하지는 마십시오. 기본으로 돌아 가야합니다. – DevDonkey

+0

StackReverflow보다는 CodeReview에 넣어야합니다. 코드에는 여러 가지 근본적인 문제가 있습니다. – vog

답변

-1

코드는 PHP 코드 내에서 자바 스크립트를 사용한다 실패 이유. 당신의

$strUsername = "<script>document.writeln(username_val);</script>"; 
$strPassword = "<script>document.writeln(password_val);</script>"; 

으로
$strUsername = $_POST['username']; 
$strPassword = $_POST['password']; 
+0

게시 된 데이터를 사용하기 전에 위생 처리를 시도해야합니다. – DevDonkey

+0

@Matt Holbrook, 맞습니다.하지만 이것은 로버트가 실수 한 것을 나타냅니다. – abbas

관련 문제