Visualizzazione dei risultati da 1 a 9 su 9

Discussione: probelma con login

  1. #1
    Utente bannato L'avatar di payens88
    Registrato dal
    Jun 2010
    Messaggi
    235

    probelma con login

    ciao raga ho un problema con il login.
    se metto un login errato mi segnala che l'utente non esiste e mi fa il redirecta alla pagina iniziale.
    se metto login giusto funziona tutto perfettamente, ma se metto un login vuoto mi segnala che non esiste però poi mi fa il redirect alla pagina iniziale ma me lo da come utente loggato con username vuoto...
    come faccio?
    questa è la pagina iniziale
    codice:
    <?php  session_start(); 
    if(isset($_SESSION['username'])){ 
    $user=$_SESSION['username'];
     $psw=$_SESSION['password']; /* 
     *INSERIAMO I PANNELI PER IL PROFILO PERSONALE  * */ 	 	
    echo "
    ".("<div id=\"menu\"> 		
    <ul class=\"menu\"> 		
    	[*]
    <a href=\"#\" class=\"parent\"><span>$user</span></a> 				<div><ul> 					[*]
    <a href=\"http://localhost/SitoTirocinio/user/ProfiloUser.php\">
    <span>Profilo personale</span></a> 			
    	[*]
    <a href=\"#\"><span>Modifica profilo</span></a> 				
    	[*]
    <a href=\"http://localhost/SitoTirocinio/Autenticazione/Logout.php\">
    <span>Logout</span></a> 			
    	[/list]</div> 
    			 		
    	[*]<a href=\"#\"><span>Ricerca</span></a> 				<div><ul> 					[*]<a href=\"#\"><span>Ultime ricerche</span></a> 	
    			
    	[*]<a href=\"#\"><span>Libri piu' ricercati</span></a> 				[/list]</div> 		
    	[*]<a href=\"#\"><span>Aiuto</span></a> 			
    <li class=\"last\"><a href=\"#\"><span>Contacts</span></a> 	
    	[/list]	
    </div>");
     }
    questa è quella che mi controlla user e psw
    codice:
    <?php $connection=mysql_connect("127.0.0.1","root","") or die("Connessione DB fallita".mysql_error()); 
    mysql_select_db("archivio") or die("Selezione DB fallita".mysql_error()); 
     if (isset($_POST["user"]) && isset($_POST["pass"])){ 
    	$user=($_POST["user"]);     
    $psw=md5($_POST["pass"]); 	
    controller($user, $psw); 	
     } 
     $sql=mysql_close($connection);  
      function controller($ceck1,$ceck2){  
    $query=mysql_query("SELECT count(*) as tot FROM users WHERE username='$ceck1' AND password = '$ceck2'"); 
    $resultset=mysql_fetch_assoc($query); 	
    $prova=$resultset['tot']; 		
    if( $prova==1){ 				
    	echo "Login effettuato"; 				
    	header("Location: http://localhost/SitoTirocinio/PaginaIniziale.php"); 	
    	}else echo "Username e/o password errati"; 	
    	redirect("http://localhost/SitoTirocinio/PaginaIniziale.php",3); 
      } 
     function redirect($url,$tempo = FALSE ){
      if(!headers_sent() && $tempo == FALSE ){ 
      header('Location:' . $url); 
     }elseif(!headers_sent() && $tempo != FALSE ){
       header('Refresh:' . $tempo . ';' . $url); 
     }else{  
     if($tempo == FALSE ){ 
        $tempo = 0;  
     }   echo "<meta http-equiv=\"refresh\" content=\"" . $tempo . ";" . $url . "\">";  
     } 
    }  ?>
     </body> 
    </html> 
    <?php   	
     //Apro la sessione e... 
    session_start();  
     //Salvo i dati...
     $_SESSION['username'] = $user; 
    $_SESSION['password'] = $psw;  
    ?>

  2. #2
    Magari postando la pagina di login piuttosto che quella di destinazione.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3
    Utente bannato L'avatar di payens88
    Registrato dal
    Jun 2010
    Messaggi
    235
    l'ho messa già..

  4. #4
    Utente bannato L'avatar di payens88
    Registrato dal
    Jun 2010
    Messaggi
    235
    nessuno mi può aiutare?

  5. #5
    Utente bannato L'avatar di payens88
    Registrato dal
    Jun 2010
    Messaggi
    235
    il problema è la funzione controller????

  6. #6
    Utente bannato L'avatar di payens88
    Registrato dal
    Jun 2010
    Messaggi
    235
    qualcuno mi può aiutare forse è l'isset che mi crea questo problema??

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    142
    non sono troppo esperto però la struttura per il controllo del login che utilizzo è questa:

    1) eseguo tutti i controlli
    -user pass non vuoti
    -referer
    -protezione contro sql injection
    -caratteri speciali non presenti
    ecc..

    2)
    se tutti i controlli superati {

    tento la connessione, recupero i dati dal db, controllo che siano giusti

    se sono corretti {

    setto le variabili in sessione e redirect alla pagina "okpuoientrare"
    }

    }
    fuori da questi if i dati o non sono stati inviati correttamente o non sei iscritto
    redirect alla pagina "non puoi entrare"


    ** nel tuo script alla fine comunque setti le variabili in sessione
    </body>
    </html>
    <?php
    //Apro la sessione e...
    session_start();
    //Salvo i dati...
    $_SESSION['username'] = $user;
    $_SESSION['password'] = $psw;
    ?>

    penso vada fatto solo nel caso i dati fossero corretti e l'utente presente quindi autenticato

  8. #8
    Utente bannato L'avatar di payens88
    Registrato dal
    Jun 2010
    Messaggi
    235
    grazie per la risposta..
    sono d'accordo sul fatto di mettere le sessioni appena viene verificato correttamente il login, ma ho provato e praticamente mettendo user e psw corretti mi fa il redirect all'home page ma l'utente non viene loggato...

  9. #9
    Utente bannato L'avatar di payens88
    Registrato dal
    Jun 2010
    Messaggi
    235
    problema risolto grazie

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.