2017-11-23 15 views
-1

私のサーバー側Webアプリケーションはログインできません。ログイン後、ログインページに戻ります。それは、PHPのWebベースのアプリです。Webアプリケーションがデータベースに接続できません

データベースは別のフォルダにありますMysqlFileにはadminlogin資格情報が含まれています。ログインが成功したのindex.phpは、ダッシュボード/master.phpにリダイレクトする必要があります行われた場合

include/config.phpはその

<?php 
$con=mysqli_connect(

/* Host Name */    "localhost", 

/* Data Base User Name */  "[email protected]", 

/* Data Base Password */  "123", 

/* Data Base Name */   "myDbase" 

); 
if($con){ } else { ?> <script>alert("Connection Error try again !!");</script> <?php } ?> 

のように見えます。私はURLにログインしたときに、実際にmaster.phpを示し、

<script> 
    function alertmsg(){ 
     var username=$("#username").val(); 
     var password=$("#password").val(); 
     $.ajax({ 
      type: "POST", 
      url: "include/login.php", 
      data: "username="+ username +"&password="+password, 
      cache: false, 
      beforeSend: function(){ $("#login").val('Connecting...');}, 
      success: function(data){ 
       if(data == "logindone") 
       { 
        window.location="master.php"; 
       } 
       else 
       { 
        document.getElementById("error").innerHTML = "Invalid Username and Password !!! "; 
       } 
      } 
     }); 
    } 
</script> 

index.phpの後、エラーなしで再度ログインするためにはindex.phpに戻ってくる

のthatsは/ login.php、カントが含まれます本当に問題がどこにあるのか見ていますか?

<?php 
session_start(); include("config.php"); $uname=$_POST['Username'];$pass=$_POST['Password']; 
if(isset($uname) && isset($pass)) 
{ 
    $query=mysqli_query($con,"select * from adminlogin WHERE Username='$uname' && Password='$pass' "); 
    $res=mysqli_fetch_array($query); 
    if($res) 
    { 
     $_SESSION['uname']=$res['Username']; 
     echo $con === true ? 'logindone' : 'nothing'; 
    } 
    else 
    { 
     echo "loginfail"; 
    } 
} ?> 

答えて

0

あなたはAjax機能を使用しています。データベースへの接続に失敗すると、Ajax呼び出しの中にJavaScriptのアラートが表示されることはありません。 if文を使用して、Ajax呼び出しで設定したルールに従ってください。

echo $con === true ? 'logindone' : 'nothing'; 

上記のアップデートでは、データベースへの接続が成功すると、Ajax呼び出しでif文が実行されます。

予防策として、error: function()をAjax呼び出しに追加し、適切に処理します。

ヒント:プリペアドステートメントを使用することを忘れないでください... mysqli_bind_param()など

+0

私は、Ajax文の外でlogin.phpにその文をパットしています。私はそれをAjax関数の中に入れなければならないのですか? – red

関連する問題