php
  • javascript
  • database
  • alert
  • 2013-07-19 102 views 0 likes 
    0

    我知道每個人都會說的第一件事就是這已經發布了數百次;然而,我嘗試了所有不同的方法,人們建議仍然沒有運氣......我試圖得到一個警告消息彈出如果登錄失敗,但由於某種原因,消息不希望出現。這是我到目前爲止:PHP警示訊息

    if($conn) { 
        $result=sqlsrv_query($conn, "SELECT * FROM Operator 
        WHERE Username='{$_POST['login']}'"); 
        $pass=sqlsrv_fetch_array($result); 
        if($pass["Password"] === $_POST['password']) { 
         session_start(); 
         $_SESSION['loggedin']=true; 
         header("Location: home.php"); 
         exit; 
        } 
        else { 
         header("Location: login.php"); 
         echo '<script type="text/javascript">'; 
         echo 'alert("Password Invalid!")'; 
         echo '</script>'; 
        } 
    } 
    sqlsrv_close($conn); 
    

    該php工作正常,但由於某種原因,我無法讓JavaScript的工作。有任何想法嗎?

    +0

    你還可以告訴我們JavaScript不工作嗎?另外,請在瀏覽器開發控制檯中打開網絡選項卡。你的ajax是否經歷過? – Zlatko

    +0

    右鍵單擊並檢查您的文檔,

    1

    在你的代碼header("Location: login.php");之前有你的js代碼,所以它永遠不會執行js代碼它重定向到登錄頁面刪除它並嘗試。

    +0

    當我刪除標題的警報工作,但我怎麼會仍然有重定向到登錄頁面的警告消息出現? – Llama

    +1

    @Llama嘗試在你的「login.php」重定向結尾添加一個查詢字符串,使其看起來像「login.php?status = error」。然後你可以添加一個條件來檢查$ _GET [「status」]並在那裏輸出警報。 – rtimoshenko

    0

    你的代碼在標題後面沒有運行,也許嘗試設置會話變量並在login.php中檢查該變量。然後您可以從那裏調用警報,或者只在頁面上顯示一條簡單的消息。

    0

    有缺少分號右側的警報背後:

    if($conn) { 
        $result=sqlsrv_query($conn, "SELECT * FROM Operator 
        WHERE Username='{$_POST['login']}'"); 
        $pass=sqlsrv_fetch_array($result); 
        if($pass["Password"] === $_POST['password']) { 
         session_start(); 
         $_SESSION['loggedin']=true; 
         header("Location: home.php"); 
         exit; 
        } 
        else { 
         header("Location: login.php"); 
         echo '<script type="text/javascript">'; 
         echo 'alert("Password Invalid!");'; 
         echo '</script>'; 
        } 
    } 
    sqlsrv_close($conn); 
    

    didnt你檢查javscript控制檯?

    編輯:對不起,我的錯,分號當然不是必要的。

    我在您的服務器上測試了您的php代碼,無論如何它都能正常工作!

    +0

    你不需要;那裏... – Llama

    1

    使用此代碼

    echo '<script>'; 
    echo 'alert("Password Invalid!");'; 
    echo 'location.href="login.php"'; 
    echo '</script>'; 
    

    代替

    header("Location: login.php"); 
    echo '<script type="text/javascript">'; 
    echo 'alert("Password Invalid!");'; 
    echo '</script>'; 
    

    感謝。