Salve a tutti,
Ho scaricato un template gratuito di un sito web e sono riuscito a fare tutte le modifiche necessarie tranne una e cioè far funzionare il form "email" nella pagina contatti. Spero che ci sia un utente ferrato in materia che mi possa indicare le modifiche necessarie per farlo funzionare.
il sito e registrato all'url (che comunicherò via mail a chi me lo richiedesse) (hosting windows aruba) la mail a cui dovrebbe fare riferimento il form è info@xxxxx.xx
la pagina .php a cui fa riferimento il form è MailHandler.php il cui codice è questo:
<?php
$owner_email = $_POST["owner_email"];
$headers = 'From:' . $_POST["email"];
$subject = 'A message from your site visitor ' . $_POST["name"];
$messageBody = "";
if($_POST['name']!='nope'){
$messageBody .= '
Visitor: ' . $_POST["name"] . '</p>' . "\n";
$messageBody .= '
' . "\n";
}
if($_POST['email']!='nope'){
$messageBody .= '
Email Address: ' . $_POST['email'] . '</p>' . "\n";
$messageBody .= '
' . "\n";
}else{
$headers = '';
}
if($_POST['state']!='nope'){
$messageBody .= '
State: ' . $_POST['state'] . '</p>' . "\n";
$messageBody .= '
' . "\n";
}
if($_POST['phone']!='nope'){
$messageBody .= '
Phone Number: ' . $_POST['phone'] . '</p>' . "\n";
$messageBody .= '
' . "\n";
}
if($_POST['fax']!='nope'){
$messageBody .= '
Fax Number: ' . $_POST['fax'] . '</p>' . "\n";
$messageBody .= '
' . "\n";
}
if($_POST['message']!='nope'){
$messageBody .= '
Message: ' . $_POST['message'] . '</p>' . "\n";
}
if($_POST["stripHTML"] == 'true'){
$messageBody = strip_tags($messageBody);
}
try{
if(!mail($owner_email, $subject, $messageBody, $headers)){
throw new Exception('mail failed');
}else{
echo 'mail sent';
}
}catch(Exception $e){
echo $e->getMessage() ."\n";
}
?>
il codice del form sulla pagina hatml è questo:
<h3>Contact Form</h3>
<form id="contact-form">
<div class="success"> Contact form submitted! We will be in touch soon. </div>
<fieldset>
<div>
<label class="name">
<input type="text" value="Name:">
<span class="error">*This is not a valid name.</span> <span class="empty">*This field is required.</span> </label>
</div>
<div>
<label class="email">
<input type="email" value="E-mail:">
<span class="error">*This is not a valid email address.</span> <span class="empty">*This field is required.</span> </label>
</div>
<div>
<label class="phone">
<input type="tel" value="Phone:">
<span class="error">*This is not a valid phone number.</span> <span class="empty">*This field is required.</span> </label>
</div>
<div>
<label class="message">
<textarea>Message:</textarea>
<span class="error">*The message is too short.</span> <span class="empty">*This field is required.</span> </label>
</div>
<div class="buttons-wrapper"><a class="button" data-type="reset">Clear</a><a class="button" data-type="submit">Send</a></div>
</fieldset>
</form>
</article>
</div>
</div>
</div>
</section>
</div>
<div class="block">
nelle cartelle presenti all'interno del template è anche presente un file che si chiama form.js (nella cartella "js") le cui prime righe sono queste:
//forms
;(function($){
$.fn.forms=function(o){
return this.each(function(){
var th=$(this)
,_=th.data('forms')||{
errorCl:'error',
emptyCl:'empty',
invalidCl:'invalid',
notRequiredCl:'notRequired',
successCl:'success',
successShow:'4000',
mailHandlerURL:'bat/MailHandler.php',
ownerEmail:'xxxx@xxxx.xxx',
stripHTML:true,
smtpMailServer:'localhost',
targets:'input,textarea',
controls:'a[data-type=reset],a[data-type=submit]',
validate:true,
Spero di avervi dato tutte le informazioni necessarie per aiutarmi, considerate che sono completamente digiuno di questo genere di linguaggio
Grazie mille