2013-02-21 85 views
0

我有這個問題。當我想登錄我的PHP頁面時,它只是清除文本框,沒有別的..我一直試圖解決這個問題,但我找不到解決方案。下面的代碼:登錄頁面保持登錄時清除我的文本框。

<?php 
include_once ("db.php"); 
include_once("session.php"); 

$username=$_POST['uporabnisko']; 
$pass=$_POST['geslo']; 

    if ((!empty($username)) && (!empty($pass))) 
    { 
     $pass=sha1($pass); // zakodiramo geslo 

     /*$query=mysql_query("SELECT username, password FROM users WHERE username='$username' AND password='$pass'"); 
     $username=mysql_real_escape_string($username); 
     $pass=mysql_real_escape_string($pass);*/ 

     $query = sprintf("SELECT username, password FROM users WHERE username = '%s' AND password = '%s'",     
        mysql_real_escape_string($username), mysql_real_escape_string($pass)); 

     $result=mysql_query($query); 

      if(mysql_num_rows($result) == 1) // preveri, če je uporabnik v bazi 
      { 
       $user = mysql_fetch_array($result); 

       $_SESSION['prijavljen'] = 1; 
       $_SESSION['id_user'] = $user['id']; 
       $_SESSION['username'] = $user['username']; 

       echo // preusmeri na index.php 
       ("<SCRIPT LANGUAGE='JavaScript'> 
       window.alert('Uspešna prijava!') 
       window.location.href='index.php' 
       </SCRIPT>"); 
      } 
      else 
      { 
       echo 
       ("<SCRIPT LANGUAGE='JavaScript'> 
       window.alert('Napačno uporabniško ime /geslo..') 
       window.location.href='prijava.php' 
       </SCRIPT>"); 
      } 
    } 
    else 
    { 
     echo 
     ("<SCRIPT LANGUAGE='JavaScript'> 
     window.alert('Niste izpolnili vseh polj!') 
     window.location.href='prijava.php' 
     </SCRIPT>"); 
    } 
?> 

我不知道什麼可能是錯的..

+0

可以在session_start()在這裏失去了?我的意思是我沒有看到session.php中的內容,但是請檢查你的會話是否在你想要的地方處於活動狀態。 – 2013-02-21 08:17:39

回答

0

你缺少;在你的每一個Javascript行之後加上。您需要

echo ("<SCRIPT LANGUAGE='JavaScript'> 
       window.alert('Napačno uporabniško ime /geslo..'); 
       window.location.href='prijava.php'; 
       </SCRIPT>"); 
0

您應該將您的include_once標籤更改爲require_once標籤以確保您的腳本實際上包含在內。

您還應該至少使用mysqli或prepared語句來登錄,以防止SQL注入攻擊。

要重定向頁面,則可以使用頭功能在PHP

$result=mysql_query($query); 

     if(mysql_num_rows($result) == 1) // preveri, če je uporabnik v bazi 
     { 
      $user = mysql_fetch_array($result); 

      $_SESSION['prijavljen'] = 1; 
      $_SESSION['id_user'] = $user['id']; 
      $_SESSION['username'] = $user['username']; 

      header("location:index.php"); 
     } else { 
     echo("Napačno uporabniško ime /geslo.."); 
     header("location:prijava.php"); 
     } 

嘗試這些變化,他們可能會幫助