Pagina 2 di 2 PrimoPrimo 12
Visualizzazione risultati 31 fino 37 di 37
Like Tree3Likes

Discussione: Autenticazione email - Sendgrid

  1. #31
    provalibe non è connesso Utente giovane
    Data registrazione
    26-12-2018
    Messaggi
    41

    Predefinito

    Ora che l'invio funziona, vorrei abbellire la mail stessa.
    Per far ciò ho pensato a due "metodi", i quali hanno tutti e 2 degli errori, che vorrei risolvere (uno dei 2 basta) grazie al vostro aiuto.


    [1] Aggiungere il testo dell'email con i vari tag in HTML direttamente nella pagina verification.php, nel seguente modo:
    Codice:
    $email->addContent(
              "text/html", "<html>
                              <body>
                                 Contenuti....
                              </body>
                            </html>"
          );
    A quanto pare però non posso fare una cosa del genere: mi viene restituito un messaggio d'errore


    [2] La seconda idea che mi era venuta consisteva nell'inserire il template dell'email in un'altra pagina chiamata email.php. In verification.php avrei fatto la seguente cosa:
    Codice:
    $email->addContent(
              "text/html", file_get_contents("email.php")
    	  );
    Così facendo (di per se sarebbe l'ideale) sorge però un problema che con le mie scarse conoscenze di PHP non sono in grado di risolvere:

    In verification.php, dopo aver inserito i dati per la registrazione, per permettere l'autenticazione dell'account vengono creati dei numeri random (verifyId e code), mediante i quali si può appunto confermare l'account per via mail con l'apertura di un link [verification.php?verifyId=$verifyId&code=$code].

    Il problema sta nel fatto che il link che dovrebbe "contenere" il verifyId e il code si trova in email.php, mentre i due numeri stessi vengono generati in verification.php.

    Come posso "passare" questi due parametri da verification.php a email.php?

    Spero di essermi fatto capire, grazie per una risposta



    Buona giornata :)
    Ultima modifica di provalibe : 07-02-2019 alle ore 17.25.37

  2. #32
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    17,597

    Predefinito

    Per [1], mi sembra strano ti venga restituito un messaggio di errore, cioè a livello di PHP si tratta solo di una stringa: l'errore è lato PHP oppure viene restituito un messaggio da sendGrid diverso da 202? Controlla che nel codice HTML non siano presenti doppi apici che spezzano la stringa.

    Per [2], puoi ripassare i dati tramite GET (oppure ti salvi i dati in variabili di sessione). Per ripassare tramite GET, intendo:
    Codice PHP:
    "text/html"file_get_contents("email.php?verifyId=".$_GET['verifyId']."&code=".$_GET['code']) 
    Quindi, email.php sarà una cosa del tipo:
    Codice PHP:
    if(!isset($_GET['verifyId'], $_GET['code']))
            die(
    'Errore: non ho i parametri GET!');
        
    echo 
    '<html>
    ...
            
    <p> Il codice verifyId è: '
    .$_GET['verifyId'].'</p>
    <p> Il codice code è: '
    .$_GET['code'].'</p>    
    ...
    </html>'

    Ciao!

  3. #33
    provalibe non è connesso Utente giovane
    Data registrazione
    26-12-2018
    Messaggi
    41

    Predefinito

    Prima di tutto ti ringrazio per la cortese risposta.

    Provando a mettere in pratica il metodo con $_GET che hai esposto, mi compare un errore, che ti illustro di seguito:


    https://imgur.com/a/XzmEq9M


    Buona serata!

  4. #34
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    17,597

    Predefinito

    C'è qualche errore, prova prima a farlo stampare con una echo per vedere se funziona, del tipo:
    Codice PHP:
    file_get_contents("email.php?verifyId=".$_GET['verifyId']."&code=".$_GET['code']); 
    Sembra come se non riuscisse ad aprire il file o a non trovarlo.

    Ciao!

  5. #35
    provalibe non è connesso Utente giovane
    Data registrazione
    26-12-2018
    Messaggi
    41

    Predefinito

    In ogni caso, la riga 86 di cui l'errore parla è questa:
    https://imgur.com/a/ocDGI7y

  6. #36
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    17,597

    Predefinito

    Eh sì, perché evidentemente la file_get_contents invece di tornare il contenuto, ritorna false (perché ha qualche problema per leggere il file).

    Comunque, in quel modo leggi il sorgente della pagina. Prova ad accederci "da esterno" impostando tutto l'url, una cosa del tipo:
    Codice PHP:
    file_get_contents("www.tuosito.altervista.org/eventuale_cartella/email.php?verifyId=".$_GET['verifyId']."&code=".$_GET['code']); 
    (ovviamente con la whitelist sbloccata).

    Ciao!

  7. #37
    provalibe non è connesso Utente giovane
    Data registrazione
    26-12-2018
    Messaggi
    41

    Predefinito

    Citazione Originalmente inviato da alemoppo Visualizza messaggio
    Eh sì, perché evidentemente la file_get_contents invece di tornare il contenuto, ritorna false (perché ha qualche problema per leggere il file).

    Comunque, in quel modo leggi il sorgente della pagina. Prova ad accederci "da esterno" impostando tutto l'url, una cosa del tipo:
    Codice PHP:
    file_get_contents("www.tuosito.altervista.org/eventuale_cartella/email.php?verifyId=".$_GET['verifyId']."&code=".$_GET['code']); 
    (ovviamente con la whitelist sbloccata).

    Ciao!
    Ho risolto, grazie!

Pagina 2 di 2 PrimoPrimo 12

Tags for this Thread

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •