Ciao a tutti sono nuovo del forum.
Sto inserendo un form mail php in un sito web, ma di php non ne so molto, l'ho trovato in giro per il web. E' una semplice pagina inviamail.php dove vorrei(se possibile) cambiare la location, cioè quando fa il controllo della mail o del nome, se sbagliato non deve aprire un'altra pagina ma darmi un alert javascript tipo "email mancante ecc ecc", e quando invece è tutto giusto un messaggio alert con "grazie"
Vi posto il codice per intero così sicuramente saprete dirmi dove intervenire:
<?php
$email=$_POST['email'];
#######################################
# IMPOSTAZIONI DA CONFIGURARE #
#######################################
//(1) indirizzo email del destinatario del modulo
$destinatario = "tuamail@tuosito.com";
//(2) indirizzo email del mittente, campo FROM
// non toccare se desiderate che l'indirizzo email inserito nel modulo sia
// riportato nel campo DA del messaggio che sarà ricevuto.
// Se invece desiderate un campo fisso annullare la prima riga e abilitare
// la seconda inserendo la dicitura desiderata (per annullare mettere //
// all'inizio della prima riga e per abilitare togliere // dalla seconda riga)
$nome_mittente = "$email";
// $nome_mittente = "Dal Modulo";
//(3) oggetto del messaggio
$oggetto_email = "Modulo inviato dal sito ....";
//(4) se si vogliono rendere tutti i campi NON OBBLIGATORI impostare su "y".
// (valori possibili: "y" e "n")
$all_free = "n";
//(5) se avete messo "n" al punto (4) inserire tra virgolette, separati
// da virgola, i nomi dei campi da rendere OBBLIGATORI
// Esempio: $campi_req = array("nome","telefono","via");
$campi_req = array("nome","email");
//(6) controllo validità del campo email. (valori possibili: "y" e "n")
$obbligo_email = "y";
//(7) obbligare l'utente ad accettare le condizioni.
// (valori possibili: "y" e "n")
$accetta_condizioni = "n";
//(8) URL della pagina di ringraziamento
$pagina_grazie = "http://www.tuo_sito.tld/grazie.htm";
//(9) URL della pagina errore campi vuoti
$pagina_error_empty = "http://www.tuo_sito.tld/errore_campi_vuoti.htm";
//(10) URL della pagina errore email
$pagina_error_email = "http://www.tuo_sito.tld/errore_email.htm";
//(11) URL della pagina errore condizioni non accettate
$pagina_error_condizioni = "http://www.tuo_sito.tld/errore_condizioni.htm";
//(12) URL della pagina errore invio non autorizzato (mancanza di referer)
$pagina_error_referer = "http://www.tuo_sito.tld/errore_referer.htm";
#######################################
# FINE IMPOSTAZIONI DA CONFIGURARE #
#######################################
//ora e data
$ora = date ("H:i:s");
$data = date ("d/m/Y");
//intestazione email che arriva al destinatario
$corpo = "
Modulo inviato il $data alle ore $ora
Riepilogo dati:\n\n";
//============== NON TOCCARE NULLA OLTRE QUESTA RIGA ==================\
########### CODICI ###########
//variabili per rendere lo script compatibile anche con la versione PHP 4.2 e maggiori
if(!isset($_SERVER) OR !$_SERVER OR !is_array($_SERVER) OR count(array_diff($_SERVER, $HTTP_SERVER_VARS))){
$_POST = &$HTTP_POST_VARS;
}
//prende IP ADDRESS
if(isset($_SERVER["HTTP_X_FORWARDED_FOR"])){
if ($_SERVER["HTTP_X_FORWARDED_FOR"] == "") {
$ipnumb = getenv("REMOTE_ADDR");
}else {
$ipnumb = getenv("HTTP_X_FORWARDED_FOR");
}
} else {
$ipnumb = getenv("REMOTE_ADDR");
}
###################################
//controllo referer
if(empty($_SERVER["HTTP_REFERER"])){
header ("Location: $pagina_error_referer");
exit();
}
########### CONTROLLO DEI CAMPI ###########
$control_campi = 0;
if($all_free != "y"){
foreach($_POST as $key => $valore){
if(in_array($key,$campi_req)){
if(trim($valore) == ""){
$control_campi++;
}
}
}
} else {
$control_campi = 0;
}
########### CONTROLLO EMAIL ###########
$control_email = 0;
if($obbligo_email == "y"){
if(isset($_POST['email'])){
if(!eregi("^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9_-])+.)+[a-z]{2,6}$", $_POST['email'])){
$control_email++;
}
} else {
$control_email = 0;
}
}
########### CONTROLLO CONDIZIONI ###########
$control_condizioni = 0;
if($accetta_condizioni == "y"){
if(isset($_POST['trattamento_dati']) && $_POST['trattamento_dati'] == "accetto"){
$control_condizioni = 0;
} else {
$control_condizioni ++;
}
}
########### INVIO EMAIL ###########
if($control_campi == 0){
if($control_email == 0){
if($control_condizioni == 0){
foreach($_POST as $key => $valore){
$key = ucfirst(stripslashes(trim($key)));
$valore = stripslashes(trim($valore));
$key = str_replace("_"," ",$key);
if(trim($valore) == "") $valore = "Non compilato";
$corpo .= $key .": ". $valore ."\n\n";
}
$corpo .= "Numero IP: $ipnumb"."\n";
$corpo .= "_________________________________________________ ___________ \n\n
";
// invio e-mail
// Header Mail
$headmail.="From: $nome_mittente <$nome_mittente>\n";
$headmail.="Return-Path: $nome_mittente\n";
$headmail.="User-Agent: Php Mail Function\n";
$headmail.="X-Accept-Language: en-us, en\n";
$headmail.="MIME-Version: 1.0\n";
$headmail.="X-Priority: 1 (Highest)\n";
$headmail.="Content-Type: text/plain; charset=ISO-8859-1; format=flowed\n";
$headmail.="Content-Transfer-Encoding: 7bit\n";
ini_set('sendmail_from', "$destinatario");
mail("$destinatario", "$oggetto_email", "$corpo", "$headmail");
header ("Location: $pagina_grazie");
} else {
header ("Location: $pagina_error_condizioni");
}
} else {
header ("Location: $pagina_error_email");
}
} else {
header ("Location: $pagina_error_empty");
}
?>
Grazie!!!