Visualizzazione dei risultati da 1 a 10 su 10

Discussione: Form

  1. #1

    Form

    Deve essere una banalità, ma ci sto impazzendo!
    Nella pagina contact.php ho messo questo form:

    codice:
    <?PHP
    if (isset($_POST['submit'])) {
    
    $opzione = $_POST['opzione'];
    
    $email = $_POST['email'];
    
    $nom = $_POST['nom'];
    $tel = $_POST['tel'];
    $info = $_POST['info'];
    $message = $_POST['message'];
    
    $to = "miamail@miosito.com";
    $subject = $opzione;
    $headers = "From:".$nom."\r\n";
    $message = "Nom: $nom\n\nTelephone: $tel\n\nE-mail: $email\n\n$info\n\n$message\n\n";
    
    if (mail($to,$subject,$message,$headers)) { echo '<div id="green">E-mail inviata</div>'; }
    
    } else {
    ?> 
    <div id="green">Vous souhaitez</div>
    <form name="modulo" method="post" action="contact.php" onSubmit="return ControllaMail()" >
    <div id="vendre">
    <input type="checkbox" name="opzione[]" value"Vendre" /> Vendre 
    </div>
    <div id="estimationv">
    <input type="checkbox" name="opzione[]" value"Obtenir une estimation du prix de vente" /> Obtenir une estimation du prix de vente
    </div>
    <div id="louer">
    <input type="checkbox" name="opzione[]" value"Louer" /> Louer
    </div>
    <div id="estimationl">
    <input type="checkbox" name="opzione[]" value"Obtenir une estimation du la valeur locative" /> Obtenir une estimation du la valeur locative
    </div>
    <div id="gerer">
    <input type="checkbox" name="opzione[]" value"Faire g&eacute;rer" /> Faire g&eacute;rer
    </div>
    <div id="conseil">
    <input type="checkbox" name="opzione[]" value"Obtenir des conseils" /> Obtenir des conseils
    </div>
    <div id="autre">
    <input type="checkbox" name="opzione[]" value"Autre" /> Autre
    </div>
    
    
    <span class="titleform">Merci de décrire votre bien ( nombre de pièces, surface, localisation......)</span>
    
    <textarea class="textarea" cols="71" rows="5" name="info"></textarea>
    
    <span class="titleform">Merci de laisser nous un message</span>
    
    <textarea class="textarea" cols="71" rows="5" name="message"></textarea>
    
    <input type="text" class="text" name="nom" value="Saissez votre nom" onfocus="this.value = '';" onblur="if(this.value == '') this.value = 'Saissez votre nom'" />
    
    <input type="text" class="text" name="tel" value="Saissez votre numero du t&eacute;l&eacute;phone" onfocus="this.value = '';" onblur="if(this.value == '') this.value = 'Saissez votre numero du t&eacute;l&eacute;phone'" />
    
    <input type="text" class="text" name="email" value="Saissez votre adresse mail" onfocus="this.value = '';" onblur="if(this.value == '') this.value = 'Saissez votre adresse mail'" />
    
    
    <input type="submit" class="button" value="Envoyer" />
    
    
    <span class="titleform">Nous vous contacterons à reception de votre message</span>
    
    </form>
    <?PHP } ?>
    Succede che non invia la mail e ricarica contact.php....... dove sbaglio?
    Grazie per i suggerimenti.
    En la habana hay una pila 'e locos!

  2. #2
    Restringo l'errore, ho capito da cosa viene ma non so come correggerlo:

    codice:
    [...]
    $opzione = $_POST['opzione'];
    $subject = $opzione;
    [...]
    if (mail($to,$subject,$message,$headers)) { echo '<div id="green">E-mail inviata</div>'; }
    [...] 
    <input type="checkbox" name="opzione[]" value"Vendre" /> Vendre
    Il punto é che il parametro $subject diventa uguale a $opzione che é un array e questo genera un errore nella funzione mail.

    Qualcuno sa come risolvere?
    En la habana hay una pila 'e locos!

  3. #3
    Inserisci all'inizio del tuo script:

    Codice PHP:
    error_reporting(E_ALL);
    ini_set('display_errors'1); 

  4. #4
    mail() expects parameter 2 to be string, array given in /mail.php on line 43

    Dove la linea 43 é appunto questa : $subject = $opzione;
    En la habana hay una pila 'e locos!

  5. #5
    Prova con:

    Codice PHP:
    $subject implode(", "$opzione); 

  6. #6
    Ho provato, ma nell'oggetto ($subject) mi scrive "on" e non il value che ho messo io.... perché?
    En la habana hay una pila 'e locos!

  7. #7
    Studiati questo codice:

    Codice PHP:
    <form method="post">
    <input type="checkbox" name="opzione[Valore 1]" checked="checked" />
    <input type="checkbox" name="opzione[Valore 2]" checked="checked"  />
    <input type="checkbox" name="opzione[Valore 3]" checked="checked"  />
    <input type="checkbox" name="opzione[Valore 4]" checked="checked"  />
    <input type="submit" />
    </form>
    <pre>
    <?php 
    print_r
    ($_POST);
    $_POST['opzione'] = (isset($_POST['opzione']) && is_array($_POST['opzione'])) ? $_POST['opzione'] : array();
    print(
    implode(', 'array_keys($_POST['opzione'])));
    ?>
    </pre>

  8. #8
    Me lo sono studiato ed applicato ma il risultato assurdo che mi da é questo:

    codice:
    onArray ( [opzione] => Array ( [3] => on
    Non riesco a capire cosa sia on? Da dove lo tira fuori??
    Dovrebbe restituirmi il value (che é una stringa di testo) del checkbox non la parola on!



    En la habana hay una pila 'e locos!

  9. #9

  10. #10
    Non l'avrei mai capito! Sei un grande!
    Grazie grazie grazie mille!


    En la habana hay una pila 'e locos!

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.