• User

    Questo pezzetto di codice mi sta uccidendo!!

    Ragazzi...perchè questo codice pur semplicissimo non funziona?????

    [php]$l1 = "SELECT email FROM newsletter WHERE id = 1";
    $l2 = "SELECT oggetto FROM newsletter_text WHERE id = 1";
    $l3 = "SELECT text FROM newsletter_text WHERE id = 1";
    $email = mysql_query($l1);
    $oggetto = mysql_query($l2);
    $testo = mysql_query($l3);
    $mittente = "From: Newsletter [email protected] \r\n";
    $agg = "UPDATE newsletter SET now = 1 WHERE email = '$email'";
    if (mysql_query($agg,$db))
    mail($email, $oggetto, $testo, $mittente);
    else
    header('location: google.it');[/php]Il problema è l'email..impostandola a mano funziona, se invece lo prendo dal database non mi funziona...
    Ho provato in tutti i modi, object, array...niente non va
    aiutatemi..

    Grazie

    Simone


  • ModSenior

    Ciao SimyXT,

    Dovresti specificare meglio cosa non funziona.


  • User

    Ciao, in pratica dovrebbe inviare un email e aggiornare il campo now nella riga dell'email selezionata.
    Se l'email viene presa dal database il codice non funziona (credo perchè non prende nulla) invece se io metto una variabile con una email che è contenuta nella tabella il codice funziona..
    La condizione WHERE id della variabile $l1 è solo come esempio...il vero codice dovrebbe essere così..:

    [php]$l1 = "SELECT email FROM newsletter WHERE now = 0 AND confirmed = 1";
    $l2 = "SELECT oggetto FROM newsletter_text WHERE id = 1";
    $l3 = "SELECT text FROM newsletter_text WHERE id = 1";
    $email_text = mysql_query($l1);
    $oggetto = mysql_query($l2);
    $testo = mysql_query($l3);
    $mittente = "From: Newsletter [email protected] \r\n";
    $agg = "UPDATE newsletter SET now = 1 WHERE email = '$email'";
    if (mysql_query($agg,$db))
    mail($email, $oggetto, $testo, $mittente);
    else
    header('location: google.it');[/php]P.S: La risposta dell'if è come esempio

    Ciao


  • User

    Ciao, in pratica dovrebbe inviare un email e aggiornare il campo now nella riga dell'email selezionata.
    Se l'email viene presa dal database il codice non funziona (credo perchè non prende nulla) invece se io metto una variabile con una email che è contenuta nella tabella il codice funziona..
    La condizione WHERE id della variabile $l1 è solo come esempio...il vero codice dovrebbe essere così..:

    [php]$l1 = "SELECT email FROM newsletter WHERE now = 0 AND confirmed = 1";
    $l2 = "SELECT oggetto FROM newsletter_text WHERE id = 1";
    $l3 = "SELECT text FROM newsletter_text WHERE id = 1";
    $email = mysql_query("SELECT email FROM newsletter WHERE id = 1");
    $oggetto = mysql_query($l2);
    $testo = mysql_query($l3);
    $mittente = "From: Newsletter [email protected] \r\n";
    $agg = "UPDATE newsletter SET now = 1 WHERE email = '$email'";
    if (mysql_query($agg,$db))
    mail($email, $oggetto, $testo, $mittente);
    else
    header('location: google.it');[/php]P.S: La risposta dell'if è come esempio

    Ciao

    EDIT: Scusate il doppio post, ma stavo modificando e me ne ha inviato un'altro


  • ModSenior

    [php]
    $l1 = "SELECT email FROM newsletter WHERE now = 0 AND confirmed = 1";
    $l2 = "SELECT oggetto FROM newsletter_text WHERE id = 1";
    $l3 = "SELECT text FROM newsletter_text WHERE id = 1";
    $email_text = mysql_fetch_array(mysql_query("SELECT email FROM newsletter WHERE id = 1"));
    $oggetto = mysql_query($l2);
    $testo = mysql_query($l3);
    $mittente = "From: Newsletter [email protected] \r\n";
    $agg = "UPDATE newsletter SET now = 1 WHERE email = '{$email_text{'email']}'";
    if (mysql_query($agg,$db))
    mail($email_text, $oggetto, $testo, $mittente);
    else
    header('location: google.it');
    [/php]


  • User

    Ok grazie mille...FUNZIONA..xDD

    Sei il mio salvatore...perchè non funziona richiedendo direttamente il valore??


  • ModSenior

    Perchè la query ti restituisce un topo resource non utilizzabile direttamente.


  • User

    Grazie mille thedark..

    Ciao :ciauz:

    Simone


  • ModSenior

    Prego. 😉