• Home
  • Forum
  • Fare Web
  • PHP

form per invio mail

  • Creatore Discussione Creatore Discussione temino
  • Data di inizio Data di inizio 22 Gen 2011
  • Tag Tag
    form mail form mail php php
Prec.
  • 1
  • 2
Primo Prec. 2 di 2

micio86

Utente Attivo
15 Mar 2011
287
0
0
38
peschiera borromeo (MI)
www.laserpunch.tk
  • 16 Mar 2011
  • #21
Se vuoi inviare una mail in html

function invia_mail($TITOLO,$MESSAGGIO,$DESTINATARIO,$MITTENTE) {
$MESSAGGIO1="
<html>
<body bgcolor=\"#E4E4E4\"><br/>
<center>
<table width=\"945\" cellspacing=\"0\" cellpadding=\"5\" style=\"border-collapse:collapse;border:1px solid gray;\">
<tr>
<td colspan=\"2\" style=\"background-image: url('/images/background_menu_top.gif');
background-repeat: repeat-x; background-position: top; width:100%;
border-bottom:1px solid #AAAAAA; font-size: 20px; font-weight:bold; color:#FFF;height:50px;\">".stripslashes($TITLE)."
</td>
</tr>
<tr>
<td colspan=\"2\" bgcolor=\"white\" style=\"padding-left:10px;padding-right:10px;\"><br/>
<p style=\"text-align:left;padding:5px;\">".$MESSAGGIO."</p>
</td>
</tr>
</table>
<br/><br/>
</center>
</body>
</html>";
$MITTENTE="From: ".$MITTENTE."\nMIME-Version: 1.0\nContent-Type: text/html; charset=\"iso-8859-1\"\nContent-Transfer-Encoding: 7bit\n\n";
mail($DESTINATARIO, $TITOLO, $MESSAGGIO1,$MITTENTE);
}
 
Ultima modifica: 16 Mar 2011
B

blackswan

Nuovo Utente
11 Mar 2011
23
0
0
  • 17 Mar 2011
  • #22
ti riposto tutto il codice....magari ho fatto un errore non lo vedo...
PHP:
<?php
//parte riservata all'invio

//qui scrivi le funzioni di controllo di quanto immesso nel form
function valida_email($em){//verifica che l'indirizzo email sia sintatticamente corretto
$em=filter_var($em, FILTER_SANITIZE_EMAIL);
if(!filter_var($em, FILTER_VALIDATE_EMAIL)){
return "*#*";//indirizzo non corretto
}else{
return $em;//indirizzo corretto
}
}
function valida_nome($no){
//suddivido per "didattica", ma poi puoi semplificare
$no=trim($no);//tolgo gli spazi iniziali e finali, si vuota se messo solo spazi
$no=strip_tags($no);//tolgo tutti i tag html
if($no==""){
return "*#*";//non è stato inserito il nome o solo spazi
}else{
return $no;//il nome non dovrebbe essere pericoloso e contiene qualcosa
}
}

function valida_tel($t){
    //guarda che verifica OK numeri solo composti da cartteriri numerici
    //togli tutti gli spazi oltre all'eventuale primo e ultimo
    //trasforma il numere es da 049 33344 a 04933344
    $t=str_replace(" ","",$t);
    if($t==""){
        //c'erano solo spazi
        //se il numero di telefono non è obbligatorio togli return "*#*";
        return "";//non corretto vuoto
        //e metti return "";
        //stesso discorso per gli altri return "*#*";
    }else{
        //qui verifiche la lunghezza del numero
        //eventualmente poi puoi variare la minima e la massima
        $lungo=strlen($t);
        if($lungo < 7 || $lungo > 15){
            return "";//non corretto troppo corto o troppo lungo
        }else{
            $tel_valido="";
            //verifico carattere per carattere
            for($k=0; $k < $lungo; $k++){
                if($t[$k] < "0" || $t[$k] > "9"){
                    //ho trovato un carattere che non è numerico esco senza proseguire
                    return "*#*";//trovato carattere non corretto
                }else{
                    //ricostruisco il numero
                    $tel_valido.=$t[$k];
                }
            }//fine for
            //a questo punto il numero è formamlmente corretto
            //sarebbe da verificare che non sia es tutti 0
            return $tel_valido;
        }
    }
}








function valida_testo($tx){
$tx=trim($tx);
$tx=strip_tags($tx, "<br> <p>");
//in questo modo tolgo tutti i tag esclusi qulle di fine liena e paragrafo
//nel caso l'inio sia in formato html
if($tx==""){
return "*#*";//non è stato inserito alcun testo o solo spazi
}else{
return $tx;//il testo non dovrebbe essere pericoloso e contiene qualcosa
}
}


//fine funzioni controllo sono il minimo del fattibile
//qui inizio a raccogliere i dati inviati dal form
if(isset($_POST['invio'])){//è stato premuto il tasto di submit
//attenta i nomi dentro $_POST devono corrispondere esattamente ai nomi dei campi del form
//metto a stinga vuota una variabile che mi servirà in seguito
$ok_ko.="";
$nome=$_POST['realname'];
$cognome=$_POST['realcognome'];
$email=$_POST['email'];
$messaggio=$_POST['messaggio'];
$tel=$_POST['telefono'];
//e li verifico
$nome=valida_nome($nome);
if($nome=="*#*"){//il nome è vuoto
$ok_ko.="<br>NON hai inserito il tuo nome";
}
$cognome=valida_nome($cognome);
if($cognome=="*#*"){//il nome è vuoto
$ok_ko.="<br>NON hai inserito il tuo cognome";
}

$email=valida_email($email);
if($email=="*#*"){//il nome è vuoto
$ok_ko.="<br>NON hai inserito l'indirizzo email o errato";
}

$tel=valida_tel($t);
if($tel=="*#*"){//il numero è vuoto o non corretto
$ok_ko.="<br>NON hai inserito il tuo numero di telefono o non corretto"; 
}  

$messaggio=valida_testo($messaggio);
if($messaggio=="*#*"){//il nome è vuoto
$ok_ko.="<br>NON hai inserito il testo";
}

//fine verifiche se la variabile $ok_ko. è rimasta vuota tutto OK
//quindi posso spedire
if($ok_ko==""){

//preparo delle variabili chi mi possono servire
$destinatiario="email mia";//qui devi mettere il tuo indirizzo
$inviata_il="numero: ".$tel."<br>";//questa è per bellezza
$inviata_da="email da: ".$nome.$cognome."<hr>";
//$inviata_da="email da: ".$cognome."<hr>";
$oggetto = "richiesta informazioni";//o altro messaggio
//nel messaggio concateno alcune variabili ottenendo il testo da inviare
$testo=$inviata_il.$inviata_da.nl2br($messaggio);
//invio in formato html
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1" . "\r\n";
$headers .= "From: $nome <$email>" . "\r\n";
//e qui ti uso la nativa mail() poi visto che l'appetito vien mengiando....
//prima o poi passere alla classe maillerphp
//tento l'invio
if(mail($destinatiario,$oggetto,$testo,$headers)){
$ok_ko.="<br>Grazie per avermi contattato<br>ti risponder&ograve; quanto prima";
}else{
$ok_ko.="<br>c'&eacute; stato un errore di trasmissione: riprova pi&ugrave; tardi";
}

}
//mostri l'avviso se OK o KO
echo $ok_ko;
//e ritorni al form pulito
echo "<meta http-equiv='Refresh' content='4; URL=index.html'>"; 
//se fai due pagine al posto di ".htmlspecialchars($_SERVER['PHP_SELF'])."
//il nome della pagina del form es. URL=contattami.htm
//se vuoi aumentare o diminuire il tempo di permanenza dell'avviso
//modifica il valore di content='4; es. content='2;
}
?>
 
Ultima modifica di un moderatore: 17 Mar 2011

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 17 Mar 2011
  • #23
ciao
ho fatto una prova con il codice che hai postato

PHP:
<?php
//.....
$tel_1="011 666898";
echo valida_tel($tel_1)."<br>";
$tel_2="011 6668Z8";
echo valida_tel($tel_2)."<br>";
?>
e questo è l'out
011666898
*#*
Clicca per allargare...
non capisco dove stai sbagliando
 
B

blackswan

Nuovo Utente
11 Mar 2011
23
0
0
  • 25 Mar 2011
  • #24
scusami se ancora ti disturbo ora ti posto tutte e due i codici sia quelli html che quelli php magari ti salta all'occhio dove sbaglio....mi continua a dire nuomero non inserito o errrato((((


PHP:
<?php
//parte riservata all'invio

//qui scrivi le funzioni di controllo di quanto immesso nel form
function valida_email($em){//verifica che l'indirizzo email sia sintatticamente corretto
$em=filter_var($em, FILTER_SANITIZE_EMAIL);
if(!filter_var($em, FILTER_VALIDATE_EMAIL)){
return "*#*";//indirizzo non corretto
}else{
return $em;//indirizzo corretto
}
}
function valida_tel($t){
    //guarda che verifica OK numeri solo composti da cartteriri numerici
    //togli tutti gli spazi oltre all'eventuale primo e ultimo
    //trasforma il numere es da 049 33344 a 04933344
    $t=str_replace(" ","",$t);
    if($t==""){
        //c'erano solo spazi
        //se il numero di telefono non è obbligatorio togli return "*#*";
        return "*#*";//non corretto vuoto
        //e metti return "";
        //stesso discorso per gli altri return "*#*";
    }else{
        //qui verifiche la lunghezza del numero
        //eventualmente poi puoi variare la minima e la massima
        $lungo=strlen($t);
        if($lungo < 7 || $lungo > 25){
            return "*#*";//non corretto troppo corto o troppo lungo
        }else{
            $tel_valido="";
            //verifico carattere per carattere
            for($k=0; $k < $lungo; $k++){
                if($t[$k] < "0" || $t[$k] > "9"){
                    //ho trovato un carattere che non è numerico esco senza proseguire
                    return "*#*";//trovato carattere non corretto
                }else{
                    //ricostruisco il numero
                    $tel_valido.=$t[$k];
                }
            }//fine for
            //a questo punto il numero è formamlmente corretto
            //sarebbe da verificare che non sia es tutti 0
            return $tel_valido;
        }
    }
}


function valida_nome($no){
//suddivido per "didattica", ma poi puoi semplificare
$no=trim($no);//tolgo gli spazi iniziali e finali, si vuota se messo solo spazi
$no=strip_tags($no);//tolgo tutti i tag html
if($no==""){
return "*#*";//non è stato inserito il nome o solo spazi
}else{
return $no;//il nome non dovrebbe essere pericoloso e contiene qualcosa
}
}
function valida_testo($tx){
$tx=trim($tx);
$tx=strip_tags($tx, "<br> <p>");
//in questo modo tolgo tutti i tag esclusi qulle di fine liena e paragrafo
//nel caso l'inio sia in formato html
if($tx==""){
return "*#*";//non è stato inserito alcun testo o solo spazi
}else{
return $tx;//il testo non dovrebbe essere pericoloso e contiene qualcosa
}
}
//fine funzioni controllo sono il minimo del fattibile
//qui inizio a raccogliere i dati inviati dal form
if(isset($_POST['invio'])){//è stato premuto il tasto di submit
//attenta i nomi dentro $_POST devono corrispondere esattamente ai nomi dei campi del form
//metto a stinga vuota una variabile che mi servirà in seguito
$ok_ko.="";
$nome=$_POST['realname'];
$tel=$_POST['telefono'];
$email=$_POST['email'];
$messaggio=$_POST['messaggio'];
//e li verifico
$nome=valida_nome($nome);
if($nome=="*#*"){//il nome è vuoto
$ok_ko.="<br>NON hai inserito il tuo nome e cognome";
}

$tel=valida_tel($t);
if($tel=="*#*"){//il numero è vuoto o non corretto
$ok_ko.="<br>NON hai inserito il tuo numero di telefono o non corretto"; 
}  


$email=valida_email($email);
if($email=="*#*"){//il nome è vuoto
$ok_ko.="<br>NON hai inserito l'indirizzo email o errato";
}
$messaggio=valida_testo($messaggio);
if($messaggio=="*#*"){//il nome è vuoto
$ok_ko.="<br>NON hai inserito il testo";
}
//fine verifiche se la variabile $ok_ko. è rimasta vuota tutto OK
//quindi posso spedire
if($ok_ko==""){

//preparo delle variabili chi mi possono servire
$destinatiario="email";//qui devi mettere il tuo indirizzo
$inviata_il="emei inviata il ".date("")."<br>";//questa è per bellezza
$inviata_da="email da: ".$nome.$tel."<hr>";
$oggetto = "richiesta informazioni a ........";//o altro messaggio
//nel messaggio concateno alcune variabili ottenendo il testo da inviare
$testo=$inviata_il.$inviata_da.nl2br($messaggio);
//invio in formato html
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1" . "\r\n";
$headers .= "From: $nome <$email>" . "\r\n";
//e qui ti uso la nativa mail() poi visto che l'appetito vien mengiando....
//prima o poi passere alla classe maillerphp
//tento l'invio
if(mail($destinatiario,$oggetto,$testo,$headers)){
$ok_ko.="<br>Grazie per avermi contattato<br>ti risponder&ograve; quanto prima";
}else{
$ok_ko.="<br>c'&eacute; stato un errore di trasmissione: riprova pi&ugrave; tardi";
}

}
//mostri l'avviso se OK o KO
echo $ok_ko;
//e ritorni al form pulito
echo "<meta http-equiv='Refresh' content='4; URL=email.html'>";
//se fai due pagine al posto di ".htmlspecialchars($_SERVER['PHP_SELF'])."
//il nome della pagina del form es. URL=contattami.htm
//se vuoi aumentare o diminuire il tempo di permanenza dell'avviso
//modifica il valore di content='4; es. content='2;
}
?>


html:
<html>
<body>
<form action='email1.php' method='post' >
<p> Nome e Cognome:</p>
<input type=text name="realname">
<p>Telefono:</p>
<input type=text name="telefono">
<p>Email:</p>
<input type=text name="email">
<p>Messaggio:</p>
<textarea name="messaggio" cols="40" rows="5"></textarea>
<br>
<br>
<input type="Submit" value="Invia" name="invio">
</form>
</body>
</html>
Clicca per allargare...
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
27
Roma
alessandro1997.netsons.org
  • 25 Mar 2011
  • #25
Quello script è caotico e orribile. Crea un unico file, chiamalo come vuoi e mettici dentro questo:
PHP:
<?php
// definisci i parametri per l'invio dell'email
define('RECIPIENT', 'admin@example.com');
define('SUBJECT',   'Richiesta informazioni');

function show_errors()
{
    global $errors;

    if (count($errors)) {
        echo '<p>Si sono verificati degli errori:</p>';
        echo '<ul>';

        foreach ($errors as $err) {
            echo "<li>{$err}</li>";
        }

        echo '</ul>';
        echo "<meta http-equiv=\"refresh\" content=\"5; URL={$_SERVER['PHP_SELF']}\" />";

        exit();
    }
}

if (isset($_POST['submit'])) {
    $name  = isset($_POST['name'])  ? trim($_POST['name'])  : '';
    $email = isset($_POST['email']) ? trim($_POST['email']) : '';
    $phone = isset($_POST['phone']) ? trim($_POST['phone']) : '';
    $body  = isset($_POST['body'])  ? trim($_POST['body'])  : '';

    $name = filter_var($name, FILTER_SANITIZE_STRING);
    $body = filter_var($body, FILTER_SANITIZE_STRING);

    $errors = array();

    if ($name == '') {
        $errors[] = 'Non hai inserito un nome valido.';
    }

    if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
        $errors[] = 'Non hai inserito una e-mail valida.';
    }

    if (!filter_var($phone, FILTER_VALIDATE_INT)) {
        $errors[] = 'Non hai inserito un telefono valido.';
    }

    if ($body == '') {
        $errors[] = 'Non hai inserito un messaggio valido.';
    }

    show_errors();

    $headers = "MIME-Version: 1.0\r\n";
    $headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
    $headers .= "From: {$name} <{$email}>\r\n";

    $body = nl2br($body);
    $body .= "<p>Il numero di telefono dell'utente &egrave; {$phone}.</p>";

    if (!mail(RECIPIENT, SUBJECT, $body, $headers)) {
        $errors[] = 'Impossibile inviare l\'email.';
    }

    show_errors();

    echo '<p>Email inviata con successo! Riceverai una risposta a breve.</p>';
}
else
{
    echo <<<EOF
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <head>
        <title>Contatti</title>
        <meta http-equiv="content-type" content="text/html;charset=utf-8" />
    </head>

    <body>
        <h1>Contatti</h1>
        <p>Compila il modulo sottostante per inviarmi un messaggio e-mail.</p>

        <form action="{$_SERVER['PHP_SELF']}" method="post">
            <table cellspacing="10">
                <tr>
                    <td><label>Nome e cognome:</label></td>
                    <td><input type="text" name="name" /></td>
                </tr>

                <tr>
                    <td><label>Indirizzo e-mail:</label></td>
                    <td><input type="text" name="email" /></td>
                </tr>

                <tr>
                    <td><label>Numero di telefono:</label></td>
                    <td><input type="text" name="phone" /></td>
                </tr>

                <tr>
                    <td><label>Testo del messaggio:</label></td>
                    <td><textarea cols="50" rows="5" name="body"></textarea></td>
                </tr>

                <tr>
                    <td>&nbsp;</td>
                    <td><input type="submit" name="submit" value="Invio" /></td>
                </tr>
            </table>
        </form>
    </body>
</html>
EOF;
}
?>
Non l'ho provato ma dovrebbe funzionare correttamente.
 
Ultima modifica: 28 Mar 2011
B

blackswan

Nuovo Utente
11 Mar 2011
23
0
0
  • 25 Mar 2011
  • #26
grazie mille intanto!

l'ho provato subito ma mi dice che non ho inserito un numero di telefono valido ed io ho inserito questo : 0670450551

questo telefono mi perseguita!!!
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
27
Roma
alessandro1997.netsons.org
  • 25 Mar 2011
  • #27
Sei sicuro di non aver inserito altri caratteri nel campo? Io l'ho provato ora e funziona correttamente se provo ad inserire il mio numero di cellulare... Comunque prova a modificare queste righe:
PHP:
    if (!filter_var($phone, FILTER_VALIDATE_INT)) {
        $errors[] = 'Non hai inserito un telefono valido.';
    }
Così:
PHP:
    if (!is_numeric($phone) || strlen($phone) < 7 || strlen($phone) > 25) {
        $errors[] = 'Non hai inserito un telefono valido.';
    }
Fammi sapere se ha funzionato.
 
B

blackswan

Nuovo Utente
11 Mar 2011
23
0
0
  • 25 Mar 2011
  • #28
siiiiiii""" funziona alla grande!!!!!!!!! grazie mille!!!!!so troppo contento!!!)...

ho visto che una volta che ha inviato l'email e da il messaggio dell'ok...mi rimane fisso su quella pagina per far si che la pagina refrescia dopo pochi secondi dinuovo sul form devo usare questo codice? :
PHP:
show_errors();

    echo '<p>Email inviata con successo! Riceverai una risposta a breve.</p>';
     echo "<meta http-equiv='Refresh' content='4 URL=".htmlspecialchars($_SERVER['PHP_SELF'])."'>";
}


cmq grazie ma davvero grazie per il tuo aiuto fino ad ora!!
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
27
Roma
alessandro1997.netsons.org
  • 25 Mar 2011
  • #29
Aggiungi questo sotto al messaggio di invio eseguito:
PHP:
echo "<meta http-equiv=\"refresh\" content=\"5; URL={$_SERVER['PHP_SELF']}\" />";
Non c'è di che
 
B

blackswan

Nuovo Utente
11 Mar 2011
23
0
0
  • 25 Mar 2011
  • #30
grazie funziona perfettamente!!!! ora è veramente perfetto!!
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
27
Roma
alessandro1997.netsons.org
  • 26 Mar 2011
  • #31
Io sono un amante del debugging, ma a volte per risolvere un problema la soluzione migliore è buttare via tutto e ricominciare da capo.
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
  • 28 Mar 2011
  • #32
potete postare la soluzione finale? sto incollando i pezzi ma il puzzle non è un gran kè
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
27
Roma
alessandro1997.netsons.org
  • 28 Mar 2011
  • #33
Lo script finale è:
PHP:
<?php
// definisci i parametri per l'invio dell'email
define('RECIPIENT', 'admin@example.com');
define('SUBJECT',   'Richiesta informazioni');

function show_errors()
{
    global $errors;

    if (count($errors)) {
        echo '<p>Si sono verificati degli errori:</p>';
        echo '<ul>';

        foreach ($errors as $err) {
            echo "<li>{$err}</li>";
        }

        echo '</ul>';
        echo "<meta http-equiv=\"refresh\" content=\"5; URL={$_SERVER['PHP_SELF']}\" />";

        exit();
    }
}

if (isset($_POST['submit'])) {
    $name  = isset($_POST['name'])  ? trim($_POST['name'])  : '';
    $email = isset($_POST['email']) ? trim($_POST['email']) : '';
    $phone = isset($_POST['phone']) ? trim($_POST['phone']) : '';
    $body  = isset($_POST['body'])  ? trim($_POST['body'])  : '';

    $name = filter_var($name, FILTER_SANITIZE_STRING);
    $body = filter_var($body, FILTER_SANITIZE_STRING);

    $errors = array();

    if ($name == '') {
        $errors[] = 'Non hai inserito un nome valido.';
    }

    if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
        $errors[] = 'Non hai inserito una e-mail valida.';
    }

    if (!is_numeric($phone) || strlen($phone) < 7 || strlen($phone) > 25) {
        $errors[] = 'Non hai inserito un telefono valido.';
    }

    if ($body == '') {
        $errors[] = 'Non hai inserito un messaggio valido.';
    }

    show_errors();

    $headers = "MIME-Version: 1.0\r\n";
    $headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
    $headers .= "From: {$name} <{$email}>\r\n";

    $body = nl2br($body);
    $body .= "<p>Il numero di telefono dell'utente &egrave; {$phone}.</p>";

    if (!mail(RECIPIENT, SUBJECT, $body, $headers)) {
        $errors[] = 'Impossibile inviare l\'email.';
    }

    show_errors();

    echo '<p>Email inviata con successo! Riceverai una risposta a breve.</p>';
    echo "<meta http-equiv=\"refresh\" content=\"5; URL={$_SERVER['PHP_SELF']}\" />";
}
else
{
    echo <<<EOF
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <head>
        <title>Contatti</title>
        <meta http-equiv="content-type" content="text/html;charset=utf-8" />
    </head>

    <body>
        <h1>Contatti</h1>
        <p>Compila il modulo sottostante per inviarmi un messaggio e-mail.</p>

        <form action="{$_SERVER['PHP_SELF']}" method="post">
            <table cellspacing="10">
                <tr>
                    <td><label>Nome e cognome:</label></td>
                    <td><input type="text" name="name" /></td>
                </tr>

                <tr>
                    <td><label>Indirizzo e-mail:</label></td>
                    <td><input type="text" name="email" /></td>
                </tr>

                <tr>
                    <td><label>Numero di telefono:</label></td>
                    <td><input type="text" name="phone" /></td>
                </tr>

                <tr>
                    <td><label>Testo del messaggio:</label></td>
                    <td><textarea cols="50" rows="5" name="body"></textarea></td>
                </tr>

                <tr>
                    <td>&nbsp;</td>
                    <td><input type="submit" name="submit" value="Invio" /></td>
                </tr>
            </table>
        </form>
    </body>
</html>
EOF;
}
?>
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
  • 29 Mar 2011
  • #34
Parse error: syntax error, unexpected T_SL in C:\xampp\htdocs\mex.php on line 72

che sarebbe questa: echo <<<EOF
 

micio86

Utente Attivo
15 Mar 2011
287
0
0
38
peschiera borromeo (MI)
www.laserpunch.tk
  • 29 Mar 2011
  • #35
Prova

prova a farlo senza heredoc:
PHP:
else
{?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <head>
        <title>Contatti</title>
        <meta http-equiv="content-type" content="text/html;charset=utf-8" />
    </head>

    <body>
        <h1>Contatti</h1>
        <p>Compila il modulo sottostante per inviarmi un messaggio e-mail.</p>

        <form action="<?php echo $_SERVER['PHP_SELF'];" method="post">
            <table cellspacing="10">
                <tr>
                    <td><label>Nome e cognome:</label></td>
                    <td><input type="text" name="name" /></td>
                </tr>

                <tr>
                    <td><label>Indirizzo e-mail:</label></td>
                    <td><input type="text" name="email" /></td>
                </tr>

                <tr>
                    <td><label>Numero di telefono:</label></td>
                    <td><input type="text" name="phone" /></td>
                </tr>

                <tr>
                    <td><label>Testo del messaggio:</label></td>
                    <td><textarea cols="50" rows="5" name="body"></textarea></td>
                </tr>

                <tr>
                    <td>&nbsp;</td>
                    <td><input type="submit" name="submit" value="Invio" /></td>
                </tr>
            </table>
        </form>
    </body>
</html><?php
}
?>
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
  • 29 Mar 2011
  • #36
ho copiato e incollato il tuo codice...corretto nel form la chiusura della parte php e provato ad inviare un messaggio...risultato:

Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\xampp\htdocs\mex.php on line 61
Si sono verificati degli errori:

Impossibile inviare l'email.



LINEA 61: if (!mail(RECIPIENT, SUBJECT, $body, $headers)) {
LINEA 62: $errors[] = 'Impossibile inviare l\'email.';
LINEA 63: }
 

micio86

Utente Attivo
15 Mar 2011
287
0
0
38
peschiera borromeo (MI)
www.laserpunch.tk
  • 29 Mar 2011
  • #37
Beh

Perlomeno il codice ora va bene
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
27
Roma
alessandro1997.netsons.org
  • 29 Mar 2011
  • #38
Non puoi inviare email in locale se non hai installato un server SMTP sul PC. Ti consiglio di usare la classe PHPMailer, con cui puoi inviare email usando un server SMTP esterno.
 

micio86

Utente Attivo
15 Mar 2011
287
0
0
38
peschiera borromeo (MI)
www.laserpunch.tk
  • 29 Mar 2011
  • #39
Cazzius!

Ma hai il sito in locale!!!
Ovvio che non le manda (ci fai fare 1000 seghe mentali)!!!!!!
 
Prec.
  • 1
  • 2
Primo Prec. 2 di 2
Devi accedere o registrarti per poter rispondere.

Discussioni simili

M
Unire 2 funzioni per l'invio di un form e con l'apertura di un div
  • maxnegri2036
  • 11 Dic 2021
  • Javascript
Risposte
0
Visite
1K
Javascript 11 Dic 2021
maxnegri2036
M
U
PHP bottone per invio mail o ritorno al form
  • uffre
  • 3 Nov 2019
  • PHP
Risposte
15
Visite
9K
PHP 7 Nov 2019
uffre
U
C
Come posso integrare il bottone "paga adesso" di paypal e un form php per invio dati?
  • Cirano86
  • 21 Dic 2015
  • PHP
Risposte
1
Visite
2K
PHP 21 Dic 2015
alexgentili
A
B
Problema form mail per invio doppio allegato
  • billdog
  • 25 Ott 2014
  • PHP
Risposte
1
Visite
2K
PHP 1 Nov 2014
marino51
A
Problema orario invio mail per form
  • Antonio Toio Mignano
  • 5 Lug 2014
  • PHP
Risposte
4
Visite
2K
PHP 5 Lug 2014
marino51
L
Aiuto per ultimazione form invio email
  • Lan
  • 5 Mar 2013
  • PHP
Risposte
3
Visite
2K
PHP 9 Mar 2013
Longo8
P
Form per invio mail
  • PinkBetta
  • 28 Set 2010
  • PHP
  • 2
Risposte
27
Visite
5K
PHP 6 Ott 2010
borgo italia
C
Form per invio immagini
  • carlitosteam
  • 25 Feb 2010
  • Javascript
Risposte
15
Visite
8K
Javascript 27 Feb 2010
softhare
P
ASP form invio dati + file per email
  • peogroup
  • 23 Lug 2009
  • Classic ASP
Risposte
4
Visite
7K
Classic ASP 27 Lug 2009
peogroup
P
G
Aiuto per creare un form di invio file
  • Galiant
  • 12 Nov 2008
  • Classic ASP
Risposte
3
Visite
3K
Classic ASP 13 Nov 2008
lukeonweb
M
Collegare iframe e form per l'invio
  • mooug
  • 23 Mar 2008
  • Javascript
Risposte
3
Visite
2K
Javascript 25 Mar 2008
lukeonweb
L
form immagini per il database
  • Laura2002
  • 18 Mag 2021
  • PHP
Risposte
0
Visite
941
PHP 18 Mag 2021
Laura2002
L
T
[PHP] Creare Honeypot per form contatti
  • Tom&Jerry
  • 26 Giu 2019
  • PHP
Risposte
10
Visite
2K
PHP 28 Giu 2019
mr.x
M
D
[WordPress] come fare per estrarre dati da un db MySQL tramite una form e visualizzare il risultato
  • dariotoby
  • 25 Dic 2018
  • WordPress
Risposte
0
Visite
3K
WordPress 25 Dic 2018
dariotoby
D
I
Guida/Tutorial configurare PHPMailer per inviare mails tramite contact form?
  • iTonto
  • 29 Nov 2018
  • PHP
Risposte
2
Visite
2K
PHP 29 Nov 2018
iTonto
I
N
[Java] Piccolo jform per calcolo totale da 2 campi i double
  • nunzio.rizzo74
  • 25 Ott 2018
  • Java
Risposte
0
Visite
1K
Java 25 Ott 2018
nunzio.rizzo74
N
M
[PHP] Framework per form complessi (configuratore prodotto)
  • mardes
  • 3 Ott 2018
  • PHP
Risposte
6
Visite
3K
PHP 17 Ott 2018
Max 1
S
[PHP] Aiuto creazione form php per completamento modello word
  • sagoch
  • 14 Apr 2018
  • PHP
Risposte
1
Visite
2K
PHP 16 Apr 2018
macus_adi
Z
[MySQL] Campi corretti per form...
  • zioweb
  • 20 Ago 2017
  • MySQL
Risposte
2
Visite
1K
MySQL 26 Ago 2017
zioweb
Z
[PHP] Form per creare filtro di ricerca su DB
  • sandropochi
  • 16 Mar 2017
  • PHP
Risposte
8
Visite
10K
PHP 19 Mar 2017
sandropochi
Condividi:
Facebook X (Twitter) LinkedIn WhatsApp e-mail Condividi Link
  • Home
  • Forum
  • Fare Web
  • PHP
  • Italiano
  • Termini e condizioni d'uso del sito
  • Policy Privacy
  • Aiuto
  • Home
Community platform by XenForo® © 2010-2024 XenForo Ltd. | Traduzione a cura di XenForo Italia
Menu
Accedi

Registrati

  • Home
  • Forum
    • Nuovi Messaggi
    • Cerca...
  • Novità
    • Featured content
    • Nuovi Messaggi
    • Ultime Attività
X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?

X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?