invio mail in unico script

atonyc

Utente Attivo
10 Dic 2008
67
0
0
Ciao a tutti, avrei necessità di unire due script per invio mail in un'unica pagina php, quello che vi posto è strutturato in una pagina form che manda i dati a un'altra pagina per l'invio della mail, come devo fare per unirli in un'unica pagina php?


From.php
Codice:
<html>
<body>
<form method="get" action="send.php">
Il tuo nome <input type="text" name="nomemittente"><br>
La tua e-mail <input type="text" name="emailmittente"><br>
Il nome del destinatario <input type="text" name="nomedestinatario"><br>
L'email del destinatario <input type="text" name="emaildestinatario"><br>
Cosa vuoi dirgli<br>
<textarea name="commenti" rows="7" cols="70"></textarea><br>
<input type="submit" value="Invia"> <input type="reset" value="cancella">
</form>
</body>
</html>




send.php
Codice:
<?php

if(!$risultato = ereg("^[^@ ]+@[^@ ]+\.[^@ \.]+$", $emaildestinatario)){
echo " Questa $emaildestinatario non è una email valida";
}else{ 
$messaggio=""; 
$messaggio .="Ciao <b>$nomedestinatario!!$nomemittente Ti ha mandato una email dal sito www.giorgiotave.it "; 
$destinatario= "$emaildestinatario";
$oggetto="Modulo inviato dal sito www.giorgiotave.it";
$intestazioni="From: $nomemittente<>\n";
$messaggio.="\n Ecco cosa ti ha scritto:\n $commenti";
$intestazioni.="Reply-To: $emailmittente";
mail($destinatario,$oggetto,$messaggio,$intestazioni);
echo "ecco cosa hai mandato<br>$messaggio";
echo "<br><a href=\"http://www.giorgiotave.it\">Torna alla Home</a>";
}
?>
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
non è difficile
copia sopra il form (metti il nome al pulsante di invio)
<form method="get" action="send.php">

la parte php mettendo un if per verificare l'invio

PHP:
<?php
if(isset($_POST['invio']){
//ec........
}
?>
<form method="get" action="send.php">
ecc.....
</form>

ti conviene poi (così non hai problemi nel nome della pagina) mettere

<form method="get" action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>">

dimenticavo: ricordati che la pagina deve essere salvata con l'estensione .php e non .html
 

atonyc

Utente Attivo
10 Dic 2008
67
0
0
riesci a mettermi giù il codice purtroppo non sono una cima, ti ringrazio
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
ecco qui brutalmente lo script.

PHP:
<?php
if(isset($_POST['invia'])){
	$tuo_nome=strip_tags($_POST['nomemittente']);
	$tua_email=strip_tags($_POST['emailmittente']);
	$destinatario=strip_tags($_POST['nomedestinatario']);
	$email_destinatario=strip_tags($_POST['emaildestinatario']);
	$testo=strip_tags($_POST['commenti']);
	if(!$risultato = ereg("^[^@ ]+@[^@ ]+\.[^@ \.]+$", $emaildestinatario)){
		echo "Questa $emaildestinatario non è una email valida";
	}else{
		$messaggio ="Ciao <b>$nomedestinatario!!$nomemittente </b>Ti ha mandato una email dal sito www.giorgiotave.it "; 
		$destinatario= "$emaildestinatario";
		$oggetto="Modulo inviato dal sito www.giorgiotave.it";
		$intestazioni="From: <$nomemittente>\n";
		$messaggio.="\n Ecco cosa ti ha scritto:\n $commenti";
		$intestazioni.="Reply-To: $emailmittente";
		if(mail($destinatario,$oggetto,$messaggio,$intestazioni)){
			echo "ecco cosa hai mandato<br>$messaggio";
			echo "<br><a href=\"http://www.giorgiotave.it\">Torna alla Home</a>";
		}else{
			echo "errore di trasmissione: riprova più tardi";
		}//fine if-else trasmissione
	}//fine if-else email valida
}//fine if submit
?>
<form method="post" action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>">
Il tuo nome <input type="text" name="nomemittente"><br>
La tua e-mail <input type="text" name="emailmittente"><br>
Il nome del destinatario <input type="text" name="nomedestinatario"><br>
L'email del destinatario <input type="text" name="emaildestinatario"><br>
Cosa vuoi dirgli<br>
<textarea name="commenti" rows="7" cols="70"></textarea><br>
<input type="submit" value="Invia" name="invia"> <input type="reset" value="cancella">
</form>

poi puoi chiamare la pag come vuoi, solo deve avere l'estensione .php

p.s.
guarda che un form fatto bene dovrebbe avere vari controlli sui dati immessi
 

atonyc

Utente Attivo
10 Dic 2008
67
0
0
funziona tutto alla grande solo una cosa una volta che si invia la mail apperi il messaggio di ciò che è stato postato ma sotto c'è ancora il form, come fare per evitare che si visualizzi nuovamente il form?
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
al posto di
PHP:
echo "<br><a href=\"http://www.giorgiotave.it\">Torna alla Home</a>";
potresti mettere
PHP:
echo "<meta http-equiv='Refresh' content='3; URL=nome_della_pagina.php'>";
in queto modo ritorna in automatico dopo 3 secondi alla pagina che vuoi.
puoi allungare il tempo varinado es content='5; e i secondi diventano 5.
e mettere subito prtina della graffa
PHP:
  }//fine if-else email valida 
}//fine if submit
il ritorno automatico al form eliminando i messaggi
PHP:
  }//fine if-else email valida
  echo "<meta http-equiv='Refresh' content='3; URL=".htmlspecialchars($_SERVER['PHP_SELF'])."'>";
}//fine if submit
 
Discussioni simili
Autore Titolo Forum Risposte Data
M telecamera Foscam - mancato invio mail ad account gmail IP Cam e Videosorveglianza 0
R Invio mail con allegati multipli PHP 0
R Invio mail con allegati da directory PHP 1
Daniele_Carrara Problema timeout - invio mail PHP 7
U PHP bottone per invio mail o ritorno al form PHP 15
G Invio mail con php da dati prelevati da un database PHP 9
AC1 [PHP] Invio Mail PHP 18
B [PHP] Invio mail automatico dopo compilazione form - db PHP 25
A [PHP] Problema invio mail con funzione mail() PHP 3
A [PHP] RISOLTO Invio Mail con Tabella PHP 2
paloppa [PHP] Invio mail da form dubbio PHP 17
F Form mail php errore invio PHP 5
Punix [PHP] problema script invio e-mail PHP 2
G Invio Mail con PHPMailer, problemi SMTP PHP 7
cobra_72 [PHP] problema invio multiplo allegati mail PHP 21
Z Limite invio newsletter con PHP - mail() PHP 4
E [Javascript] Messaggio di avvenuto invio mail non visualizzato Javascript 1
F Invio Mail con Javascript Javascript 25
E Rimuovere "dati in memoria" dopo invio mail [PHP] PHP 18
lucarpenter Settaggio invio mail allarme IP camera P2P IP Cam e Videosorveglianza 9
I form invio mail HTML e CSS 1
F Invio automatico mail php PHP 0
Francesco Polese Errore form invio mail+php PHP 22
R Errore invio mail in php PHP 1
M Errore invio mail da php Posta Elettronica 5
P invio mail da form con dati php PHP 7
webmachine Come programmare l'invio di una mail in PHP? PHP 1
W Estrapolare un indirizzo mail di un form durante l'invio PHP 5
Z Invio mail da telecamere HIKVision - HELP!!! IP Cam e Videosorveglianza 0
M WANSCAM Invio allarme tramite mail IP Cam e Videosorveglianza 4
M configurazione invio mail php PHP 25
I invio mail da form PHP 1
S Form invio mail html, con invio tramite file denominato invio.php PHP 8
asevenx link cliccabile che non funziona con invio mail PHP 1
P Invio mail diversi destinatari PHP 10
W problemi incomprensibili invio mail dal sito in PHP PHP 3
M Invio mail con destinatari da mysql con inserimento di nome e cognome PHP 6
Il Matta Problema Form e invio mail PHP 2
G WansCam invio mail IP Cam e Videosorveglianza 11
B Problema form mail per invio doppio allegato PHP 1
F invio di una mail tramite script php PHP 6
D [Risolto] Invio mail a blocchi Classic ASP 31
A Problema orario invio mail per form PHP 4
S [risolto] Invio scheda dettagliata in mail Classic ASP 6
antonio_oti Invio di e-mail tramite PHP PHP 23
O [PHP] Problema Invio Mail PHP 2
I [Risolto] Problemi invio e-mail con CDOSYS con domini @live.it Classic ASP 4
S php form invio mail PHP 3
M problemi invio e-mail Posta Elettronica 8
L Form con invio mail PHP 1

Discussioni simili