AIUTO per configurazione file PHP

  • Creatore Discussione Creatore Discussione volodos
  • Data di inizio Data di inizio
il mio php attuale con le tue modifiche è questo, l'unico problema è che, inserendeo il captcha sbagliato, mi compare la pagina tutta bianca senza il messaggio qui sotto con il comando PRINT


<html>
<head>
<title>Invio richiesta informazioni</title>
</head>
<body>
<?php
session_start();
//*******************************************************************************************
//***********************************RIGHE DA MODIFICARE*************************************
$oggetto = "Richiesta informazioni"; //L'oggetto con cui vuoi che tiarrivi la mail
$indirizzo_dest ="[email protected]"; //L'indirizzo di posta a cui arriveranno i messaggi inviati dal form
//***********************NON MODIFICARE NIENTE AL DI SOTTO DI QUESTA RIGA*********************

$header .="From: <".$_POST['email'].">"; //qsta riga serve per fare in modo che $email sia visto cm mittente
$informazioni = $_POST['informazioni']. "

Nome: ".$_POST['nome']."
Azienda: ".$_POST['azienda']."
Città: ".$_POST['citta']."
Nazione: ".$_POST['nazione']."
E-mail: ".$_POST['email']."
Telefono: ".$_POST['telefono']; //seconda parte dell'header

if ($_SERVER["REQUEST_METHOD"] <> "POST")
die("You can only reach this page by posting from the html form");

if ($_POST["captcha_input"] == $_SESSION["pass"])

if (mail($indirizzo_dest, $oggetto, $informazioni, $header))

{

include 'confcontatti.html';
}
else
{
print("<center><br><br><br><font size='5' color='#FF0000'>Errore invio E-mail, si prega di tornare indietro e riprovare</center></font>");

}

?>
</body>
</html>
 
Ultima modifica:
stessa cosa, anche con il tuo: l'invio con captcha corretto funziona, con captcha errato compare una pagina tutta bianca senza il messaggio di errore del comando PRINT....con il mio postato sopra risultato uguale
 
Il codice si comporta bene. Se il codice è corretto entra nell'if altrimente non fa nulla. Se vuoi un comportamento differente devi modificare l'if o inserire delle parentesi graffe:

PHP:
	if ($_POST["captcha_input"] == $_SESSION["pass"]) {
	
	if (mail($indirizzo_dest, $oggetto, $informazioni, $header))
	
	{
		
		include 'confcontatti.html';
	}
}
	else
	{
		print("<center><br><br><br><font size='5' color='#FF0000'>Errore invio E-mail, si prega di tornare indietro e riprovare</center></font>");
		
	}

in questo modo se il codice è errato visualizza il messaggio di errore, ma non fa nulla in caso l'invio della mail fallisca.
Altrimenti fai una cosa del genere:

PHP:
	if ($_POST["captcha_input"] == $_SESSION["pass"]) {
	
	if (mail($indirizzo_dest, $oggetto, $informazioni, $header))
	
	{
		
		include 'confcontatti.html';
	}
	else
	{
		print("<center><br><br><br><font size='5' color='#FF0000'>Errore invio E-mail, si prega di tornare indietro e riprovare</center></font>");
		
	}
} 
else {
print("<center><br><br><br><font size='5' color='#FF0000'>Codice di controllo errato, si prega di tornare indietro e riprovare</center></font>");
}
 
FUNZIONA !!!
Quindi, se ho ben capito, con il secondo dei 2 esempi, se il codice inserito non è corretto mi esce il messaggio "Codice di controllo errato, si prega di tornare indietro e riprovare", mentre se l'invio della mail fallisce esce "Errore invio E-mail, si prega di tornare indietro e riprovare"....voglio dire, il sistema sceglie in automatico quale dei 2 messaggi mostrare a seconda del problema verificatosi ?

Grazie ancora, sei stato di una cortesia unica !
 
Esatto, nel secondo esempio vi è un primo if che controlla la congruenza del codice inserito. Il caso esso sia errato la condizione risulta falsa per cui si entra nell'else con la conseguente visualizzazione del messaggio di errore relativo al codice errato. Nel caso il codice inserito sia corretto la condizione risulta vera per cui si procede con l'invio della mail. Se l'invio della mail va a buon fine si procede con la pagina riepilogativa altrimenti si visualizza il messaggio relativo all'errato invio della mail.
 
MITICO ! Non so davvero come ringraziarti, ti sei sbattuto non poco per darmi una mano, se sei delle mie parti un caffè è sempre offerto volentieri....di che parte dell'Italia sei ?
 
Io sono un tantino più a nord, ma se passo da quelle parti...volentieri !
Buon lavoro e grazie ancora
 
prova a eliminare le istruzione print sostituendole con

PHP:
echo "<h1>Errore invio E-mail, si prega di tornare indietro e riprovare</h1>";


PHP:
echo "<h1>Codice di controllo errato, si prega di tornare indietro e riprovare</h1>";





per verificare il funzionamento
 
cosa dovrebbe cambiare a livello pratico / funzionale ?
In ogni caso, con quelle 2 stringhe nuove ora compare la pagina con errore 404, sia con captcha corretto che con captcha errato :-)
 
Ultima modifica:

Discussioni simili