• User Attivo

    A cosa ti serve un refresh con redirect nel codice:

    
    header("Refresh: 2;  URL=link");
    
    

    Su link c'è l'url della pagina di ritorno.
    Se questo avviene al primo invio dell'email esce dallo script e non salva nulla nel db, inoltre invia solo un'email, cioè la prima che ricava dalla query.
    Modifica in questo modo:

    
    ...
    $mail = new PHPMailer();
    
    while ($row=@mysql_fetch_array ($query)) {
    $mail->AddBCC($row['EMAIL']);
    }
    
    $mail->From     = "[email protected]";
    $mail->FromName = "newsletter";
    ...
    $mail->AddAttachment($_FILES['allegato3']['tmp_name'],$_FILES['allegato3']['name']);
    
    $db2 = @mysql_select_db($database_email,$email);
    ...
    $risultato = mysql_query($messaggio);
    
    $msg_a = "Mail inviata con successo<br />";
    $msg_b = "Si e' verificato un errore nell'invio della mail<br />";
    
    header("Refresh: 5;  URL=link");
    
    if(!$mail->Send())
    	echo $msg_b;
    else
    	echo $msg_a;
    
    

    Ora dovrebbe funzionare.
    Inoltre fa attenzione ad utilizzare header dopo aver fatto echo di qualche cosa, perchè genera errore.


  • User

    Le tue considerazioni sono giuste e ti ringrazio ma il problema persiste..
    cioè se scrivo in mex o mex2 del testo a mano la mail arriva e salva tutto nel db, se copio incollo dell'html esterno la mail arriva ma il db rimane vuoto..
    A questo punto posso provare a cambiare WYSIWYG Editor, giusto per curiosità, e vedere se il problema persiste..
    altro "esperimento" potrebbe essere quello di cambiare server (ormai mi appiglio a tutto :))..


  • User Attivo

    Hai provato ad utilizzare un altro browser?


  • User

    Si certo il problema lo da sia con IE che con Firefox


  • User Attivo

    Prova a fare un echo di tutte le variabili, compresa la query che per inserire il messaggio nel db, poi posta il risultato.
    Forse c'è qualche errore sql con determinati dati contenenti caratteri speciali.


  • User Attivo

    Prova a fare un echo di tutte le variabili, compresa la query che per inserire il messaggio nel db, poi posta il risultato.
    Forse c'è qualche errore sql con determinati dati contenenti caratteri speciali.


  • User

    Mail inviata con successo
    Ecco il testo incollato:
    "ROMA, 2 settembre 2010 - "Annamo a vince". Ecco parte del messaggio che Daniele De Rossi ha spedito a Marco Borriello e che ha contribuito a spostare l'attenzione dell'attaccante da Torino a Roma. Nella conferenza stampa di presentazione, al termine del suo primo allenamento con Ranieri, l'ultimo acquisto giallorosso spiega così la sua scelta: "Rosella Sensi mi ha convinto, ho sentito la passione nelle sue parole. Poi De Rossi mi ha mandato quell'sms bellissimo, ho ancora la pelle d'oca. Mi ha scritto che sarà il miglior momento della mia vita e carriera. Si chiudeva con un annamo a vince"."
    02-09-2010 14:17:59INSERT INTO lista_messaggi(data,oggetto,intestazione,messaggio,messaggio_secondario,messaggio_completo,img1,img2,img3,img4,img5,img6,link1,link2,link3,link4,link5,link6,allegato1,allegato2,allegato3) VALUES('02-09-2010 14:17:59','','','Ecco il testo incollato:
    "ROMA, 2 settembre 2010 - "Annamo a vince". Ecco parte del messaggio che Daniele De Rossi ha spedito a Marco Borriello e che ha contribuito a spostare l'attenzione dell'attaccante da Torino a Roma. Nella conferenza stampa di presentazione, al termine del suo primo allenamento con Ranieri, l'ultimo acquisto giallorosso spiega così la sua scelta: "Rosella Sensi mi ha convinto, ho sentito la passione nelle sue parole. Poi De Rossi mi ha mandato quell'sms bellissimo, ho ancora la pelle d'oca. Mi ha scritto che sarà il miglior momento della mia vita e carriera. Si chiudeva con un annamo a vince"."
    ','','

    qui ho tolto la mail formattata in html
    [CENTER]
    [/CENTER]
    ','images/vuoto.jpg','images/vuoto.jpg','images/vuoto.jpg','images/vuoto.jpg','images/vuoto.jpg','images/vuoto.jpg','','','','','','','upload/','upload/','upload/')


  • User Attivo

    Aggiungi questo è vedi se da errore:

    
    ...
    $risultato = mysql_query($messaggio);
    
    if(!$risultato) {
        die("ERRORE: " . mysql_error());
    }
    
    

  • User Attivo

    Aggiungi questo è vedi se da errore:

    
    ...
    $risultato = mysql_query($messaggio);
    
    if(!$risultato) {
        die("ERRORE: " . mysql_error());
    }
    
    

  • User

    Effettivamente da errore:

    ERRORE: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'venuto il momento che l'Italia si dia una seria politica indust

    e questo quello che ho incollato:
    E' venuto il momento che l'Italia ecc. ecc.


  • User Attivo

    Immaginavo, usa stripslashes() oppure addslashes() sul messaggio che inserisci nel db.


  • User

    Lo avevo già inserito nel codice se vedi prima:

    $mex = stripslashes($_POST['messaggio']);
    $mex2 = stripslashes($_POST['messaggio_secondario']);


  • User Attivo

    Errore mio, ho riletto la documentazione di PHP.
    Devi usare solo addslashes() perche aggiunge lo slashe all'apice, mentre stripslashes() fa il contrario, lo rimuove.
    Quindi nel tuo codice, ogni volta che nella stringa c'è l'apice, viene rimosso l'eventuale slashe generando errore SQL.


  • User Attivo

    Errore mio, ho riletto la documentazione di PHP.
    Devi usare solo addslashes() perche aggiunge lo slashe all'apice, mentre stripslashes() fa il contrario, lo rimuove.
    Quindi nel tuo codice, ogni volta che nella stringa c'è l'apice, viene rimosso l'eventuale slashe generando errore SQL.


  • User

    Effettivamente con addslashes risolve il problema però per motivi di integrazione con fck editor devo usare lo stripslashes prima del $_POST['messaggio'] poiché quando inserisco un url, fckeditor mi inserisce degli escape che non mi fanno funzionare l'href se non li elimino ..
    in realtà dovrei usare sia stripslashes per eliminare gli escape di fck ma allo stesso tempo usare addslashes per risolvere il problema dei caratteri speciali pena il mancato inserimento nel db..
    La struttura cui sto pensando sarebbe questa..
    in $mailBody memorizzo la mail formattata usando stripslashes($_POST['messaggio'])

    poi spedita la mail provvedo a inserire i dati nel db stavolta con addslashes($_POST['messaggio'])..
    cosa ne pensi?


  • User Attivo

    Si va bene come idea.


  • User

    Infatti ora funziona tutto perfettamente..
    grazie tante sups per il supporto e la pazienza 🙂 e se mi dici come fare provvedo a mettere a disposizione di tutti questa newsletter avanzata..


  • User Attivo

    Bene, se vuoi pubblicarlo puoi mettere il codice direttamente qui, oppure in un altro post dove fai vedere il codice che installarlo e configurarlo.

    Ciao! 😉


  • User Attivo

    Bene, se vuoi pubblicarlo puoi mettere il codice direttamente qui, oppure in un altro post dove fai vedere il codice che installarlo e configurarlo.

    Ciao! 😉