Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Login non mi distingue minuscolo maiuscolo

    ho creato un script per il login con una chiamata ajax ecco il js

    codice:
    function login()
     { 	
    var user = $("#username").val(); 	
    var pass = $("#pass").val(); 	
    $.ajax( 	{ 		
    type:"POST", 		
    url:"http://localhost/blog/php/azioni.php", 		data:{"azione":"login","username":user,"pass":pass}, 
    success: function(data){ 
    if(data.trim() == "") 				
    location.reload(true); 			
    else 				
        alert(data); 			
    } 
    }); }
    ecco la funzione php

    Codice PHP:
    if( $_REQUEST['azione'] == "login" ) {     $username $_REQUEST["username"];     $password md5($_REQUEST["pass"]);      if(!isset($_SESSION["login"]))     {         session_regenerate_id();         $sql "SELECT * FROM utenti WHERE username = '".$username."' AND password = '".$password."'";         $result mysql_query($sql) or die("Login Errato");         if( mysql_num_rows($result) == )             echo"Login errato";         else         {             $result mysql_fetch_assoc($result);             if( $result['attivo'] == )             {             session_start();             $_SESSION["login"] = $username;             }             else                         {                 $sql "SELECT * FROM utenti where username = '".$username."'";                                 $result mysql_query($sql);                                 $result mysql_fetch_assoc($result);                                 $id $result['id'];                                 $email $result['email'];                                 $codreg $result['codreg'];                                 $oggetto "Attivazione Accaunt";                             $messaggio "Clicca per attivare Accaunt [url]http://localhost/blog/php/azioni.php?azione=conferma&codreg=[/url]".$codreg."&id=".$id;                             $intestazioni "Da: [email]blog@blog.it[/email]";                             mail($email$oggetto$messaggio$intestazioni) or die(mysql_error());                                 echo "Devi prima attivare l'accaunt. Ti verra stata reinviata l'email di conferma";                         }         }     } } 
    quando effettuo il login ad esempio nel database l'usename è Admin io posso fare accesso sia con admin che con Admin quindi non mi fa differenza tra maiuscolo e minuscolo non so come fare

  2. #2
    Prova a modificare la query così:

    Codice PHP:
    ...
    $sql "SELECT * FROM utenti WHERE BINARY username = '".$username."'";
    ... 
    In pratica fai un CAST del campo.

    In genere MySQL non fa distinzione tra maiuscole e minuscole a meno che in fase di creazione del campo della tabella non utilizzi il "collation" adeguato (*_bin: binario case sensitive, *_cs: case sensitive oppure *_ci: case insensitive)
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3
    Grazie funziona alla grande

  4. #4
    Originariamente inviato da satifal
    Prova a modificare la query così:

    Codice PHP:
    ...
    $sql "SELECT * FROM utenti WHERE BINARY username = '".$username."'";
    ... 
    In pratica fai un CAST del campo.

    In genere MySQL non fa distinzione tra maiuscole e minuscole a meno che in fase di creazione del campo della tabella non utilizzi il "collation" adeguato (*_bin: binario case sensitive, *_cs: case sensitive oppure *_ci: case insensitive)
    Non riuscivi mai ad essere gentile
    Vedo che ora ci sei riuscito: questo significa essere gentili: aiutare gli altri. Bravo!

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.