• User Newbie

    CIAO
    ho provato ha modificare sia il codice html che quello php, riesco a far partire correttamente la mail che pero arriva tutta erra ossia non rispetta il semplice output che vorrei ricevere ma in realta arriva una mail lunghissima con tutti i dati a casaccio a aprte la prima riga della tabella
    potete dare un occhio a dove ho sbagliato qualcosa?:bho::bho:

    [html]<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html><head><title>modulo2</title></head>
    <body>
    <div style="text-align: center;">
    <form action="invio2.php" method="post" id="modulo2">
    <div style="text-align: center;"></div>
    <table style="text-align: left; margin-left: auto; margin-right: auto; height: 254px; width: 811px;">
    <tbody>
    <tr>
    <td style="font-family: Arial; font-weight: bold; width: 162px;">nome
    della squadra</td>
    <td colspan="3" rowspan="1" style="width: 206px;"><label> <input name="mail" id="squadra"> </label></td>
    </tr>
    <tr>
    <td style="width: 206px;" colspan="1" rowspan="1"></td>
    <td style="text-align: center; font-family: Arial; font-weight: bold;" colspan="1">vende</td>
    <td style="text-align: center; font-family: Arial; font-weight: bold;" colspan="1">offre</td>
    <td style="text-align: center; font-family: Arial; font-weight: bold;">prezzo</td>
    </tr>
    <tr>
    <td style="font-family: Arial; width: 162px; text-align: right;">portiere</td>
    <td style="width: 200px; text-align: center;"><label>
    <input name="portiere" id="portiere" type="text"> </label></td>
    <td style="width: 200px; text-align: center;"><label>
    <input name="portiere1" id="portiere1"> </label></td>
    <td style="width: 206px; text-align: center;"><label>
    <input name="prezzopo" id="prezzopo"> </label></td>
    </tr>
    <tr>
    <td style="font-family: Arial; width: 162px; text-align: right;">1
    difensore</td>
    <td style="width: 200px; text-align: center;"><label>
    <input name="gioca02" id="gioca02">
    </label></td>
    <td style="width: 200px; text-align: center;"><label>
    <input name="gioca02n" id="gioca02n"> </label></td>
    <td style="width: 206px; text-align: center;"><label>
    <input name="pgioca02" id="gioca02"> </label></td>
    </tr>
    <tr>
    <td style="font-family: Arial; width: 162px; text-align: right;">2
    difensore</td>
    <td style="width: 200px; text-align: center;"><label>
    <input name="gioca03" id="gioca03" type="text">
    </label></td>
    <td style="width: 200px; text-align: center;"><label>
    <input name="gioca03n" id="gioca03n"> </label></td>
    <td style="width: 206px; text-align: center;"><label>
    <input name="pgioca03" id="pgioca03"> </label></td>
    </tr>
    <tr>
    <td style="font-family: Arial; width: 162px; text-align: right;">1
    c.campista</td>
    <td style="width: 200px; text-align: center;"><label>
    <input name="gioca04" id="gioca04" type="text">
    </label></td>
    <td style="width: 200px; text-align: center;"><label>
    <input name="gioca04n" id="gioca04n"> </label></td>
    <td style="width: 206px; text-align: center;"><label>
    <input name="pgioca04" id="pgioca04"> </label></td>
    </tr>
    <tr>
    <td style="font-family: Arial; width: 162px; text-align: right;">2
    c.campista</td>
    <td style="width: 200px; text-align: center;"><label>
    <input name="gioca05" id="gioca05" type="text">
    </label></td>
    <td style="width: 200px; text-align: center;"><label>
    <input name="gioca05n" id="gioca05n"> </label></td>
    <td style="width: 206px; text-align: center;"><label>
    <input name="pgioca05" id="pgioca05"> </label></td>
    </tr>
    <tr>
    <td style="font-family: Arial; width: 162px; text-align: right;">attaccante</td>
    <td style="width: 200px; text-align: center;"><label>
    <input name="gioca06" id="gioca06">
    </label></td>
    <td style="width: 200px; text-align: center;"><label>
    <input name="gioca06n" id="gioca06n"> </label></td>
    <td style="width: 206px; text-align: center;"><label>
    <input name="pgioca06" id="pgioca06"> </label></td>
    </tr>
    <tr>
    <td style="width: 162px;"><label></label>
    </td>
    <td style="width: 200px;"><label><input name="submit" id="submit" value="Invia" type="submit"> <input name="cancella" id="cancella" value="Ripristina" type="reset">
    </label></td>
    <td style="width: 200px;"></td>
    <td style="width: 206px;"></td>
    </tr>
    </tbody>
    </table>
    </form>
    </div>
    </body>
    </html>
    [/html]

    [php]<?php
    if (trim($_POST['mail']) != "") {
    // indirizzo di chi riceve la mail è sottolineato ma nel codice non sottilineatelo
    $to = " \n INDIRIZZO DI POSTA ";
    $headers = "From: " . $_POST['mail'] . "\n";
    // soggetto della mail
    $subject = " mercato ";

    // corpo messaggio
    $body = "Contenuto del modulo:\n\n";

    $body .= "Inviata da: " . trim(stripslashes($_POST["mail"])) . "\n"; //indirizzo e-mail che manda la mail, come si vede riprende l'id del campo destinato all'inserimento della mail del mittente

    $body .= " portiere " . trim(stripslashes($_POST["portiere"])) . " portiere 1" . trim(stripslashes($_POST["portiere1"])) ." prezzo " . trim(stripslashes($_POST["prezzopo"])) ."\n"; //oggetto del messaggio
    $body .= " difensore " . trim(stripslashes($_POST["gioca02"])) . $body .= " difensore 1 " . trim(stripslashes($_POST["gioca02n"])) .$body .= " prezzo " . trim(stripslashes($_POST["pgioca02"])) . "\n"; //oggetto del messaggio
    $body .= " difensore " . trim(stripslashes($_POST["gioca03"])) . $body .= " difensore 1 " . trim(stripslashes($_POST["gioca03n"])) .$body .= " prezzo " . trim(stripslashes($_POST["pgioca03"])) . "\n"; //oggetto del messaggio
    $body .= " c.campista " . trim(stripslashes($_POST["gioca04"])) . $body .= " c.campista" . trim(stripslashes($_POST["gioca04n"])) .$body .= " prezzo " . trim(stripslashes($_POST["pgioca04"])) . "\n"; //oggetto del messaggio
    $body .= " c.campista " . trim(stripslashes($_POST["gioca05"])) . $body .= " c.campista" . trim(stripslashes($_POST["gioca05n"])) .$body .= " prezzo " . trim(stripslashes($_POST["pgioca05"])) . "\n"; //oggetto del messaggio
    $body .= " attaccante " . trim(stripslashes($_POST["gioca06"])) . $body .= " attaccante" . trim(stripslashes($_POST["gioca06n"])) .$body .= " prezzo " . trim(stripslashes($_POST["pgioca06"])) . "\n"; //oggetto del messaggio

    $body .= "testo: " . trim(stripslashes($_POST["body"])) . "\n"; //messaggio

    // invio mail
    mail($to, $subject, $body, $headers); // SE L'INOLTRO E' ANDATO A BUON FINE...

    echo "La mail è stata inviata con successo. Bene";

    } else {// altrimenti
    echo "Devi compilare la form prima di inviare.";

    }

    ?> [/php]


  • ModSenior

    Ciao accio1985,

    Non ho capito qual'è il problema che riscontri.


  • User Newbie

    @Thedarkita said:

    Ciao accio1985,

    Non ho capito qual'è il problema che riscontri.

    La mail parte correttamente ma arrivano in maniera molto csasuale molti piu dati ossia gtli stessi dati arrivano in una mail lunghissuma impaginata in maniera del tutto casuale.
    A me basta riportare i dati cosi come nel form di inserimento.


  • ModSenior

    Prova cosi:
    [php]
    <?php
    if (trim($_POST['mail']) != "") {
    // indirizzo di chi riceve la mail è sottolineato ma nel codice non sottilineatelo
    $to = " \n INDIRIZZO DI POSTA ";
    $headers = "From: " . $_POST['mail'] . "\n";
    // soggetto della mail
    $subject = " mercato ";

    // corpo messaggio
    $body = "Contenuto del modulo:\n\n";

    $body .= "Inviata da: " . trim(stripslashes($_POST["mail"])) . "\n"; //indirizzo e-mail che manda la mail, come si vede riprende l'id del campo destinato all'inserimento della mail del mittente

    $body .= " portiere " . trim(stripslashes($_POST["portiere"])) . " portiere 1" . trim(stripslashes($_POST["portiere1"])) ." prezzo " . trim(stripslashes($_POST["prezzopo"])) ."\n"; //oggetto del messaggio
    $body .= " difensore " . trim(stripslashes($_POST["gioca02"]))." difensore 1 " . trim(stripslashes($_POST["gioca02n"]))." prezzo " . trim(stripslashes($_POST["pgioca02"])) . "\n"; //oggetto del messaggio
    $body .= " difensore " . trim(stripslashes($_POST["gioca03"]))." difensore 1 " . trim(stripslashes($_POST["gioca03n"]))." prezzo " . trim(stripslashes($_POST["pgioca03"])) . "\n"; //oggetto del messaggio
    $body .= " c.campista " . trim(stripslashes($_POST["gioca04"]))." c.campista" . trim(stripslashes($_POST["gioca04n"]))." prezzo " . trim(stripslashes($_POST["pgioca04"])) . "\n"; //oggetto del messaggio
    $body .= " c.campista " . trim(stripslashes($_POST["gioca05"]))." c.campista" . trim(stripslashes($_POST["gioca05n"]))." prezzo " . trim(stripslashes($_POST["pgioca05"])) . "\n"; //oggetto del messaggio
    $body .= " attaccante " . trim(stripslashes($_POST["gioca06"]))." attaccante" . trim(stripslashes($_POST["gioca06n"]))." prezzo " . trim(stripslashes($_POST["pgioca06"])) . "\n"; //oggetto del messaggio

    $body .= "testo: " . trim(stripslashes($_POST["body"])) . "\n"; //messaggio

    // invio mail
    mail($to, $subject, $body, $headers); // SE L'INOLTRO E' ANDATO A BUON FINE...

    echo "La mail è stata inviata con successo. Bene";

    } else {// altrimenti
    echo "Devi compilare la form prima di inviare.";

    }

    ?>
    [/php]


  • User Newbie

    Edit: tutto risolto, grazie per l'aiuto non ci sarei riuscito!

    P.S. c'è un metodo per far apparire nella mail in grassetto i dati inseriti nei campi del form e lasciare testo normale quelli descrittivi?


  • ModSenior

    Aggiungi agli header dell'email che è l'email è in formato html, e metti i tag html per farlo in grassetto.


  • User Newbie

    Grazieeeeeeeeeeeeeeeeeeeeeeeeeee!!!!


  • User Newbie

    Scusa ma non ho capito:
    dovrei modificare il codice del file php? e come dovrei farlo?
    Vorrei ricevere in grassetto il contenuto delle celle del modulo.
    Grazie


  • User Newbie

    Ciao,
    questo form mi è stato utile, sul primo sito dove l'ho riprodotto funziona benissimo, poi ho provato a farne uno uguale identico in un'altro sito e improvvisamente non funziona più ho copiato e in collato il codice ho tenuto gli stessi nomi dei campi e tutto ho cambiato solo la mail solo che non funziona potete aiutarmi?


  • Consiglio Direttivo

    Ciao sbabe e benvenuto nel forum GT. 🙂

    Certo che i nomi dei file siano giusti ed anche i percorsi?

    Nel caso prova a postare il codice e vediamo dove potrebbe essere il problema. 😉


  • User Newbie

    Ok questa è la parte di html

    [html]<form action="messaggio.php" method="post" id="modulo">

    Il Suo indirizzo e-mail*<br />
    <label>
    <p> <input name="mail" type="text" id="mail" /><br /></p>
    </label>

    Messaggio* <br />

    <p><textarea name="body" cols="30" rows="5" id="body"></textarea> <br /></p>

    <label>
    <input type="submit" name="submit" id="submit" value="Invia" /> </label>

    </form> [/html]

    Mentre questa è la parte di php

    [php]<?php
    // indirizzo di chi riceve la mail è sottolineato ma nel codice non sottilineatelo
    if ((trim($_POST['mail']) != "") && (trim($_POST['body']) != "")) { //questo fa si che se i campi "oggetto" e "messaggio" sono vuoti la form non invia nessuna mail
    $to = "[email protected]";
    $headers = "From: " . $_POST['mail'] . "\n";

    // corpo messaggio
    $body = "Messaggio dal sito:\n\n";

    $body .= "Inviata da: " . trim(stripslashes($_POST["mail"])) . "\n"; //indirizzo e-mail che manda la mail, come si vede riprende l'id del campo destinato all'inserimento della mail del mittente

    $body .= "testo: " . trim(stripslashes($_POST["body"])) . "\n"; //messaggio

    // invio mail
    mail($to, $subject, $body, $headers); // SE L'INOLTRO E' ANDATO A BUON FINE...

    echo "<center>La mail è stata inviata con successo. Grazie per averci contattato</center>";

    } else {// altrimenti
    echo "<center>Deve compilare la form prima di inviare.</center>";

    }

    ?>[/php]

    Comunque penso di aver sbagliato qualcosa nel php solo che non capisco cos'è se potete aiutarmi mi fate un favore grazie. 🙂


  • Consiglio Direttivo

    Vedo che manca l'oggetto della mail, intanto modifica il file messaggio.php così:
    [php]<?php

    if ((trim($_POST['mail']) != "") && (trim($_POST['body']) != "")) {
    $to = "[email protected]";
    $headers = "From: " . $_POST['mail'] . "\r\n";
    $subject = "Oggetto della mail";

    // corpo messaggio
    $body = "Messaggio dal sito:\n\n";

    $body .= "Inviata da: " . trim(stripslashes($_POST["mail"])) . "\n";

    $body .= "testo: " . trim(stripslashes($_POST["body"])) . "\n"; //messaggio

    mail($to, $subject, $body, $headers);

    echo "<center>La mail è stata inviata con successo. Grazie per averci contattato</center>";

    } else {// altrimenti
    echo "<center>Deve compilare la form prima di inviare.</center>";

    }

    ?> [/php]Dato che usi una casella alice ti consiglio di controllare la casella dalla webmail e controllare la cartella posta indesiderata, probabile che viene considerata spam e che non te la fa scaricare dal client. 😉


  • User Newbie

    L'oggetto non c'è perché non ho messo il campo oggetto va messo lo stesso?


  • User Newbie

    Niente ho provato ad aggiungere il subject però quanndo clicco su invia mi viene fuori una pagina bianca non mi viene fuori il messaggio di errore


  • User

    Dopo tre anni dall'apertura di questo post, sono qui a parlare di questo form contatti molto utile, perchè lo sto utilizzando sul mio sito.
    Veniamo al problema: lo script va alla grande, ricevo le mail, ed ho aggiunto altri elementi a quelli presenti nello script (menu a tendina e checkbox) che funzionano.
    Allora che vuoi? Direte voi 🙂
    Volevo migliorarlo, aggiungendovi un redirect ad una pagina del sito, qualche secondo dopo aver visualizzato il messaggio di avvenuto inoltro dei dati. Preferibilmente questa pagina potrebbe essere sempre quella dei contatti, però con i dati azzerati.
    Il problema è che non ne capisco molto di php...:?
    Che ne pensate?
    Chissà se ci sarà qualcuno che leggerà questo msg dopo così tanto tempo...
    spero di si :).

    Cmq grazie a pickadilly e a tutti, siete fantastici :ciauz:

    BluesMan


  • User

    Credo di aver risolto.
    Per chi avesse bisogno:

    è 1 redirect interno al sito che avviene dopo 3 secondi
    ho inserito nell'<head> della pagina invio.php questa stringa:

    <meta http-equiv="refresh" content="3;URL=pagina.html" />

    ciao a tutti:ciauz:.

    BluesMan


  • User

    @BluesMan said:

    Credo di aver risolto.
    Per chi avesse bisogno:

    è 1 redirect interno al sito che avviene dopo 3 secondi
    ho inserito nell'<head> della pagina invio.php questa stringa:

    <meta http-equiv="refresh" content="3;URL=pagina.html" />

    ciao a tutti:ciauz:.

    BluesMan

    Secondo me non ti conviene molto perchè se uno si addormenta mentre scrive sulla tastiera proprio all'ultimo textinput gli si ricarica la pagina e perde tutte le info...


  • User

    Si in effetti, come metodo è 1 po drastico, però è sempre meglio della pagina di "messaggio inoltrato" statico, che ti costringe a tornare indietro manualmente.
    Comunque, accetto qualsiasi seggerimento :D.
    Hai qualche idea?

    Ciao
    BluesMan


  • User Newbie

    Ragazzi avrei bisogno di una mano!
    Ho utilizzato lo script da voi proposto. La mail la invia, ma quando la ricevo tutti i campi sono vuoti (ovvero "")! Ho tolto l'if iniziale (farò dopo una validazione lato client) altrimenti mi andava subito nel ramo else. Secondo voi da cosa può dipendere?


  • User Newbie

    Ciao! Io sto provando ad usare il form che c'è nella prima pagina di questo post e funziona tutto alla grande.
    Vorrei solo sapere come faccio a far si che oltre all'indirizzo che ho messo nel campo "$to=", arrivi una mail anche all'indirizzo di chi si registra.
    Ho provato a scrivere "$to= $mail;" ma non va...

    Mi potete aiutare?