verifica codice

andy2481

Utente Attivo
10 Dic 2012
142
0
0
riuscite voi a vedere l'errore io no


PHP:
<?php
        foreach($_POST as $key=>$value) $_POST[$key] = htmlspecialchars($value);  
	$colore_sfondo="#82C0FF";
	$colore_testo="#FFFF80";
	$font="verdana";
	$font_size=2;
	$nome  = "MIME-Version: 1.0\r\n";
	$nome .= "Content-type: text/html; charset=iso-8859-1\r\n";
	//intestazioni per il mittente
	$nome .= "From: Papillon-Events<www.papillon-events.it>\r\n";
	$testo="<html><head><title>Papillon-Events E.mail</title></head><body bgcolor=\"" . $colore_sfondo . "\">"; //non occorre specificare attributi per il tag title, tuttavia li inseriamo per correttezza. Tenete presente che potete inserire style.
	$testo.="<font face=\"sans-serif, Arial, Verdana" . $font . "\" size=\"12" . $font_size . "\" colore=\"#0000FF" . $colore_testo . "\">Questa email ti è stata inviata dal sito.<br> L'utente  " . $_POST['nome'] . " $_POST['testo'] . " (a cui puoi rispondere a: <a href=\"mailto:" . $_POST['email'] . "\">" . $_POST['email'] . "</a>), <br>Ti ha scritto: " . $_POST['commento'] . "</font>";
	$commento.="</body></html>";
	if($email==""){
         echo "Non hai inserito la tua email";
	} elseif($testo==""){
		echo " Non hai inserito il motivo del contatto";
		} elseif($commento==""){
		echo " Non hai inserito il commento";
		} elseif($commento==""){
		echo " Non hai inserito il commento";
		}
                  else{
	mail( "[email protected]", "Invio email da: " . $_POST['nome'] . " $_POST['testo'] . " $_POST['commento'] . " $_POST['email'], );
	echo " la tua email è stata inviata";
	}
?>
 
ciao
così a naso.
ma se guardi le ultime righe vedi che le istruzioni php prima erano di colore verde echo poi ad un certo punto diventano echo verifica gli apici

edit
se l'errore non è quello dicci quale errore ti da
 
qui la sintassi è errata
PHP:
 L'utente  " . $_POST['nome'] . " $_POST['testo'] . "
corretta
PHP:
 L'utente  " . $_POST['nome'] . " " .$_POST['testo'] . "
qui poi stavi pensando completamente ad altro
PHP:
mail( "[email protected]", "Invio email da: " . $_POST['nome'] . " $_POST['testo'] . " $_POST['commento'] . " $_POST['email'], );
corretta
PHP:
mail( "[email protected]", "Invio email da: " . $_POST['nome'] . " " . $_POST['testo'] . " " . $_POST['commento'] . " " . $_POST['email']);
 
errore

salve! l'errore non me lo da piu
mi dice email inviata
ma non arriva all'inidirizzo di posta
quale puo essere il poblema grazie
 
ciao
guardando meglio secondo me sta facendo un po' di caos com mail(), la sintassi è
mail ( string $to , string $subject , string $message [, string $additional_headers [, string $additional_parameters ]] )
nel tuo caso
PHP:
<?php
//....
$headers  = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1" . "\r\n";
$headers .= "From: Papillon-Events<www.papillon-events.it>\r\n";
$testo="<html><head><title>Papillon-Events E.mail</title>..eccetera....";
$testo.="</body></html>";
$oggetto="Invio email da: " . htmlspecialchars($_POST['nome']);
//...
if(mail("[email protected]",$oggetto,$testo,$headers){
	echo "emil inviata";
}else{
	echo "errore di trasmissione, riprova più tardi";
}
//....
?>
poi fai dei controlli (che andrebbero fatti prima di rempire il tutto) ma es
PHP:
} elseif($testo==""){
        echo " Non hai inserito il motivo del contatto";
non ti darà mai errore perche rima hai messo
$testo="<html><head><title>Papillon-Events E.mail</title>......
quindi non sarà mai vuoto (anche se l'utente non ha riempito $_POST['commento'])
non basta poi verificare se $email è vuoto perche l'utente potrebbe inserire pinco_pallo che non è un indirizzo email

riguarda e parti da capo
 
problema

Come mai non su altervista invio l'email e su aruba non va che posso fare sapete aruba informazioni zero
 

Discussioni simili