Visualizzazione risultati 1 fino 3 di 3

Discussione: Errore account non attivato

  1. #1
    Guest

    Predefinito Errore account non attivato

    ragazzi mi servirebbe una mano. ho questo linkche viene inviato via email all'utente che si registra. il link è il seguente:

    Codice PHP:

    $mail
    ->MsgHTML('Grazie di esserti iscritto. <a href="http://utenti/fabio/MegaLaboratorio/attivautente.php?email=' . $_POST['email'] .'">clicca qui per attivare</a></b>'." "."per attviare l'account. Grazie.");
    Questa è la pagina attivautente.php:

    Codice PHP:

    <?php

    require_once("connetti.php");

    //$email = $email;

    $email = $_GET['email'];

    $q = mysql_query("UPDATE utenti WHERE email='email' SET attivo='1'");
    if (
    mysql_query($q)) {
    echo
    "Account attivato....";
    header("Refresh: 3;URL=login2.php");
    } else {
    echo
    "Errore: account non attivato";

    }

    ?>
    Però, il risultato finalne è che mi da sempre errore di attivazione. Mi potete dare qualche suggerimento oppure correggere dove ho sbagliato se ho sbagliato ??? Vi ringrazio infinitamente e espero di ricevere una vostra risposta. Sono giorni che ci combatto senza ottenere niente. Non capisco dove sbaglio: Premetto che l'email di attivazione, arriva e che lavoro su un synology.

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

    Predefinito

    Citazione Originalmente inviato da fabiodefe Visualizza messaggio
    Codice PHP:
    $q = mysql_query("UPDATE utenti WHERE email='email' SET attivo='1'");
    Occhio: 'email' è una stringa... Invece, avresti dovuto mettere $email, facendola prima passare nella mysql_real_escape_string() per evitare sql injection.


    Se stai imparando adesso l'utilizzo di mysql, ti consiglio di iniziar da subito ad usare mysqli, o PDO, in quanto le vecchie funzioni mysql_ diventeranno obsolete.

    Ciao!
    Ultima modifica di alemoppo : 09-10-2012 alle ore 21.07.22

  3. #3
    Guest

    Predefinito Ciao

    Tu dici in questa maniera che dovevo mettere:

    Codice PHP:

    $email
    = mysql_real_escape_string(trim ($_POST['email']));
    oppure in quest'altra maniera:

    Codice PHP:

    $mail
    ->AddAddress($_POST['email']);
    Non so se si può applicare la funzione anche su mail ecc. e aggiungere questa stringa:

    Codice PHP:
    mysql_real_escape_string
    Perchè sennò l'altra c'è su iscrizione.

    Ma se io metto così:

    Codice PHP:

    $mail
    ->AddAddress($_POST['$email']);
    Non invia niente come mai ???? Considera che sta tutto sul synology (nas). Tranne l'editor che adopero è: netbeans 7.2

    Qualche altro consiglio per risolvere il problema con il login ????

    Perdonami, ho letto male. Tu intendevi dire così credo:

    Codice PHP:

    //query originale

    $q = mysql_query("UPDATE utenti WHERE email='email' SET attivo='1'");
    Query corretta spero:

    Codice PHP:

    $q
    = mysql_query("UPDATE utenti WHERE email='$email' SET attivo='1'");
    Correggimi se sbagli.
    Ultima modifica di fabiodefe : 17-10-2012 alle ore 18.15.36

Regole di scrittura

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