Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1

    passare ID tramite email

    Ciao a tutti, ho un problemino. Ho un form che l'utente compila, i dati vengono inseriti nel db e viene inviata un'email all'admin con il link alla pagina per poter modificare i dati inseriti dall'utente. L'email, quindi, continee un link alla pagina con la query UPDATE.
    Fin qui tutto bene, il problema è che il link non funziona...
    Ho bisogno che la pagina che si apre nel browser restituisca i dati inseriti da quel preciso utente, ho messo un link del tipo:
    Codice PHP:
    vai alla pagina <a href=\"http://www.miosito/login/conferma.php?id=".$id."&action=edit\"> qui </a> 
    Ma la variabile ID non viene passata. Ho provato a modificare inserendo un'altra variabile, ad esempio l'indirizzo email che viene inserito nella form, e funziona. Perché l'ID no?
    ho messo il codice:
    Codice PHP:
    $email $_POST['email'];
    $password $_POST['password'];
    $id $_POST['id']; 
    ma l'ID se lo perde per strada...
    Grazie a chi potrà e vorrà aiutarmi

  2. #2
    Non viene passata la variabile perchè chiudi il riferimento href:
    Codice PHP:
    <a href=\"http://www.miosito/login/conferma.php?id=".$id."&action=edit\"> qui </a> 
    Prova così:
    Codice PHP:
    <a href=\"http://www.miosito/login/conferma.php?id='.$id.'&action=edit\"> qui </a> 
    Altrimenti prova anche questo:
    Codice PHP:
    <a href=\"http://www.miosito/login/conferma.php?id=$id&action=edit\"> qui </a> 
    Dimmi se funziona.

  3. #3
    Ciao e grazie
    Uhm, non funziona in nessuno dei due modi, con il primo l'indirizzo che visualizza è
    codice:
    http://www.miosito/login/conferma.php?id='..'&action=edit
    mentre con il secondo
    codice:
    http://www.miosito/login/conferma.php?id=&action=edit
    L'ID non viene passato...

  4. #4
    Utente di HTML.it L'avatar di homerbit
    Registrato dal
    Dec 2005
    residenza
    Roma
    Messaggi
    1,380
    scusa ma io non ho capito da dove prendi l'id. Da un campo del form ? se si, hai verificato il suo name?
    fai un dump della variabile $_POST (visto che usi il $_POST), se non vedi l'id hai trovato l'errore.
    O forse vuoi leggerlo con un GET? tipo :

    Codice PHP:
    $id $_GET['id']; 
    If you think your users are idiots, only idiots will use it. DropBox

  5. #5
    L'ID lo prendo dal db. L'utente inserisce dei dati nel db tramite il form, quindi l'id si genera in automatico. Però sospetto anch'io che non si prende l'ID dal db...

    Io ho usato sia POST che GET ma non lo prende... però gli altri dati inseriti li legge, infatti nell'email che arriva all'admin ci sono anche gli altri campi (email e password) e vengono passati correttamente...

  6. #6
    Utente di HTML.it L'avatar di homerbit
    Registrato dal
    Dec 2005
    residenza
    Roma
    Messaggi
    1,380
    Originariamente inviato da kittygirl
    L'ID lo prendo dal db. L'utente inserisce dei dati nel db tramite il form, quindi l'id si genera in automatico.
    bene, come lo leggi? hai controllato l'esito della query
    Originariamente inviato da kittygirl
    Però sospetto anch'io che non si prende l'ID dal db...

    Io ho usato sia POST che GET ma non lo prende... però gli altri dati inseriti li legge,
    questo mi lascia pensare.....

    anch'io sono

    Facciamo ordine:
    1- l'utente compila il form e si registra correttamente
    2- viene letto l'id appena creato
    3- viene inviata la mail con il link contenente l'id del punto 2

    Ora, come leggi l'id?? viene creato correttamente? esite nella table del db? riesci a stamparlo prima di passare al punto 3?
    il link è l'ulltimo dei problemi

    ...altrimenti non ne usciamo
    If you think your users are idiots, only idiots will use it. DropBox

  7. #7
    Originariamente inviato da kittygirl
    codice:
    http://www.miosito/login/conferma.php?id=&action=edit
    L'ID non viene passato...
    Questo mi fà pensare che il campo id sia vuoto, dopo l'invio dei dati prova a stampare il valore $id e fammi sapere cosa trovi scritto, se non ti scrive nulla vuol dire che la variabile è vuota.

  8. #8
    Utente bannato
    Registrato dal
    May 2013
    Messaggi
    6
    fai così, subito dopo l'insert in mysql metti questo codice
    Codice PHP:
    $id mysql_insert_id(); 
    recupera l'ultimo id inserito, oltre a semplificare il tutto senza dover fare un select apposta ti permette di evitare errori del tipo scambio di id per utenti che si registrano quasi contemporaneamente

  9. #9
    Grazia a tutti
    Allora, l'ID nel db c'è, quindi viene creato.
    Ho seguito il suggerimento di Simone inserendo
    Codice PHP:
    $id mysql_insert_id(); 
    subito dopo la query di INSERT e... funziona!
    Il link che arriva sull'email contiene l'id
    Grazieeeee!

  10. #10
    Utente di HTML.it L'avatar di homerbit
    Registrato dal
    Dec 2005
    residenza
    Roma
    Messaggi
    1,380
    praticamente pretendevi di leggere l'id senza una query al db!
    ...come sospettavo
    If you think your users are idiots, only idiots will use it. DropBox

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.