Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    [PHP] Recupero dati da un modulo

    Mi tocca (sigh!) passare da ASP a PHP causa server Linux e ho il problema di recuperare dati da un modulo.
    Nella pagina HTML ho una cosa del tipo
    codice:
    <FORM ACTION="elabora.php">
    <INPUT TYPE="text" NAME="Nome">
    <INPUT TYPE="text" NAME="Telefono">
    <INPUT TYPE="text" NAME="EMail">
    <TEXTAREA NAME="Messaggio"></TEXTAREA>
    </FORM>
    Premesso che mi è stato chiesto di usare SendMail, che cosa devo scrivere nel file ELABORA.PHP?
    Vi ringrazio anticipatamente.

  2. #2
    Moderatore di Server Apache L'avatar di marketto
    Registrato dal
    Sep 2001
    Messaggi
    5,858
    nel form devi specificare il metodo di invio, ovvero post o get:
    codice:
    <form action="elabora.php" method="post">


    su elabora.php tutto arriva nell'array $_POST:
    codice:
    <?php
    print_r($_POST);
    ?>


    think simple think ringo

  3. #3
    inserito il method nel form, la pagina elabora.php riceve in variabili $_POST i dati del form

    es:se hai un'imput con valore name="ciccio" la pagina elabora riceverà una variabile

    $_POST["ciccio"]

  4. #4
    Sì, suppongo che la differenza fra GET e POST sia la stessa che in ASP: nel primo metodo le coppie nome/valore vengono passate nella QueryString.
    Domani provo, poi vi faccio sapere, perché ad esempio non so come si va a capo con PHP, nel senso che non conosco l'analogo di
    codice:
    Response.Write("
    ")
    oppure di
    codice:
    Chr(13)

  5. #5
    Utente di HTML.it L'avatar di neida
    Registrato dal
    Feb 2005
    Messaggi
    1,478

  6. #6
    nl2br aggiunge i tag html. se per esempio in scrittura file vuoi fare un chr(13) devi utilizzare nelle parentesi \n

  7. #7
    Grassie, grassie. Ora sono al lavoro e farò le prove domani.

  8. #8
    L'indirizzo e-mail di chi deve ricevere i dati del modulo come lo metto in ELABORA.PHP?

  9. #9
    Beh, non è proprio banale scrivere un file ELABORA.PHP che prend dei dati da un form e li spedisce ad un indirizzo...
    In realtà tutto dipende da COSA vuoi far spedire:
    Diciamo che un file ELABORA.PHP estremamente banale potrebbe essere + o - fatto così:

    codice:
    <FORM ACTION="elabora.php" METHOD="post">
    <INPUT TYPE="text" NAME="Nome">
    <INPUT TYPE="text" NAME="Telefono">
    <INPUT TYPE="text" NAME="EMail">
    <TEXTAREA NAME="Messaggio"></TEXTAREA>
    </FORM>
    Codice PHP:
    <?php
      
    // Mi accerto che sia arrivato qualcosa
      
    if (isset($_POST)) {
         
    //Qui va inserito il destinatario
         
    $destinatario='destinatario@server.ext';

         
    /*Il mittente viene preso dal FORM. Qui puoi inserire eventualmente anche il CC e il BCC per delle copie*/
         
    $header 'To: '.$destinatario."\n";
         
    $header.= 'From: '.$_POST['EMail']."\n\n";

         
    //Questo è l'oggetto del messaggio
         
    $oggetto='Email dal form';

         
    //Questo è il corpo del messaggio
         
    $messaggio='Segue il contenuto di tutto cio che è arrivato dal FORM'."\n";
         
    $messaggio.=print_r($_POST,true);

         
    //Questo invia la mail
         
    mail($destinatario$oggetto$messaggio$header);
      }
    ?>
    Se ti serve qlkosa di più potente (tipo: allegati, mail in HTML o altro...) devi darci altre specifiche...

    Il punto (.) è l'operatore di concatenazione delle stringhe.
    Come avrai capito $messaggio.= corrisponde a $messaggio=$messaggio.

    C'è differenza in PHP tra l'apice (') e le virgolette ("): perciò attento. Se scrivi $messaggio.='\n'; verrà aggiunto una sbarra e una enne. Se scrivi $messaggio.="\n"; verrà aggiunto un accapo (chr 13).
    Salvatore De Bonis AKA Novice of Ricotta AKA NashCrash

  10. #10
    Ti ringrazio di cuore. Ora esco dal lavoro. Lunedì lo provo e poi ti faccio sapere.
    Grazie di nuovo!

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.