PDA

Visualizza la versione completa : Form html


frozzen
18-12-2019, 10:58
Buongiorno a tutti, io ho questo form ma non riesco a collegare il file in php che sono riuscito a comporre.. non riesco a inviare i dati e richiamare il messaggio di invio riuscito o non riuscito.. qualcuno riesce a darmi una mano? grazie mille

CODICE FORM HTML


<div class="u-form u-form-1"><form action="mail.php" method="POST" class="u-clearfix u-form-spacing-15 u-form-vertical u-inner-form" source="custom">
<div class="u-form-group u-form-name">
<label for="name-3d90" class="u-form-control-hidden u-label">Nome</label>
<input type="text" placeholder="Inserisci il tuo Nome" id="name-3d90" name="name" class="u-border-1 u-border-grey-30 u-input u-input-rectangle u-white u-input-1" required="">
</div>


<div class="u-form-email u-form-group">
<label for="email-3d90" class="u-form-control-hidden u-label">Email</label>
<input type="email" placeholder="Inserisci un indirizzi email valido" id="email-3d90" name="email" class="u-border-1 u-border-grey-30 u-input u-input-rectangle u-white u-input-2" required="">
</div>
<div class="u-form-group u-form-phone">
<label for="phone-3d90" class="u-form-control-hidden u-label">Telefono</label>
<input type="tel" pattern="\+?\d{0,2}[\s\(\-]?([0-9]{3})[\s\)\-]?([\s\-]?)([0-9]{3})[\s\-]?([0-9]{2})[\s\-]?([0-9]{2})" placeholder="Inserisci il tuo numero (es. +39 00000000)" id="phone-3d90" name="phone" class="u-border-1 u-border-grey-30 u-input u-input-rectangle u-white u-input-3"required="">
</div>
<div class="u-form-group u-form-message">
<label for="message-3d90" class="u-form-control-hidden u-label">Messaggio</label>
<textarea placeholder="Inserisci il tuo messaggio" rows="4" cols="50" id="message-3d90" name="message" class="u-border-1 u-border-grey-30 u-input u-input-rectangle u-white u-input-4" required=""></textarea>
</div>
<div class="u-form-agree u-form-group">
<input type="checkbox" id="agree-3d90" name="agree" class="u-agree-checkbox" required="" style="font-weight: 400; font-style: italic;">
<label for="agree-3d90" class="u-agree-label u-label">Accetto i
<a href="#">Termini di servizio</a>
</label>
</div>
<div class="u-form-group u-form-submit">
<a href="#" class="u-btn u-btn-submit u-button-style">Invia</a>
<input type="submit" value="submit" class="u-form-control-hidden" style="font-weight: 400; font-style: italic;">
</div>
<div class="u-form-send-message u-form-send-success">Grazie! Il tuo messaggio stato inviato con successo!</div>
<div class="u-form-send-error u-form-send-message">Impossibile inviare il messaggio. Si prega di correggere gli errori e riprovare a inviare.</div>
<input type="hidden" value="" name="recaptchaResponse">
</form>
</div>


CODICE PHP = mail.php

<?php$name = $_POST['name'];
$email = $_POST['email'];
$phone = $_POST['phone'];
$call = $_POST['call'];
$website = $_POST['website'];
$priority = $_POST['priority'];
$type = $_POST['type'];
$message = $_POST['message'];
$u-form u-form-1=" Nome: $name \n Telefono: $phone \n Call Back: $call \n Sito web: $website \n Priority: $priority \n Type: $type \n Messaggio: $message";
$recipient = "INSERIRE INDIRIZZO EMAIL DESTINATARIO";
$subject = "Contact Form";
$mailheader = "From: $email \r\n";
mail($recipient, $subject, $formcontent, $mailheader) or die("Error!");
echo "Thank You!" . " -" . "<a href='form.html' style='text-decoration:none;color:#ff0099;'> Return Home</a>";
?>

Alhazred
18-12-2019, 11:20
I 2 file sono nella stessa cartella?

P.s. le assegnazioni
$email = $_POST['email'];
$phone = $_POST['phone'];
$call = $_POST['call'];
ecc...
non servono, puoi usare direttamente $_POST['...'] nel codice, risparmi memoria usata inutilmente per memorizzare variabili ridondanti.

frozzen
18-12-2019, 11:25
Si i due file sono nella stessa cartella, sono riuscito ora a far chiamare i dati ma mi rimane il problema che non mi rimane nella stessa pagina quando invio la mail.. come posso fare?

Quseto un esempio dei campi da compilare corretto:


<form class="form">
<div class="name">
<label for="name-845a" class="u-form-control-hidden u-label">Nome</label>
<input type="text" placeholder="Inserisci il tuo Nome" id="name-845a" name="name" class="u-border-1 u-border-grey-30 u-input u-input-rectangle u-white" required="">
</div>

Ora per vorrei aggiungere nel form che mi rimane nella stessa pagina.. e nel file .php vorrei che mi uscisse un flag per aver accettato i termini e le condizioni..

frozzen
18-12-2019, 12:09
Modificando il post sono riuscito a inviare le email, l'unico problema che mi rimane :
Rimanere sulla stessa pagina con messaggio di invio riuscito e non .. mi riesci ad aiutare?


<form id="form1" id="form1" action="mail.php" method="POST"> <form class="form">
<div class="name">
<label for="name-845a" class="u-form-control-hidden u-label">Nome</label>
<input type="text" placeholder="Inserisci il tuo Nome" id="name-845a" name="name" class="u-border-1 u-border-grey-30 u-input u-input-rectangle u-white" required="">
</div>

<div class="email">
<label for="email-845a" class="u-form-control-hidden u-label">Email</label>
<input type="email" placeholder="Inserisci un indirizzi email valido" id="email-845a" name="email" class="u-border-1 u-border-grey-30 u-input u-input-rectangle u-white" required="">
</div>

<div class="phone">
<label for="phone-845a" class="u-form-control-hidden u-label">Telefono</label>
<input type="tel" pattern="\+?\d{0,2}[\s\(\-]?([0-9]{3})[\s\)\-]?([\s\-]?)([0-9]{3})[\s\-]?([0-9]{2})[\s\-]?([0-9]{2})" placeholder="Inserisci il tuo numero (es. +39 00000000)" id="phone-845a" name="phone" class="u-border-1 u-border-grey-30 u-input u-input-rectangle u-white"required="">
</div>

<div class="website">
<label for="website-845a" class="u-form-control-hidden u-label">Sito web</label>
<input type="website" placeholder="Inserisci un indirizzo web" id="website-845a" name="website" class="u-border-1 u-border-grey-30 u-input u-input-rectangle u-white" required="">
</div>

<<div class="message"> <label for="message-845a" class="u-form-control-hidden u-label">Messaggio</label>
<textarea placeholder="Inserisci il tuo messaggio" rows="4" cols="50" id="message-845a" name="message" class="u-border-1 u-border-grey-30 u-input u-input-rectangle u-white" required=""></textarea>
</div>

<div class="agree">
<input type="checkbox" id="agree-845a" name="agree" class="u-agree-checkbox" required="">
<label for="agree-845a" class="u-agree-label u-label">Accetto i
<a href="#">Termini di servizio</a>
</label>

<div class="submit">
<input type="submit" value="Invia" />
</div>
</form>

frozzen
18-12-2019, 13:28
Sono riuscito a farlo funzionare con questi codici, ma ogni volta che invio il messaggio mi dice che non stato inviato, per la mail viene inviata!! cosa manca???

HTML


<div class="u-form u-form-1">
<form action="mail.php" method="POST" class="u-clearfix u-form-spacing-15 u-form-vertical u-inner-form" source="custom">
<!-- hidden inputs for siteId and pageId -->
<div class="u-form-group u-form-name">
<label for="name-845a" class="u-form-control-hidden u-label">Nome</label>
<input type="text" placeholder="Inserisci il tuo Nome" id="name-845a" name="name" class="u-border-1 u-border-grey-30 u-input u-input-rectangle u-white" required="">
</div>
<!-- always visible -->
<div class="u-form-email u-form-group">
<label for="email-845a" class="u-form-control-hidden u-label">Email</label>
<input type="email" placeholder="Inserisci un indirizzi email valido" id="email-845a" name="email" class="u-border-1 u-border-grey-30 u-input u-input-rectangle u-white" required="">
</div>
<div class="u-form-group u-form-phone">
<label for="phone-845a" class="u-form-control-hidden u-label">Telefono</label>
<input type="tel" pattern="\+?\d{0,2}[\s\(\-]?([0-9]{3})[\s\)\-]?([\s\-]?)([0-9]{3})[\s\-]?([0-9]{2})[\s\-]?([0-9]{2})" placeholder="Inserisci il tuo numero (es. +39 00000000)" id="phone-845a" name="phone" class="u-border-1 u-border-grey-30 u-input u-input-rectangle u-white"
required="">
</div>
<div class="u-form-group u-form-message">
<label for="message-845a" class="u-form-control-hidden u-label">Messaggio</label>
<textarea placeholder="Inserisci il tuo messaggio" rows="4" cols="50" id="message-845a" name="message" class="u-border-1 u-border-grey-30 u-input u-input-rectangle u-white" required=""></textarea>
</div>
<div class="u-form-agree u-form-group">
<input type="checkbox" id="agree-845a" name="agree" class="u-agree-checkbox" required="">
<label for="agree-845a" class="u-agree-label u-label">Accetto i
<a href="#">Termini di servizio</a>
</label>
</div>
<div class="u-form-group u-form-submit">
<a href="mail.php" class="u-btn u-btn-submit u-button-style">Invia</a>
<input type="submit" value="submit" class="u-form-control-hidden">
</div>
<div class="u-form-send-message u-form-send-success">
Grazie! Il tuo messaggio stato inviato con successo!
</div>
<div class="u-form-send-error u-form-send-message">
Impossibile inviare il messaggio. Si prega di correggere gli errori e riprovare a inviare.
</div>
<input type="hidden" value="" name="recaptchaResponse">
</form>

PHP

<?php$name = $_POST['name'];
$email = $_POST['email'];
$phone = $_POST['phone'];
$message = $_POST['message'];
$formcontent=" Nome: $name \n Telefono: $phone \n Messaggio: $message";
$recipient = "INDIRIZZO EMAIL";
$subject = "Richiesta informazioni sito web";
$mailheader = "From: $email \r\n";
mail($recipient, $subject, $formcontent, $mailheader) or die("Error!");
echo "Thank You!" . " -" . "<a href='form.html' style='text-decoration:none;color:#ff0099;'> Return Home</a>";
?>

Loading