簡體   English   中英

在Chrome中而不是在IE / Firefox中工作的聯系表單

[英]Contact Form working in Chrome, not in IE/Firefox

我的網站( http://www.techcom.co.nz/)上的聯系表遇到問題

它在google chrome上可以正常工作,但是在IE和Firefox上,它不發送任何消息,而只是重定向回到頁面頂部/刷新頁面。

這是表單的php代碼:

// EDIT THE FOLLOWING LINE BELOW AS REQUIRED

$send_email_to = "techcomnz@gmail.com";

function send_email($name,$email,$email_subject,$email_message)
{
global $send_email_to;  

$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=iso-8859-1" . "\r\n";
$headers .= "From: ".$email. "\r\n";

$message = "<strong>Email = </strong>".$email."<br>";
$message .= "<strong>Name = </strong>".$name."<br>";
$message .= "<strong>Message = </strong>".$email_message."<br>";
@mail($send_email_to, $email_subject, $message,$headers);
return true;
}

function validate($name,$email,$message,$subject)
{
$return_array = array();
$return_array['success'] = '1';
$return_array['name_msg'] = '';
$return_array['email_msg'] = '';
$return_array['message_msg'] = '';
$return_array['subject'] = '';

if($email == '')
{
$return_array['success'] = '0';
$return_array['email_msg'] = 'email is required';
}
else
{
$email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
if(!preg_match($email_exp,$email)) {
  $return_array['success'] = '0';
  $return_array['email_msg'] = 'enter valid email.';  
 }
}

if($name == '')
{
 $return_array['success'] = '0';
 $return_array['name_msg'] = 'name is required';
}
else
{
  $string_exp = "/^[A-Za-z .'-]+$/";
 if (!preg_match($string_exp, $name)) {
  $return_array['success'] = '0';
 $return_array['name_msg'] = 'enter valid name.';
}
}


if($subject == '')
{
 $return_array['success'] = '0';
 $return_array['subject_msg'] = 'subject is required';
}

if($message == '')
{
 $return_array['success'] = '0';
 $return_array['message_msg'] = 'message is required';
}
else
{
if (strlen($message) < 2) {
  $return_array['success'] = '0';
  $return_array['message_msg'] = 'enter valid message.';
}
}
return $return_array;
}

$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$subject = $_POST['subject'];

$return_array = validate($name,$email,$message,$subject);
if($return_array['success'] == '1')
{
send_email($name,$email,$subject,$message);
}

header('Content-type: text/json');
echo json_encode($return_array);
die();

?>

這是HTML:

    <fieldset id="contact_form">
      <div id="msgs"> </div>
      <form id="cform" name="cform" method="post" action="">
        <input type="text" id="name" name="name" value="Full Name*" onfocus="if(this.value == 'Full Name*') this.value = ''"
                        onblur="if(this.value == '') this.value = 'Full Name*'" />
        <input type="text" id="email" name="email" value="Email Address*" onfocus="if(this.value == 'Email Address*') this.value = ''"
                        onblur="if(this.value == '') this.value = 'Email Address*'" />
        <input type="text" id="subject" name="subject" value="Subject*" onfocus="if(this.value == 'Subject*') this.value = ''"
                        onblur="if(this.value == '') this.value = 'Subject*'" />
        <textarea id="msg" name="message" onfocus="if(this.value == 'Your Message*') this.value = ''"
                        onblur="if(this.value == '') this.value = 'Your Message*'">Your Message*</textarea>
        <button id="submit" class="button" style=""> Send Message</button>
      </form>
    </fieldset>

任何幫助將不勝感激。

問候

將action屬性保留為空白將導致大多數瀏覽器通過在GET或POST中重新加載表單數據來將表單數據提交到當前頁面。

如果您打算這樣做,請嘗試完全刪除action=""因為已知這會導致較舊的瀏覽器出現問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM