Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: confronto password

  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2004
    Messaggi
    376

    confronto password

    devo fare un controllo per cambiare la password.
    La scrivo in un campo di testo e la devo confermare in un altro.
    Ecco:

    if ( trim($_POST['password1']) != '' && trim($_POST['password2']) != trim($_POST['password1']) ) {

    echo "pwd diverse!";
    }

    Se nel campo della conferma ($_POST['password2']) scrivo la stessa password ma con degli spazi all'inizio o alla fine, l'accetta lo stesso!! ovviamente, nella query update prendo il primo campo.

    Inotre, stampando l'array $_POST, effettivamente la seconda password compare con gli spazi.
    Come mai se metto degli spazi all'inizio non la riconosce come pwd differente?

  2. #2
    Perche' nel controllo hai messo trim().

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2004
    Messaggi
    376
    l'ho messo perchè trim() toglie gli spazi: quindi se uno scrive " ciao" viene restituito "ciao"

  4. #4
    Originariamente inviato da LucianoS
    l'ho messo perchè trim() toglie gli spazi: quindi se uno scrive " ciao" viene restituito "ciao"
    Ehm appunto... se tu fai il controllo sulle due password DOPO aver tolto gli spazi, mi sembra evidente che due password che differiscano solo per spazi iniziali e finali vengano viste come uguali

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2004
    Messaggi
    376
    non ti seguo.

    Questa è la password nr1: "mia_password" (senza spazi)
    Questa è la password nr2: "mia_password " (con spazio finale)

    Il controllo che ho messo (con trim) dovrebbe togliere gli spazi dalla password nr2 e farla diventare uguale alla nr1 (che non ha spazi). Ti trovi? invece, ottengo sempre l'errore che le due password sono differenti. È come se trim() non funzionasse

  6. #6

    Re: confronto password

    Mi sembra che tu ti stia contraddicendo:
    Originariamente inviato da LucianoS
    Se nel campo della conferma ($_POST['password2']) scrivo la stessa password ma con degli spazi all'inizio o alla fine, l'accetta lo stesso!!
    Originariamente inviato da LucianoS
    invece, ottengo sempre l'errore che le due password sono differenti.
    ste password te le accetta o no?

  7. #7
    Utente di HTML.it
    Registrato dal
    Aug 2004
    Messaggi
    376
    eccomi,

    con il controlli IF che ho postato prima, le password le accetta anche se sono diverse.

    Per esempio, se la password1 è "prova" (senza spazi) e la password2 è "tentativo " (con lo spazio) le accetta e faccio l'update in tabella.

  8. #8
    Utente di HTML.it
    Registrato dal
    Aug 2004
    Messaggi
    376
    mi sto perdendo in un bicchier d'acqua.
    Inoltre, il post di prima va corretto così:

    con il controlli IF che ho postato prima, le password le accetta anche se sono diverse.

    Per esempio, se la password1 è "prova" (senza spazi) e la password2 è "prova " (con lo spazio) le accetta e faccio l'update in tabella.

  9. #9
    Originariamente inviato da LucianoS
    mi sto perdendo in un bicchier d'acqua.
    Inoltre, il post di prima va corretto così:

    con il controlli IF che ho postato prima, le password le accetta anche se sono diverse.

    Per esempio, se la password1 è "prova" (senza spazi) e la password2 è "prova " (con lo spazio) le accetta e faccio l'update in tabella.
    penso che molto semplicemente non termini lo script in caso di controllo negativo.

    prova cosi':

    Codice PHP:
    if ( trim($_POST['password1']) != '' 
         
    && 
         
    trim($_POST['password2']) != trim($_POST['password1']) ) {

         echo 
    "pwd diverse!";
         exit;

         }  else { echo 
    "pwd uguali! ... continua";   } 

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  10. #10
    Utente di HTML.it
    Registrato dal
    Aug 2004
    Messaggi
    376
    non posso usare exit() nè terminare lo script in alcun modo perchè sotto continua il resto della pagina.
    Secondo me, correggimi se sbaglio, se vuoi fare trim() su un campo password è come voler eliminare un carattere dalla password stessa: se decido che la mi password debba contenere uno spazio, sarò libero di farlo oppure no?
    È come se volessi trimmare la parola "pippo" togliendo la lettera o.

    CHe ne pensi?

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.