Salve,
ho aggiornato il mio sito ed ho testato il relativo nuovo form mail; notando che non mi recapita nulla, sebbene visualizza "Il messaggio è stato spedito correttamente", ho provato con il vecchio form mail, e funziona.
Questa è la situazione:
- pagina contatti001.htm contenente il form mail che richiama mailto001.php --> Funziona.
- pagina contatti002.htm contenente il form mail che richiama mailto002.php --> Non funziona.
Nella pagina contatti001.htm c'è nell'head questo
Codice:
<script language="javascript" type="text/javascript">
function Modulo() {
if ((document.modulo.nome.value == "")) {
alert("Il campo Nome è obbligatorio");
document.modulo.nome.focus();
return false;
}
else if ((document.modulo.email.value == "")) {
alert("Il campo Email è obbligatorio");
document.modulo.email.focus();
return false;
}
else if ((document.modulo.indirizzo.value == "")) {
alert("Il campo Indirizzo è obbligatorio");
document.modulo.indirizzo.focus();
return false;
}
else {
document.modulo.action = "mailto001.php";
document.modulo.submit();
}
}
</script>
Mentre il form mail è introdotto così:
Codice HTML:
<div id="formmail">
<form method="post" name="modulo" action="mailto001.php">
E questo è il mailto001.php:
Codice PHP:
?php
$oggi = date("j F Y G:i");
$sito = "gasweb";
$ip = "$_SERVER[REMOTE_ADDR]";
$browser = "$_SERVER[HTTP_USER_AGENT]";
$to = "miamail@miodominio";
$soggetto = "Contatto per 001 dal $sito";
if(trim($_POST['nome']) == "" OR trim($_POST['email']) == "" OR trim($_POST['indirizzo']) == "") {
echo "<font color=\"#FF0000\" face=\"verdana\" size=\"2\"><strong>Tutti i campi sono obbligatori</strong></font>"; }
else {
$body="Modulo inviato il {$oggi} da {$ip} - {$browser}\n\n";
$body.="Nome: {$_POST['nome']}\nEmail: {$_POST['email']}\nMessaggio: {$_POST['indirizzo']}";
if (mail($to,$soggetto,$body))
echo "Il messaggio è stato spedito correttamente.";
else
echo "Ci sono stati dei problemi nell'invio del messaggio.";
}
?>
La pagina contatti002.htm ha la parte nell'head identica a quella di contatti001.htm a parte il file php richiamato, che è "mailto002.php" anziché "mailto001.php".
Lo stesso dicasi per l'inizio del codice del form mail.
Il mailto002.php è identico al mailto001.php tranne che per la riga:
Codice PHP:
$soggetto = "Contatto per 002 dal $sito";
che è il motivo per cui adotto 2 mailto non riuscendo a farli distinguere diversamente...
Perché il secondo form mail non funziona?
Grazie dell'interessamento.
---
Problema risolto, il form ha compiuto il suo dovere anche se con imbarazzante ritardo! :D