Visualizzazione dei risultati da 1 a 1 su 1

Discussione: Accesso case-sensitive

  1. #1

    Accesso case-sensitive

    Salve,
    ho la tabella utente con Collation utf8_unicode_ci, username= pippo, pass= PaPeriNo.

    e la seguente query per il login
    Codice PHP:
        if (isset($_POST['username']) && isset($_POST['password'])){
            
    $userid mysql_real_escape_string(makeSafe(strtolower(Cleanquery($_POST['username']))));
            
    $pass Cleanquery(mysql_real_escape_string(makeSafe($_POST['password'])));
            if (
    strlen($userid)>&& strlen($pass)>0){
                
    $query "SELECT username,confirm FROM utente WHERE username='$userid' AND password='$pass'";
                
    $result mysql_query($query) or die("Query fallita".mysql_error());
                if (
    mysql_num_rows($result)>0){
                    
    $confirm=mysql_result($result,0,"confirm");
                    if(
    $confirm==1)
                        
    $_SESSION['valid_user'] = $userid;
                    else
                        
    header ("Location: ?page=error&id=unconfirmed");
                }
            }
        } 
    Il problema è che se scrivo come password 'paperino' mi fa fare lo stesso il login, mentre vorrei che fosse case-sensitive.

    Se provo a mettere un echo $pass; prima della query, viene stampata per come la scrivo, quindi penso che ci sia qualcosa che non va con il DB.

    ---EDIT---

    Come immaginavo, ho risolto impostando la collation della colonna password in utf8_bin
    Ultima modifica di frenkytribe; 25-11-2013 a 16:20

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.