Torna indietro   AlterVista | Spazio web gratis, hosting free php mysql > L'angolo del webmaster > PHP, MySql e Apache (.htaccess)

Rispondi
 
LinkBack Strumenti discussione Modalità visualizzazione
  #1 (permalink)  
Vecchio 17-03-2010, 11.26.02
Neofita
 
Data registrazione: 24-02-2009
Messaggi: 7
Predefinito [php] NewsLetter

Ciao ho il seguente problema
devo inviare una newsletters a x contatti selezionando il file html da inviare (non in allegato) già presente sul sito. Ho provato in divense maniere ma ricevo una email vuota. Di seguito posto il codice che uso:

---
Codice PHP:
<?php
$page
file_get_contents("http://www.miosito.com/news01.html");
$header "From: Inviante <inviante@email.com>\n";
$header .= "X-Mailer: Il nostro Php\n";
$header .= "MIME-Version: 1.0\n";
$header .= "Content-Type: text/html; charset=\"iso-8859-1\"\n";
$header .= "Content-Transfer-Encoding: 7bit\n\n";

$messaggio "$page";

$subject "Prova messaggio";
if( @
mail("ricevente@email.com"$subject$messaggio$header) ) echo "e-mail inviata con successo!";
else echo 
"errore nell'invio dell'e-mail!";
?>
---
Qualcuno puo' aiutarmi????

Ultima modifica di musicanapoli : 17-03-2010 alle ore 12.54.22 Motivo: Codice racchiuso tra i tags
Rispondi citando
  #2 (permalink)  
Vecchio 17-03-2010, 15.44.05
L'avatar di sevenjeak
AlterGuru
 
Data registrazione: 25-10-2007
Residenza: Roma
Messaggi: 1,459
Invia un messaggio via MSN a sevenjeak Manda un messaggio tramite Skype™ a sevenjeak
Predefinito

La variabile $messaggio ha come contenuto lo stesso valore della variabile $page o è semplicemente una stringa con valore "$page"?

se è la prima ipotesi hai sbagliato, visto che la variabile $messaggio contiene solo la stringa "$page".

In questo caso di consiglio di utilizzare direttamente la variabile $page e di levare quella chiocciola prima della funzione mail.

Prova in questo modo:
Codice PHP:
<?php
$page
file_get_contents("http://www.miosito.com/news01.html");
$header "From: Inviante <inviante@email.com>\n";
$header .= "X-Mailer: Il nostro Php\n";
$header .= "MIME-Version: 1.0\n";
$header .= "Content-Type: text/html; charset=\"iso-8859-1\"\n";
$header .= "Content-Transfer-Encoding: 7bit\n\n";
$subject "Prova messaggio";

if(
mail("ricevente@email.com"$subject$page$header)) {
   echo 
"e-mail inviata con successo!";
}else {
   echo 
"errore nell'invio dell'e-mail!";
}
?>
Lo so che in questo caso le parentesi del'istruzione if ed else possono anche non andare, ma per precauzione e sempre meglio metterle.
__________________


Pc tools - Non solo informatica

Ultima modifica di sevenjeak : 17-03-2010 alle ore 15.47.47
Rispondi citando
  #3 (permalink)  
Vecchio 17-03-2010, 17.09.49
L'avatar di andreafallico
Moderatore
 
Data registrazione: 02-06-2009
Messaggi: 1,870
Predefinito

L'email è vuota perchè file_get_contents funziona solo con url relativi e non assoluti.
Se devi leggere un file remoto devi utilizzare cURL o fsockopen.

Citazione:
Originalmente inviato da zemas Visualizza messaggio
il file html da inviare (non in allegato) già presente sul sito.
Se il file è sul sito, devi fare:
Codice PHP:
$pagefile_get_contents("news01.html"); 

Ultima modifica di andreafallico : 17-03-2010 alle ore 17.15.00
Rispondi citando
  #4 (permalink)  
Vecchio 17-03-2010, 21.07.32
Neofita
 
Data registrazione: 24-02-2009
Messaggi: 7
Predefinito

Grazie sevenjeak ho seguito le modifiche ma purtroppo il risultato non cambia.

Provero' a utilizzare cURL o fsockopen grazie andreafallico.

Non capisco solo una cosa, perchè se provo in locale l'email mi arriva
l'email mi arriva corretta e visualizzo il file scelto??


EDIT
Grazie andreafallico,
risolto grazie alla tua delucidazione

Ultima modifica di musicanapoli : 18-03-2010 alle ore 15.29.42
Rispondi citando
Rispondi

Strumenti discussione
Modalità visualizzazione

Regole di scrittura
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Attivato
Le faccine sono Attivato
Il codice [IMG] è Attivato
Il codice HTML è Disattivato
Trackbacks are Attivato
Pingbacks are Attivato
Refbacks are Disattivato



Tutti gli orari sono GMT +1. Adesso sono le 06.37.11.