2016-03-25 11 views
0

に動作していない私は、ユーザーが既に今日、ログインをしたかどうかを確認するためにきましたが、私が選択SQLおよび配列は、PHPでのログインページでは

<?php 
    SESSION_START(); 
    $database="***"; 
    $nomeserver="***"; 
    $password="***"; 
    $username="***"; 
    $connessione= mysqli_connect($nomeserver, $username, $password); 
     //stringa di connessione 
     if (!$connessione) 
     die ('<script type="text/javascript">alert("Problemi di connessione al server")</script>'); 
     mysqli_set_charset($connessione,'utf8'); 
     if (! mysqli_select_db($connessione,$database)) 
     die ('<script type="text/javascript">alert("Database non raggiungibile")</script>'); 

      if (!empty($_POST)){ 
       $user=$_POST["user"]; 
       $pass=$_POST["psw"];     

       //seleziono livello, id e nome solo se nome e password appartengono allo stesso record 
       $sql= "select id_utente, nome_utente from ut_sec where nome_utente= '$user' and password= '$pass'"; 
       $risultato= mysqli_query($connessione,$sql); 
       $rows = mysqli_num_rows ($risultato); 
       $array=mysqli_fetch_array($risultato,MYSQLI_ASSOC); 
       if (!$risultato) 
        die ('<script type="text/javascript">alert("Errore 01 nella esecuzione della query")</script>'); 
       else 
       { 
        $idut=$array["id_utente"]; 
        $sql= "select MAX(datalogin) from log_sec where idutente= $idut"; 
        $risultato= mysqli_query($connessione,$sql); 
        $riga= mysqli_fetch_array($risultato,MYSQLI_ASSOC); 
        if (!$risultato) 
         die ('<script type="text/javascript">alert("Errore 02 nella esecuzione della query")</script>'); 


        $ultimo=$riga["datalogin"]; 
        date_default_timezone_set('Europe/Rome');        
        $attuale= date("Y-m-d"); 
        if($ultimo==$attuale) 
         die("Gia fatto il login"); 
       } 
      } 
?> 

datalogin最大を選択することはできませんようですテーブル「log_secは」です: log_sec scheme

UPDATE:私は多少の誤差はごifであると考えているPHPスクリプト (私の英語のため申し訳ありませんが、私はイタリア人だ)

+0

データベーススキーマを投稿してください。 – Technoh

+0

それで問題は何ですか? id_utenteとnome_utente –

+0

を選択せず​​、$ connessioneはどのように設定されていますか? –

答えて

0

のすべてのコードを掲載しましたおよびelse st atements。試してみてください:

//seleziono livello, id e nome solo se nome e password appartengono allo stesso record 
    $sql= "select id_utente, nome_utente from ut_sec where nome_utente= '$user' and password= '$pass'"; 
    $risultato= mysqli_query($connessione,$sql); 
    $rows = mysqli_num_rows ($risultato); 
    $array=mysqli_fetch_array($risultato,MYSQLI_ASSOC); 
    if (!$risultato) { 
     die ('<script type="text/javascript">alert("Errore 01 nella esecuzione della query")</script>'); 
    }else{ 
     $idut=$array["id_utente"]; 
     $sql= "select MAX(datalogin) from log_sec where idutente= $idut"; 
     $risultato= mysqli_query($connessione,$sql); 
     $riga= mysqli_fetch_array($risultato,MYSQLI_ASSOC); 
     } 
     if (!$risultato){ 
      die ('<script type="text/javascript">alert("Errore 02 nella esecuzione della query")</script>'); 
     } 


     $ultimo=$riga["datalogin"]; 
     date_default_timezone_set('Europe/Rome');        
     $attuale= date("Y-m-d"); 
     if($ultimo==$attuale){ 
      die("Gia fatto il login"); 
     } 
+0

いいえ、申し訳ありませんが、私はあなたがすべてを見ることができるように、ページのすべてのコードを投稿しました – ale00

+0

ステートメントを修正しましたか? –

+0

私は試しました。問題はこれではない – ale00

関連する問題