patriziou Inviato 7 Dicembre 2014 Segnala Condividi Inviato 7 Dicembre 2014 ciao a tutti ragazzi ho un problema con questo form nella parte del php mi spiego meglio: <form action="riuscito.php" method="POST" content_type="multipart/alternative" enctype="multipart/form-data" target="_blank"> <p><span>Oggetto</span><input class="contact" type="text" name="oggetto" value="" /></p> <p><span>E-mail</span><input class="contact" type="text" name="email" value="" /></p> <p><span>Messaggio</span><textarea class="contact textarea" rows="8" cols="50" name="messaggio"></textarea></p> <p><img src="captcha.php" /><br/><br/> Inserisci il codice che vedi: <input type="text" name="cpt" /> <p style="padding-top: 15px"><span> </span> <input class="submit" type="submit" name="submit" value="Invia" /></p> </form> codice php: <?php if (isset($_POST['submit'])) { $oggetto=$_POST['oggetto']; $email=$_POST['email']; $messaggio=$_POST['messaggio']; if (!empty($oggetto)) { if (!empty($email)) { if (!filter_var($email, FILTER_VALIDATE_EMAIL)) { if (!empty($messaggio)) { if($_SESSION["cpt"]=$_POST["cpt"]) { $testo_del_messaggio="Oggetto: $oggetto\n"; $testo_del_messaggio.="Email: $email\n"; $testo_del_messaggio.="Messaggio: $messaggio\n"; $esito=mail("esempio@mail.com","Messaggio di $nome ($email)", $testo_del_messaggio); if ($esito) { echo "Esito: Messaggio inviato, ripsonderemo appena possibile!"; } else { echo "Errore: Non è stato possibile inviare il messaggio!"; } } else { echo "Errore: Il Codice di verifica non è corretto!"; } } } else { echo "Errore: Manca il Messaggio!"; } } else { echo "Errore: Formato Email non corretto!"; } } else { echo "Errore: Manca un indirizzo Email!"; } } else { echo "Errore: Manca l' oggetto!"; } ?> Praticamente dopo aver compilato tutti i campi mi dà errore manca il messaggio, nonostante sia stato compilato quel modulo, ho provato anche a cambiare if (!empty($messaggio)) in if ($messaggio!= "") o diverso da una variabile vuota ma niente, qual è il problema? Grazie Link al commento Condividi su altri siti Altre opzioni di condivisione...
pix Inviato 8 Dicembre 2014 Segnala Condividi Inviato 8 Dicembre 2014 sono sbagliate le parentesi graffe. in generale annidare così gli if rende il codice poco gestibile e poco leggibile. puoi ottenere lo stesso risultato senza che ti si incrocino gli occhi.... <?php if (isset($_POST['submit'])) { $oggetto=$_POST['oggetto']; $email=$_POST['email']; $messaggio=$_POST['messaggio']; $errore = ""; if (!$oggetto) { $errore .= "Errore: Manca l' oggetto!<br>"; } if (!$email) { $errore .= "Errore: Manca un indirizzo Email!<br>"; } elseif(!filter_var($email, FILTER_VALIDATE_EMAIL)) { $errore .= "Errore: Formato Email non corretto!<br>"; } if (!$messaggio) { $errore .= "Errore: Manca il Messaggio!<br>"; } if($_SESSION["cpt"] != $_POST["cpt"]) { $errore .= "Errore: Il Codice di verifica non è corretto!"; } if(!$errore) { $testo_del_messaggio="Oggetto: $oggetto\n"; $testo_del_messaggio.="Email: $email\n"; $testo_del_messaggio.="Messaggio: $messaggio\n"; $esito=mail("esempio@mail.com","Messaggio di $nome ($email)", $testo_del_messaggio); if ($esito) { echo "Esito: Messaggio inviato, risponderemo appena possibile!"; } else { echo "Errore: Non è stato possibile inviare il messaggio!"; } } else { echo $errore; } } ?> An a tuesday keeps the doctor away. proud member of < noi finti professionisti > club - tessera 044 Link al commento Condividi su altri siti Altre opzioni di condivisione...
patriziou Inviato 8 Dicembre 2014 Autore Segnala Condividi Inviato 8 Dicembre 2014 Grazie mille! non pensavo che una costruzione del genere potesse dare dei problemi di intesa del codice. Grazie ancora Link al commento Condividi su altri siti Altre opzioni di condivisione...
Messaggi raccomandati
Archiviato
Questa discussione è archiviata e chiusa a future risposte.