-1

После прочтения каждого отдельного сообщения на форуме я до сих пор не могу понять, как правильно настроить мою контактную форму. Я получил внешний интерфейс, который выглядит хорошо, но я получаю ошибку 404 каждый раз, когда я пытаюсь ее использовать. Очевидно, из-за этого ни одна из представленных данных не проходит. Вот мой код:404 error contact form bootstrap

Вот мой contact.php, который имеет

<script src="email/validation.js" type="text/javascript"></script> 

в верхней между заголовком

<div class="span12" id="divMain"> 
    <div id="contact"> 
     <h1>Contact Us</h1></div> 
     <h3 style="color:#FF6633;"><?php echo $_GET[msg];?></h3> 
    <hr> 
<!--Start Contact form -->              
<form name="enq" method="post" action="email/index.php" onsubmit="return  
      validation();"> 
<fieldset>  

<input type="text" name="name" id="name" value="" class="input-block-level" placeholder="Name" /> 

<input type="text" name="email" id="email" value="" class="input-block-level" placeholder="Email" /> 
<textarea rows="9" name="message" id="message" class="input-block- levelplaceholder="Let's hear what you've got to say"> </textarea> 
<div class="actions"> 
    <input type="submit" value="Send" name="submit" id="submitButton" class="btn btn-success pull -right" title="Click here to submit your message!" /> 
    </div> 
</fieldset> 
    <hr> 
    </form>     
<!--End Contact form -->            
    </div> 

Следующая вот мой validation.js

function validation() 
{ 
var contactname=document.enq.name.value; 
var name_exp=/^[A-Za-z\s]+$/; 
if(contactname=='') 
{ 
    alert("Name Field Should Not Be Empty!"); 
    document.enq.name.focus(); 
    return false; 
} 
else if(!contactname.match(name_exp)) 
{ 
    alert("Invalid Name field!"); 
    document.enq.name.focus(); 
    return false; 
} 

var email=document.enq.email.value; 
//var email_exp=/^[A-Za-z0-9\.-_\$][email protected][A-Za-z]+\.[a-z]{2,4}$/; 
var email_exp=/^\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/; 
if(email=='') 
{ 
    alert("Please Enter Email-Id!"); 
    document.enq.email.focus(); 
    return false; 
} 
else if(!email.match(email_exp)) 
{ 
    alert("Invalid Email ID !"); 
    document.enq.email.focus(); 
    return false; 
} 


var message=document.enq.message.value; 
if(message=='') 
{ 
    alert("Query Field Should Not Be Empty!"); 
    document.enq.message.focus(); 
    return false; 
} 
return true; } 

Подписано на мой индекс index.php

<?php 
if(isset($_POST['submit'])) 
{ 
$name = $_POST['name']; 
$email = $_POST['email']; 
$query = $_POST['message']; 
$email_from = $name.'<'.$email.'>'; 

$to="[email protected]"; 
$subject="Enquiry!"; 
$headers = 'MIME-Version: 1.0' . "\r\n"; 
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; 
$headers .= "From: ".$email_from."\r\n"; 
$message="  

    Name: 
    $name  
    <br> 
    Email-Id: 
    $email   
    <br> 
    Message: 
    $query   
    "; 
if(mail($to,$subject,$message,$headers)) 
    header("Location:../contact.php?msg=Successful Submission! Thankyou for contacting  us."); 
else 
    header("Location:../contact.php?msg=Error To send Email !"); 
    //contact:[email protected] 
} 
?> 
+0

Кажется довольно очевидным. Ваша страница называется 'contact_us.php' не' contact.php', так почему вы перенаправляетесь на 'contact.php'? – Ohgodwhy

+0

wow duh! Большое спасибо, я думаю, что я просто слишком много смотрел на код и подсознательно не замечал этого. –

ответ

2

Вы не имеете contact.php файл на сервере, вы имеете в виду contact_us.php

if(mail($to,$subject,$message,$headers)) 
    header("Location:../contact_us.php?msg=Successful Submission! Thankyou for contacting  us."); 
else 
    header("Location:../contact_us.php?msg=Error To send Email !"); 
    //contact:[email protected] 
}