script php che raccoglie form javascript e lo invia tramite mail

stefanolupo75

Nuovo Utente
15 Apr 2010
1
0
0
Buongiorno a tutti, ho bisogno di un aiuto per capire per quale motivo non mi funziona un semplice script php sul server. Il server in questione è "ARUBA", ed il mio spazio web ha un hosting linux ed è configurato per la funzione "php mail". Ho inserito un form html in una pagina del mio sito per raccogliere dati, questo form è processato in locale con javascript, se il modulo è compilato correttamente javascript invia i dati allo script "mail.php" sul server che dovrebbe rispedirmeli formattati alla mia casella di posta. Invece succede che il server mi da un errore quando cerca di eseguire lo script, ma non capisco dove ho sbagliato.
Vi posto la pagina html che al suo interno contiene il form e il javascript, e lo script php che ho sul server:


SCRIPT "MAIL:pHP":

<?php

// L'INDIRIZZO DEL DESTINATARIO DELLA MAIL
$to = "[email protected]";

// IL SOGGETTO DELLA MAIL
$subject = "Modulo proveniente dal sito www.gls-autonoleggio.it";

// COSTRUIAMO IL CORPO DEL MESSAGGIO
$body = "Contenuto del modulo:\n\n";
$body .= "Nome: " . trim(stripslashes($_POST["nome"])) . "\n";
$body .= "Cognome: " . trim(stripslashes($_POST["cognome"])) . "\n";
$body .= "N° persone: " . trim(stripslashes($_POST["persone"])) . "\n";
$body .= "N° bagagl: " . trim(stripslashes($_POST["bagagli"])) . "\n";
$body .= "arrivo: " . trim(stripslashes($_POST["arrivo"])) . "\n";
$body .= "sigla: " . trim(stripslashes($_POST["sigla"])) . "\n";
$body .= "data: " . trim(stripslashes($_POST["data"])) . "\n";
$body .= "ora: " . trim(stripslashes($_POST["ora"])) . "\n";
$body .= "telefono: " . trim(stripslashes($_POST["telefono"])) . "\n";
$body .= "email: " . trim(stripslashes($_POST["email"])) . "\n";
$body .= "destinazione: " . trim(stripslashes($_POST["destinazione"])) . "\n";
$body .= "pagamento: " . trim(stripslashes($_POST["pagamento"])) . "\n";
$body .= "messaggio: " . trim(stripslashes($_POST["firma"])) . "\n";



// INTESTAZIONI SUPPLEMENTARI
$headers = "From: Modulo utenti<[email protected]>";

// INVIO DELLA MAIL
if(@mail($to, $subject, $body, $headers)) { // SE L'INOLTRO È ANDATO A BUON FINE...

echo "La mail è stata inoltrata con successo.";

} else {// ALTRIMENTI...

echo "Si sono verificati dei problemi nell'invio della mail.";

}

?>

FINE SCRIPT PHP.
INIZIO PAGINA HTML CON FORM (HO INSERITO SOLO LA PARTE COL FORM):

<table align="center" border="1">
<form method="post" name="modulo">
<tr>
<td colspan="2" align="center"><b>Registrazione al servizio<br>Tutti i campi sono obbligatori</b></td>
</tr>
<tr>
<td><b>Nome</b></td>
<td><input type="text" name="nome"></td>
</tr>
<tr>
<td><b>Cognome</b></td>
<td><input type="text" name="cognome"></td>
</tr>
<tr>
<td><b>N° persone</b></td>
<td><input type="text" name="persone"></td>
</tr>
<tr>
<td><b>N° bagagli</b></td>
<td><input type="text" name="bagagli"></td>
</tr>
<tr>
<td><b>Arrivo a:</b></td>
<td>
<select name="arrivo">
<option>- Seleziona il luogo di arrivo -</option>
<option value="Fiumicino">Fiumicino </option>
<option value="Ciampino">Ciampino</option>
<option value="Civitavecchia">Civitavecchia</option>
<option value="St. Termini">St. Termini</option>
<option value="Altro">Altro</option>
</select>
</td>
</tr>
<tr>
<td><b>Sigla aereo, nave, treno</b></td>
<td><input type="text" name="sigla"></td>
</tr>
<tr>
<td><b>Data di arrivo (es: 12/04/2010)</b></td>
<td><input type="text" name="data"></td>
</tr>
<tr>
<td><b>presunta ora arrivo</b></td>
<td><input type="text" name="ora"></td>
</tr>

<tr>
<td><b>Telefono (senza spazi nè simboli)</b></td>
<td><input type="text" name="telefono"></td>
</tr>
<tr>
<td><b>Email</b></td>
<td><input type="text" name="email"></td>
</tr>
<tr>
<td><b>Inserire destinazione</b></td>
<td><input type="text" name="destinazione"></td>
</tr>
<tr>
<td><b>Tipo pagamento</b></td>
<td>
<select name="pagamento">
<option value="contanti">Contanti</option>
<option value="cdc">Carta di credito</option>
</select>
</td>
</tr>

<tr>
<td colspan="2" align="center">
<textarea name="firma" rows="5" cols="32">Inserisci messaggio</textarea>
</td>
</tr>
<tr>
<td colspan="2" align="right">
<input type="button" value="Invia" onClick="Modulo()">
</td>
</tr>
</form>
</table>

<script language="javascript">
<!--
function Modulo() {
// Variabili associate ai campi del modulo
var nome = document.modulo.nome.value;
var cognome = document.modulo.cognome.value;
var persone = document.modulo.persone.value;
var bagagli = document.modulo.bagagli.value;
var arrivo = document.modulo.arrivo.options[document.modulo.arrivo.selectedIndex].value;
var sigla = document.modulo.sigla.value;
var data = document.modulo.data.value;
var ora = document.modulo.ora.value;
var telefono = document.modulo.telefono.value;
var email = document.modulo.email.value;
var destinazione = document.modulo.destinazione.value;
var pagamento = document.modulo.pagamento.options[document.modulo.pagamento.selectedIndex].value;
// Espressione regolare dell'email
var email_reg_exp = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/;
//Effettua il controllo sul campo NOME
if ((nome == "") || (nome == "undefined")) {
alert("Il campo Nome è obbligatorio.");
document.modulo.nome.focus();
return false;
}
//Effettua il controllo sul campo COGNOME
else if ((cognome == "") || (cognome == "undefined")) {
alert("Il campo Cognome è obbligatorio.");
document.modulo.cognome.focus();
return false;
}

//Effettua il controllo sul campo PERSONE
else if ((persone == "") || (persone == "undefined")) {
alert("Il campo N° persone è obbligatorio.");
document.modulo.persone.focus();
return false;
}

//Effettua il controllo sul campo BAGAGLI
else if ((bagagli == "") || (bagagli == "undefined")) {
alert("Il campo N° bagagli è obbligatorio.");
document.modulo.bagagli.focus();
return false;
}
//Effettua il controllo sul campo ARRIVO
else if ((arrivo == "") || (arrivo == "undefined")) {
alert("Il campo arrivo è obbligatorio.");
document.modulo.arrivo.focus();
return false;
}

//Effettua il controllo sul campo SIGLA
else if ((sigla == "") || (sigla == "undefined")) {
alert("Il campo sigla è obbligatorio.");
document.modulo.sigla.focus();
return false;
}

//Effettua il controllo sul campo DATA
else if (document.modulo.data.value.substring(2,3) != "/" ||
document.modulo.data.value.substring(5,6) != "/" ||
isNaN(document.modulo.data.value.substring(0,2)) ||
isNaN(document.modulo.data.value.substring(3,5)) ||
isNaN(document.modulo.data.value.substring(6,10))) {
alert("Inserire data arrivo in formato gg/mm/aaaa");
document.modulo.data.value = "";
document.modulo.data.focus();
return false;
}
else if (document.modulo.data.value.substring(0,2) > 31) {
alert("Impossibile utilizzare un valore superiore a 31 per i giorni");
document.modulo.data.select();
return false;
}
else if (document.modulo.data.value.substring(3,5) > 12) {
alert("Impossibile utilizzare un valore superiore a 12 per i mesi");
document.modulo.data.value = "";
document.modulo.data.focus();
return false;
}
else if (document.modulo.data.value.substring(6,10) < 1900) {
alert("Impossibile utilizzare un valore inferiore a 1900 per l'anno");
document.modulo.data.value = "";
document.modulo.data.focus();
return false;
}
//Effettua il controllo sul campo ORA
else if ((ora == "") || (ora == "undefined")) {
alert("Il campo ora è obbligatorio.");
document.modulo.ora.focus();
return false;
}

//Effettua il controllo sul campo TELEFONO
else if ((isNaN(telefono)) || (telefono == "") || (telefono == "undefined")) {
alert("Il campo Telefono è numerico ed obbligatorio.");
document.modulo.telefono.value = "";
document.modulo.telefono.focus();
return false;
}
else if (!email_reg_exp.test(email) || (email == "") || (email == "undefined")) {
alert("Inserire un indirizzo email corretto.");
document.modulo.email.select();
return false;
}

//Effettua il controllo sul campo DESTINAZIONE
else if ((destinazione == "") || (destinazione == "undefined")) {
alert("Il campo destinazione è obbligatorio.");
document.modulo.destinazione.focus();
return false;
}

//Effettua il controllo sul campo TIPO PAGAMENTO
else if ((pagamento == "") || (pagamento == "undefined")) {
alert("Il campo pagamento è obbligatorio.");
document.modulo.pagamento.focus();
return false;
}
//INVIA IL MODULO
else {
document.modulo.action = "./mail.php";
document.modulo.submit();
}
}
//-->
</script>
</div>

</div>

</div>

</body>

</html>

P.S. Potete anche verificare il non funzionamento dello script PHP andando sul mio sito "www.gls-autonoleggio.it", compilando il form nella sezione "prenotazioni" provando ad inviarlo.
 
Discussioni simili
Autore Titolo Forum Risposte Data
T [a pagamento] programmatore PHP che mi aiuti a migrare gli script da vecchia versione PHP a nuova Offerte e Richieste di Lavoro e/o Collaborazione 1
Max 1 [PHP] Script che funziona in locale e non online PHP 16
A [PHP] Script con array con numeri che iniziano per 00 PHP 2
D [PHP] script che invii una mail automatica dopo risposta ad una discussione di un forum PHP 0
Trapano Script php che non va più' con Versione MySQL: 5.6 PHP 5
S Un aiuto su uno script di ricerca avanzata in php che sto verificando. PHP 1
V Script per distanza indirizzi [era: Script Php che non capisco se funzioni !] PHP 2
7 Script php che legge un dato da pagine web e lo confronta con un altro su csv... PHP 2
A Chi è capace? (Integrazione di form mail php in una pagina che sfrutta script .js) PHP 6
G [PHP] Creare script di prenotazione con controllo disponibilità. PHP 7
M Collegamento tra form html e script php PHP 4
felino PHP e script generazione file excel PHP 2
R Primo script in PHP / CSS PHP 4
felino Script PHP per leggere un file JSON. autenticazione? PHP 4
O [PHP] inviare dati da form e script ajax PHP 0
P [PHP] Aggiungere un mio script a prestashop? PHP 10
D [Javascript] inserire uno script in un file php Javascript 6
Gabriele15497514 php testo errato durante la lettura del file txt quando lo script viene eseguito contemporaneamente PHP 3
romeocharly [PHP] Script per rinominare in automatico le immagini inviate da ftp PHP 0
TpD [PHP] Script per organizzazione presenza eventi PHP 3
T interpretare uno script php non fatto da me... PHP 3
O Script PHP e loro visibilità PHP 4
A [PHP] Script Ip camera su altervista senza sottocartelle PHP 6
M [PHP] Problema script ricezione e invio posta... PHP 1
Y Codice AdSense su script php PHP 4
L [PHP] Problema Script 'Not Found' PHP 4
webmachine [PHP] Script per censurare parole PHP 4
C richiamare una funzione in un altro script php PHP 1
M [PHP] Script per controllo disponibilitá negozio in citta PHP 4
B [PHP] hp script creare un utente diminuendo -1 e cosi via PHP 1
Y Modificare script php PHP 5
paloppa [PHP] script importati da internet o da file PHP 24
xone [Vendo] Script gestionale php-mysql gestione pratiche Altri Annunci 0
T mostrare il riultato di uno script php Ajax 2
K Script PHP per leggere array.txt Presentati al Forum 3
Punix [PHP] problema script invio e-mail PHP 2
R pagina html + script php PHP 12
M Script php funziona / non funziona in base all'hosting PHP 21
T [PHP] piccola modifica a script (non mio...) PHP 8
Mauro Guardiani [PHP] script per caricamento video PHP 0
matteoraggi Screenshot da script php PHP 0
F Richiesta script PHP PHP 1
giancadeejay Bloccare utente se non loggato con script php PHP 12
booklisa [PHP] Script nello script PHP 2
H [PHP] Script non vengono eseguiti PHP 2
elpirata [PHP] Script reminder email PHP 11
S Problema con script php-javascript PHP 2
9 inserire contenuto in un file pdf aperto sul browser tramite script php PHP 0
A [PHP] inserire paginazione su script php/mysql PHP 6
R [PHP] [HTML] Creare script invio modulo contatti PHP 2

Discussioni simili