Punto informatico Network
Login Esegui login | Non sei registrato? Iscriviti ora (è gratuito!)
Username: Password:
  • Annuncio Pubblicitario

Invio Mail con PHP

Cerchi consigli per migliorare il tuo sito? Vuoi aprire un sito in poco tempo?
Discuti con altri webmaster, chiedi chiarimenti ed opinioni in tutta libertà.
Lo spam verrà cancellato.

Invio Mail con PHP

Messaggioda Bilbovm » mar feb 12, 2008 11:31 am

ho trovato su un altro forum questo sitema per inviare un form ad una mail prefissata

form.php
:

<form action=send.php target=_blank method=POST>
<table width=470><tr><td align=right width=87>Il tuo nome:</td>
<td align=left width=391>
<input type=text name=f_name size=32 value=>*</td></tr>
<tr><td align=right width=87>La tua mail:</td>
<td align=left width=391><input type=text name=f_mail size=32 value=>*</td></tr>
<tr><td align=right width=87>Messaggio:</td><
td align=left width=391><input type="text" name=f_message value="">*</td>
<tr></table><input type=submit value=Invia l'E-mail></form>
*Campi Obligatori<br>


send.php :

<?
include "config.php";
if ($f_name <> "" and $f_mail <> "" and $f_message <> "") {
mail("$email", "$subject", "From: $f_name\nMail: $f_mail\nMessage:\n\n$f_message");
$msg = "Messaggio inviato .";
} else {
$msg = "Occorre compilare tutti i campi.";
}
?>
<p><? echo $msg; ?></p>



config.php :

<?
$email = "tuamail@esempio.it";
$subject = "Powered By NetSkin - Messaggio";
?>




il sistema è composto da 3 file

form

send

config


il tutto l'ho modificato come serve a me, e la cosa funziona.

ci sono due cose che non sono riuscito a risolvere però (non abbiatene sono un novellino ignorante)

quando clicco su invio nel form, mi cambia pagina (compare una tutta vuota)

c'è un modo perché ciò non succeda?


poi mi era venuta un'idea, pensado a come risolvere la cosa scritta sopra.

si potrebbe inserire i comandi del send direttametne nel form di inserimento.


ciò che potrebbe comportare? voglio dire c'è un motivo preciso per cui sono stati creati 3 file e non inglobato tutto in uno o due?
Bye '73 de Roby.-
http://www.atrieste.eu
Avatar utente
Bilbovm
Senior Member
Senior Member
 
Messaggi: 458
Iscritto il: lun ago 14, 2006 8:09 am

Messaggioda mortal_kombat » gio feb 14, 2008 10:32 am

Io ho fatto così:

FORM DA COMPILARE:

Codice: Seleziona tutto
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="it">
<head>
  ...
</head>

<body>

<div id="contentalt">
<h1>Contattami!</h1>
<br />


<form style="width: 520px;" name="tell" id="tell" method="post" action="form_mail.php">
  <table style="width: 500px; height: 150px; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="2" cellspacing="0">
    <tbody>
      <tr>
        <td style="font-weight: bold;" height="30" width="120"><span class="nomi_form">Nome mittente:</span></td>
        <td height="30" width="339"><input name="nome_mittente" class="form" type="text"></td>
      </tr>
      <tr>
        <td style="font-weight: bold;" height="30" width="120"><span class="nomi_form">Mail mittente:</span></td>
        <td style="width: 339px; height: 30px;"> <input name="mail_mittente" class="form" type="text"></td>
      </tr>
      <tr>
        <td style="font-weight: bold;" height="30" valign="top"><span class="nomi_form">Messaggio:</span></td>
        <td style="vertical-align: middle;"><textarea name="messaggio" class="mex"></textarea> </td>
      </tr>
      <tr>
        <td style="font-weight: bold;" height="30" valign="top"></td>
        <td style="vertical-align: middle;"></td>
      </tr>
      <tr valign="middle">
        <td height="30"></td>
        <td style="height: 30px;"><input name="Submit" value="Invia" class="invia" type="submit"></td>
      </tr>
    </tbody>
  </table>
</form>

</body>
</html>


PAGINA DI CONFERMA INVIO O ERRORE EVENTUALE:

Codice: Seleziona tutto
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="it">
<head>
  ...
</head>

<body>

<div id="contentalt">

<h2>Stato di invio del messaggio...</h2>

<p>

<?php
/*
   form_mail script
*/
// variabili
$nome_mittente = $_POST['nome_mittente'];
$mail_mittente = $_POST['mail_mittente'];

// mail del destinatario
$mail_destinatario = "indirizzo@email.it";
$messaggio = $_POST['messaggio'];

//controllo campi vuoti
if ($nome_mittente=="")
echo "Per favore, inserisci il tuo nome nell'apposito campo.<br />
Il nome del mittente mi serve solamente per sapere chi mi scrive, quindi non serve mettere le generalità per intero, basta
semplicemente un nome o un nickname (se ci conosciamo).";
elseif(!ereg("^[a-z0-9][_\.a-z0-9-]+@([a-z0-9][0-9a-z-]+\.)+([a-z]{2,4})",$mail_mittente))
echo "Indirizzo e-mail non corretto.<br />
Se vuoi ricevere una risposta devi inserire l'indirizzo esatto, altrimenti non posso risponderti.<br />
Il tuo indirizzo e-mail non sarà registrato o aggiunto a nessun database ma mi sarà recapitata una mail direttamente alla
mia casella di posta.<br />
Non riceverai nessuna mail di spam o pubblicitaria da questo sito né il tuo indirizzo sarà segnalato da me a mailing lists
esterne.<br />
L'unico dato sensibile che è possibile registrare dall'invio di questa mail è l'indirizzo IP. Pertanto, abusi o contenuti
offensivi saranno denunciati alle autorità competenti";
else if ($messaggio=="")
echo "Hai lasciato vuoto il campo relativo al testo del messaggio.<br />
Se stai utilizzando questo form significa che vuoi dirmi qualcosa, clicca sul link riportato sotto per tornare alla pagina
precedente.";
else
if(mail($mail_destinatario, "Richiesta informazioni, mittente: $nome_mittente",
"Inviata da: $mail_mittente" ."\r\n".stripslashes($messaggio)))

//messaggio di conferma
echo "<br /><br /><br />
Grazie per avermi scritto!<br />
Questo messaggio mi sarà recapitato direttamente al mio indirizzo e-mail.<br />
Riceverai una risposta nel più breve tempo possibile.";

//nel caso ci fossero problemi
else
echo "<br /><br /><br />Si è verificato un errore durante l'invio. Riprova.";

?>

</body>
</html>


Qui puoi vedere la pagina completa.
Spero di essere stata d'aiuto [;)]
Ultima modifica di mortal_kombat il ven feb 15, 2008 9:46 am, modificato 1 volta in totale.
Avatar utente
mortal_kombat
Senior Member
Senior Member
 
Messaggi: 458
Iscritto il: dom giu 24, 2007 5:36 pm
Località: Pisa

Messaggioda Rumez » gio feb 14, 2008 10:46 am

Ma guarda che brava che è diventata la Cri [bleh]
Avatar utente
Rumez
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 1783
Iscritto il: mar mag 13, 2003 2:08 pm

Messaggioda mortal_kombat » gio feb 14, 2008 10:50 am

Eheheh, ho fatto qualche progresso negli ultimi mesi...
Più che altro ho scoperto che senza PHP non si va da nessuna parte... Anche se i programmatori web ne parlano quasi tutti male.

Spero di non aver postato un codice con errori! Sul mio sito funziona alla perfezione però [;)]
Avatar utente
mortal_kombat
Senior Member
Senior Member
 
Messaggi: 458
Iscritto il: dom giu 24, 2007 5:36 pm
Località: Pisa

Messaggioda Bilbovm » gio feb 14, 2008 8:59 pm

mi piace come l'hai fatto.

ci darò un sguardo e se riesco ad adattarlo al mio bisogno, ne aprofitterò, comunque mi vedrete ancora....
Bye '73 de Roby.-
http://www.atrieste.eu
Avatar utente
Bilbovm
Senior Member
Senior Member
 
Messaggi: 458
Iscritto il: lun ago 14, 2006 8:09 am


Torna a Sviluppo Web

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite

Powered by phpBB © 2002, 2005, 2007, 2008 phpBB Group
Traduzione Italiana phpBB.it

megalab.it: testata telematica quotidiana registrata al Tribunale di Cosenza n. 22/09 del 13.08.2009, editore Master New Media S.r.l.; © Copyright 2008 Master New Media S.r.l. a socio unico - P.I. 02947530784. GRUPPO EDIZIONI MASTER Spa Tutti i diritti sono riservati. Per la pubblicità: Master Advertising