Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2012
    Messaggi
    35

    Il mio primo form contatti

    Salve a tutti.

    Sono appena 2 giorni che sto studiando il linguaggio php e mi sto cimentando, per provare, con un form di contatti che vorrei inserire in futuro su un sito.

    Nonostante diversi tentativi e diverse ricerche sul web, non sono riuscito a farlo funzionare.

    Il form l'ho creato in una pagina html che ho linkato al mio primissimo documento php.

    La pagina non ha dichiarazione doctype perchè, appunto, è una pagina prova sulla quale mi sto esercitando.

    Per il form html il codice è:

    <form action="./form.php" method="POST">

    <table border="0">
    <tr>
    <td>Nome</td>
    <td><input type="text" name="Nome" size="30"></td>
    </tr>
    <tr>
    <td>Età</td>
    <td><input type="text" name="Anni" size="5"></td>
    </tr>
    <tr>
    <td>Città</td>
    <td><input type="text" name="City" size="30"></td>
    </tr>
    <tr>
    <td>Indirizzo</td>
    <td><input type="text" name="Address" size="30"></td>
    </tr>
    <tr>
    <td valign="top">Note</td>
    <td><textarea rows="6" name="Note" cols="50"></textarea></td>
    </tr>
    <tr>
    <td colspan="2" valign="bottom" align="center" height="30">
    <input type="submit" value="Invia">
    <input type="reset" value="Cancella"></td>
    </tr>
    </table>

    </form>


    Mentre la pagina in php è:

    <?php

    // INDIRIZZO DESTINATARIO
    $to = “assocase@yahoo.it”;

    // OGGETTO EMAIL
    $subject = “Modulo proveniente dal sito”;

    // CORPO MESSAGGIO
    $body = “Contenuto del modulo:\n\n”;
    $body .= “Nome: ” . trim(stripslashes($_POST["Nome"])) . “\n”;
    $body .= “Età: ” . trim(stripslashes($_POST["Anni"])) . “\n”;
    $body .= “Città: ” . trim(stripslashes($_POST["City"])) . “\n”;
    $body .= “Indirizzo: ” . trim(stripslashes($_POST["Indirizzo"])) . “\n”;
    $body .= “Note: ” . trim(stripslashes($_POST["Note"])) . “\n”;

    // INTESTAZIONI SUPPLEMENTARI
    $headers = “From: Modulo utenti<modulo@sito.it>”;

    // 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.”;

    }

    ?>

    Da quel che ho letto, il problema potrebbe dipendere dalla configurazione di php (che però non ho ancora capito dove e in che modo dover modificare per rendere funzionante il tutto).

    Come ho già premesso,sono un vero e proprio neofita (ma con tanta voglia di imparare) e, ovviamente, sarò gratissimo per ogni aiuto che mi verrà.

    alx

  2. #2
    Utente di HTML.it L'avatar di weit
    Registrato dal
    Jul 2011
    Messaggi
    55
    Ciao, immagino che tu esegua lo script in locale, quindi immagino che tu non sia fornito di server email, o comunque non abbia cambiato il file php.ini.
    A questo punto due cose:
    1) Ricevi un errore? Se si, che errore ricevi?
    2) Prova a caricarlo su di un host online.

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2012
    Messaggi
    35
    Ciao e grazie.

    Ho appena caricato su un host online (utilizzo aruba) il tutto.

    L'errore che mi dà è il seguente:

    Parse error: syntax error, unexpected '@' in D:\Inetpub\webs\asso-casevacanzecom\form.php on line 4

    Da ignorante, immagino che si riferisca alla @ contenuta dopo l'istruzione "if" nella funzione email (anche perchè è l'unica @ del codice che non appartiene a un indirizzo email).

    Oppure non ho idea.

    Qui si trova la pagina:

    http://www.asso-casevacanze.com/formpage.html

    Grazie ancora per l'aiuto.

    alx17

  4. #4
    Utente di HTML.it L'avatar di weit
    Registrato dal
    Jul 2011
    Messaggi
    55
    Umh... Scusa, ma perchè utilizzi quei caratteri, al posto di utilizzare dei semplici apici?

    Prova a fare:

    Codice PHP:
    <?php

    // INDIRIZZO DESTINATARIO
    $to "assocase@yahoo.it";

    // OGGETTO EMAIL
    $subject "Modulo proveniente dal sito";

    // CORPO MESSAGGIO
    $body "Contenuto del modulo:\n\n";
    $body .= "Nome: " trim(stripslashes($_POST["Nome"])) . "\n";
    $body .= "Età: "trim(stripslashes($_POST["Anni"])) . "\n";
    $body .= "Città: " trim(stripslashes($_POST["City"])) . "\n";
    $body .= "Indirizzo: " trim(stripslashes($_POST["Indirizzo"])) . "\n";
    $body .= "Note: " trim(stripslashes($_POST["Note"])) . "\n";

    // INTESTAZIONI SUPPLEMENTARI
    $headers "From: Modulo utenti<modulo@sito.it>";

    // 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.";

    }

    ?>

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2012
    Messaggi
    35
    Ciao e grazie mille!!!

    Il problema era solo questo.
    Avevo iniziato a lavorare sulla cosa su blocco note ma poi, nelle varie prove, mi ero trasferito su word senza poi ricordarmi di ritrasferire il tutto di nuovo su notes.

    Mi sei stato utilissimo.

    Grazie ancora.

    alxs17

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.