Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    75

    Nascondere passaggio variabili nell'url

    Ciao a tutti,

    come da titolo vorrei sapere se è possibile passare in un qualche modo nascosto delle variabili tramite url. Mi vedo costretto a passarle per forza di cose nell'url (e non ad esempio tramite il metodo $_POST) perchè invio tramite email il link di conferma all'utente e quindi deve contenere tutte le informazioni.
    Potrei ad esempio crittografarle in qualche modo?

    Grazie

  2. #2
    è troppo generico quello che chiedi.
    dipende dalla "gestione" della variabile GET.

    Cosa devi mettere come variabile GET? come lo "generi"? come lo "filtri"?

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    75
    Provo a spiegarmi meglio...

    io invio all'utente un'email con un link di conferma. Quando lui cliccherà su questo link dovrò registrare un record nel db. Per questo motivo ora il link lo ho nel tipo
    codice:
    http://www.miosito.it/pagina_di_controllo.php?a=$var1&b=$var2&c=$var3
    In pagina_di_controllo.php utilizzo $_GET['varx'] per recuperare i dati e fare l'inserimento nel db.
    Chiaramente però non vorrei che il tutto avvenisse in chiaro. C'è un modo per nasconderlo? O un procedimento alternativo?

    Spero di essere stato chiaro.

    Grazie

  4. #4
    Potresti fare una cosa più semplice, salvare i dati dell'utente nel DB ed associarli ad una chiave generata ed inviare solo quest'ultima come parametro nell'URL. Qualdo l'utente clicca sull'URL recuperi la chiave a lui associata e tramite questa recuperi i suio dati dal DB.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  5. #5
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    e a cosa servirebbe tutto questo?

  6. #6
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    Originariamente inviato da satifal
    Potresti fare una cosa più semplice, salvare i dati dell'utente nel DB ed associarli ad una chiave generata ed inviare solo quest'ultima come parametro nell'URL. Qualdo l'utente clicca sull'URL recuperi la chiave a lui associata e tramite questa recuperi i suio dati dal DB.
    ah io pensavo che gia facesse una cosa del genere

  7. #7
    Originariamente inviato da bstefano79
    ah io pensavo che gia facesse una cosa del genere
    Io avevo capito che inviasse dati sensibili sull'URL.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  8. #8
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    Originariamente inviato da satifal
    Io avevo capito che inviasse dati sensibili sull'URL.
    si rileggendo meglio credo tu abbia ragione, quindi la soluzione è quella
    io mi ero fatto tutto un viaggio di idee su qulacuno che poteva intercettare l'email etc etc

  9. #9
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    75
    Originariamente inviato da satifal
    Potresti fare una cosa più semplice, salvare i dati dell'utente nel DB ed associarli ad una chiave generata ed inviare solo quest'ultima come parametro nell'URL. Qualdo l'utente clicca sull'URL recuperi la chiave a lui associata e tramite questa recuperi i suio dati dal DB.
    Avevo pensato a una cosa del genere però il link che io mando via email dopo 48 ore scade e non dovrà funzionare più. Quindi pensavo di essere obbligato a inserire nell'url l'ora di quando è stata inviata l'email in modo che quando l'utente clicca il link il sistema possa fare la differenza tra l'ora presente nell'url e quella attuale.
    Non vedevo altre soluzione se non questa...

  10. #10
    credo che tu abbia progettato in malo modo l'applicativo...
    generalmente le registrazioni con conferam si basano su due tabelle mysql:
    1) la prima contiene (chiamiamola tabella "utenti"), oltre che tutti i campi dedicati alle info da conservare (username, password, email, etc.), avrà un campo che possiamo chiamare "convalida" che può assumere valori di natura boleana (0/1, TRUE/FALSE, etc.).
    2) la seconda tabella ("convalida_registrazione") conterrà un campo relazionato con la tabella "utenti" in base all'id, e un campo al cui interno salvi stringhe casuali univoche.

    Al momento della registrazione tramite un form nel tuo sito dovrai:
    - inserire il record nella tabella "utenti" e nel campo convalida metti 0 (zero);
    - generare una stringa random e salvarla nella tabella "convalida_registrazione" unitamente con l'id della tabella "utenti" dell'utente che si è appena registrato;
    - la stringa random di cui sopra la invii come variabile GET in un link all'interno della email che invierai

    Al momento in cui l'utente punterà sul link con la variabile GET fara una SELECT sulla tabella "conferma_registrazione" e se viene individuato un record e quindi l'id relazionato alla tabella "utenti" esegui l'UPDATE del campo "convalida" della tabella "utenti" trasformandolo ad 1.

    Sono sicuro di non essere stato chiarissimo...

    EDIT:
    se ti interessa fissare un limite di 48 ore puoi creare nella tabella "convalida_registrazione" un campo in cui salvi il TIMESTAMP e la SELECT che effettui gli poni come condizione quella delle 48 ore

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.