• Bannato User

    Principiante

    Ciao a tutti sono uno studiente informatico conosco il lunguaggio c++ e ho letto che il php è molto simile così sto imparando a usarlo, solo che ho un problema cho creato una pagina con un form:

    <form method="POST" action="save.php">
    <p align="center" style="margin-top: 0; margin-bottom: 0">Nome:     
    <input type="text" name="nome" size="20"></p>
    <p style="margin-top: 0; margin-bottom: 0"></p>
    <p align="center" style="margin-top: 0; margin-bottom: 0">Cognome:
    <input type="text" name="cognome" size="20"></p>
    <p align="center" style="margin-top: 0; margin-bottom: 0">e-mail:      
    <input type="text" name="email" size="20"></p>
    <p align="center" style="margin-top: 0; margin-bottom: 0"> </p>
    <p align="center" style="margin-top: 0; margin-bottom: 0">Messaggio:</p>
    <p align="center" style="margin-top: 0; margin-bottom: 0">
    <textarea rows="7" name="messaggio" cols="53">Scrivi qui il tuo messaggio...</textarea></p>
    <p align="center" style="margin-top: 0; margin-bottom: 0">
    <input type="submit" value="Invia" name="B1"></p>
    </form>

    e poi ho creato la pagina che dovrebbe ricevere i dati spediti dal form:

    <?php

    $nome = $_POST('nome');
    $cognome = $_POST('cognome');
    $email = $_POST('email');
    $messaggio = $_POST('testo');

    echo "$nome";
    echo "$cognome";
    echo "$email";
    echo "$messaggio";
    ?>

    ma mi da errore e non funziona, qualcuno mi può aiutare? grazie


  • Super User

    Ciao mistersimpson e benvenuto nel forum GT,
    per indicare gli elementi in un array in php non si usano le parentesi tonde ma quelle quadre.
    Quindi devi trasformare:
    $nome=$_POST('nome');
    in
    $nome=$_POST['nome'];

    E così anche per gli altri campi POST 😉
    Ciao!


  • Bannato User

    Ora sto cercando di inviare il tutto x email, ma mi da questo errore:

    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:\PHP\Sito\save.php on line **20

    **sapete come risolvere?


  • Super User

    Quello è un errore relativo alla configurazione del server SMTP nel file php.ini.
    Apri con un editor testuale quel file e imposta i dati del tuo provider di posta elettronica:

    ini_set("SMTP","mail..");
    //metti come secondo parametro l'indirizzo del server SMTP

    ini_set("smtp_port","25");
    //metti come secondo parametro il la porta del server SMTP

    ini_set("sendmail_from","mittente@mail.***");
    //metti come secondo parametro l'indirizzo e-mail del mittente

    Ciao!


  • Bannato User

    ho configurato il file php.ini in questo modo:

    [mail function]
    ; For Win32 only.
    SMTP = out.alice.it
    smtp_port = 25
    ; For Win32 only.
    sendmail_from = *****@alice.it

    in **** c'è il mio user

    ma non funziona errore:

    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:\PHP\Sito\save.php on line **20

    **grazie