Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2006
    Messaggi
    449

    Script PHP non trasmette alcuni dati

    Devo creare un form per la richiesta di certificati. Questo il codice:
    codice:
    <?php
    if(isset($_POST['name']) && isset($_POST['email']) && isset($_POST['msg']) && isset($_POST['uso'])){
    // indirizzo e-mail destinatario
    $receiverMail   = "indirizzo@mail.it";
    // pulizia dei dati inseriti
    $name   = ltrim(rtrim(strip_tags(stripslashes($_POST['name']))));
    $email = ltrim(rtrim(strip_tags(stripslashes($_POST['email']))));
    $msg = ltrim(rtrim(strip_tags($_POST['msg'])));
    // lettura dell'indirizzo IP
    $ip = getenv("REMOTE_ADDR");
    // formattazione del messaggio ( \n per le messe a capo )
    // $msgformat   = "Messaggio da: $name ($ip)\nEmail: $email\n\n$msg";
    $msgformat   = "Mittente: $name \nIP del mittente: ($ip)\nE-mail: $email\n$msg \ncertificato: $uso";
    // verifica campi obbligatori
    if(empty($name) || empty($email) || empty($msg)) {
    echo "<h3>Il messaggio non &#232; stato inviato</h3>
    <h3>Si prega di compilare tutti i campi</h3>"; }
    //verifica l'indirizzo mail
    elseif(!ereg("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email)) {
    echo "<h3>Il messaggio non &#232; stato inviato</h3>
    <h3>L'indirizzo e-mail indicato non &#232; valido</h3>"; }
    else{
    //invio del messaggio
    mail($receiverMail, $subject, $msgformat, "From: $name <$email>");
    echo "<h3>Il messaggio &#232; stato inviato correttamente</h3>
    <h3>Nei limiti del possibile, 
     risponderemo entro 24 ore</h3>
    <h3>Grazie di averci scritto</h3>";
    }
    }
    else{
    // metti il form
    $self=$_SERVER['index.php?pagina=informazioni'];
    echo <<<FRM
    <h2>Richiesta informazioni</h2>
    <h3>Riempire i campi richiesti 
     e premere il pulsante "Invia"</h3>
    
    
    
    <form action="$self" method="post">
    Nome e cognome:
    
    
    <input name="name" size="50" maxlength="40" />
    
    
    
    
    Indirizzo e-mail:
    
    
    <input name="email" size="50" maxlength="40" />
    
    
    
    
    Quali informazioni si desiderano? 
    
    
    <textarea name="msg" cols="50" rows="12"></textarea>
    
    
    
    
    ad uso
    <select name="uso">
    <option value="assegni familiari">assegni familiari
    <option value="assistenza sanitaria">assistenza sanitaria
    <option value="sussidio scolastico">sussidio scolastico
    <option value="borsa di studio">borsa di studio
    <option value="libretto di lavoro">libretto di lavoro
    <option value="rinvio obblighi di leva">rinvio obblighi di leva
    <option value="altro (usi consentiti dalla legge)">altro (usi consentiti dalla legge)
    </select>
    
    
    
    <input type="submit" value="Invia" />
    <input type="reset" value="Cancella" />
    </form>
    FRM;
    }
     ?>
    Ora, il messaggio arriva correttamente a destinazione, ma la voce uso
    e differenza dell ealtre è vuota. Ora, sospetto che la option value
    sia male impostata, cosicché non trasmette il suo valore. Suggerimenti?

    Grazie
    M.

  2. #2
    Primo l'option va chiuso ogni volta </option>
    value non mettrlo. Uso assumerà valore della selezione

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2006
    Messaggi
    449
    Ho apportato le correzioni. Il codice è senz'altro
    più corretto, ma la mail che arriva continua a non portare
    la scelta effettuata. Infatti contiene:
    codice:
    Mittente: ffffffffffffffff 
    IP del mittente: (80.171.232.52)
    E-mail: oioiuoiu@poipoi.it
    ggggggggggggggggggggggg 
    certificato:
    Cioè la voce selezionata nel menu a discesa
    non voene in effetti trasmessa...

    Grazie
    M.

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.