Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    Problema con link dentro email

    Ciao!
    sto riscontrando una cosa alquanto strana.
    l'utente si registra mettendo l'email dentro a una input text.
    se la registrazione è andata a buon fine viene inviata l'email al destinatario.

    allora, l'email viene registrata correttamente nel database.
    nel testo dell'email ci metto una cosa del genere:
    Codice PHP:
    $mail->Body .= '[url="http://www.sito.com/att.php?email=' urlencode($_POST['email']) . '"]Click here[/url]'
    il link funziona bene ovunque, tranne che su alcuni pochissimi provider tipo libero.
    vi faccio vedere un esempio di come arriva il link:
    codice:
    GMAIL: Click here
    HOTMAIL: Click here
    LIBERO: Click here
    oppure
    LIBERO: Click here
    se notate il valore che passo in GET in libero è sballato.
    una volta mi si aggiunge un punto esclamativo.
    altre volte mette uno spazio.
    avete una vaga idea del perchè??

    ripeto che succede con pochissimi provider (ad pra solo con libero e con uno aziendale).

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    A parte il problema che stai riscontrando, per fare ciò che vuoi fare tu nel link ci si mette un codice, non l'email dell'utente.

    Alla registrazione dell'utente genera un codice univoco, mettilo nel db assieme ai dati dell'utente e mettilo anche nel link dell'email che invii.
    Il controllo per abilitare l'utente lo farai quindi su questo codice, non sull'email e non avrai nessun problema di cui preoccuparti.

  3. #3
    eh si lo so, ma il db non l'ho fatto io e non so se posso modificarlo.
    quindi supponendo che io non possa modificare il database, come posso risolvere???

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2012
    Messaggi
    37
    E' consigliabile utilizzare un codice univoco come ti ha consigliato Alhazred anche per una questione di sicurezza!

  5. #5
    eh si lo so, ma non dipende solo da me....

    cmq un'altra cosa che mi è venuta in mente è questa (sempre se non posso modificare il db).
    quando il db fa la insert dell'utente mi faccio restituire l'id (che PK e AI quindi univoco) e l'attivazione lo faccio su quello.

  6. #6
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Si, può andare, ma in tal caso forse ci associerei quanche altro dato, per esempio anche solo la parte dell'email prima della chiocciola, o un altro dato a caso tra quelli disponibili, password esclusa ovviamente.

    Questo per evitare che qualcuno si diverta a cambiare il numero nel link ed attivi gente a caso.

  7. #7
    ok però se glipasso il pezzo prima della chiocciola ho di nuovo il problema di prima!!

  8. #8
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Originariamente inviato da fermat
    ok però se glipasso il pezzo prima della chiocciola ho di nuovo il problema di prima!!
    A meno che a dare problemi non sia proprio la chiocciola.
    Ad ogni modo, puoi usare qualsiasi altro dato, anche il numero civico tanto per dire, oppure l'anno di nascita o il cognome... insomma, quello che ti pare, giusto per rendere difficile attivare altri utenti andando solo per tentativi cambiando l'url a caso.

  9. #9
    ho provato a fare così:
    Codice PHP:
    $mail->Body .= '[url="http://www.sito.com/act.php?code=' $lastClie '-' $_POST['nome'] . '"]Click here[/url]'
    il ink è diventato così:
    sempre su libero.
    nessun problema su hotmail.
    in sostanza anche senza email mi ha dato problema

  10. #10
    bho ho fatto un tentativo ulteriore:
    Codice PHP:
    $mail->Body .= '[url="http://www.sito.com/act.php?code=' $lastClie '&id=' uniqid() . '"]Click here[/url]'
    e anche qua compare il punto esclamativo.
    però adesso il link funziona.
    sinceramente non so che pensare....

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.