2012-01-09 7 views
0

IE以外のすべてのブラウザで動作する簡単な連絡フォームがあります。私はIEの開発者用ツールバー(DT)を開いている場合にのみ、IEで動作します。私はIEを使っている人にF12を押してもらうように頼むことができないので、誰かがなぜIEがそんなに痛いのか説明してもらえますか?そして、コードが動作するときにコードが動作するので、私は開発者用ツールを使用できません。IEのツールバーが開いていなくても簡単な連絡フォームが機能しない

成功した場合:あなたは同じページにとどまり、あなたの投稿に感謝のメッセージが表示されます。データはデータベースに保存され、電子メールが送信されます。

DTが開いていないIE: .phpアドレスにリダイレクトされ、何もせずに結果テキストが表示されます。データはデータベースに保存されず、「コメント」部分を除くすべての情報とともに電子メールが送信されます。それは最初に少しのJavaScriptとHTMLで出発するもちろん

は...

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
    <html> 
     <head> 
    <title></title> 
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js"></script> 
    <link rel="stylesheet" href="css/default.css" /> 
    <script type="text/javascript"> 
     $(function() { 
     $('#submit').click(function() { 
     $('#mbcontainerloading').append('<img src="img/loading.gif" alt="Currently Loading" id="loading" />'); 

      var name = $('#name').val(); 
      var email = $('#email').val(); 
      var comments = $('#comments').val(); 
      var mathq = $('#mathq').val(); 

      console.log(name,email,comments,mathq); 

      $.ajax({ 
       url: 'submit_to_db.php', 
       type: 'POST', 
       data: 'name=' + name + '&email=' + email + '&comments=' + comments + '&mathq=' + mathq, 


       success: function(result) { 
        $('#response').remove(); 
        $('#mbcontainerresponse').append('<p id="response">' + result + '</p>'); 
        $('#loading').fadeOut(500, function() { 
         $(this).remove(); 
        }); 
       console.log(result); 
       } 
      }); 

      return false; 
     }); 

     }); 
    </script> 
    </head> 
     <body> 
<form action="submit_to_db.php" method="post"> 

     <div id="mbcontainer"> 
     <label for="name">Name</label> 
    <input type="text" name="name" id="name" /> 

    <label for="email">Email Address</label> 
    <input type="text" name="email" id="email" /> 

    <label for="comments">Comments/Concerns</label> 
    <textarea rows="5" cols="35" name="comments" id="comments"></textarea> 

    <label for="mathq">What is 9 + 3?<br /> 
    <span class="mathc">(Please answer the question to prevent spam)</span></label> 
    <input type="text" name="mathq" id="mathq" /> 

    <br /> 
    <input type="submit" name="submit" id="submit" value="Go!" /> 

    </div> 
<div id="mbcontainerloading"> 
</div> 
<div id="mbcontainerresponse"> 
</div> 
</form> 
     </body> 
    </html> 

私は開発者ツールバー(DT)なしでIEに提出し、私は実際の.phpのページに移動しています。これは私が各ステップを歩いてきたと明らかにその1を知らない

<?php 


    include("dogspw/dogs.inc"); 
    $cxn = mysqli_connect($host,$user,$passwrd,$hotel) or die ("couldn't connect to server"); 
    $query = "INSERT into commentsa(name, email, comments, mathq) VALUES (?, ?, ?, ?)"; 
if ($_POST['mathq']==12) { 
    $stmt = $cxn->stmt_init(); 
    echo $_POST['name']."<br />"; 
    echo $_POST['email']."<br />"; 
    echo $_POST['comments']."<br />"; 
    echo $_POST['mathq']."<br />"; 
    if($stmt->prepare($query)) { 
     $stmt->bind_param('ssss', $_POST['name'], $_POST['email'], $_POST['comments'], $_POST['mathq']); 
     $stmt->execute(); 
    } 

     if($stmt) { 
     echo "Thank you. We'll be in touch with you shortly!"; 
     } else { 
     echo "There was a problem. Please try again later."; 
     } 
echo "...And thanks for answering the question correctly!"; 
} 
else { 
echo "Did you answer the math question? Your comment was not sent."; 
} 
    //setup email 

    $to='[email protected]'; 
    $subject='Question from smith.com'; 
    $number=$_POST['mathq']; 
    $name=$_POST['name']; 
    $email=$_POST['email']; 
    $questiona=$_POST['comments']; 
    $message="Name: ".$name. "\r\n" . "Email: " .$email. "\r\n" . "Question: " .$questiona; 


    if ($number==12){ 
    mail($to,$subject,$message); 
    echo '<br /><span style="background-color:#dfe0fc">An email has been sent to me, as well.<br />Just in case...<a href="http://www.smith.com"><span style="text-decoration: none">Go back to Smith</span></span></a>'; 
    } 
    else 
    { 
    echo '<br /><span style="background-color:#dfe0fc">An email was not sent, either.<br /> 
    Just in case...<a href="http://www.smith.com"><span style="text-decoration: none">Go back to smith</span></span></a>'; 
    } 

    ?> 

...である、コードのPHPの部分からページや更新時にあなたを残して、他のブラウザ上で動作していなければなりませんこれを実行するにはIEを調整する必要があります。 私は、情報が.phpファイルに到達していることを確認しました。「ありがとうございます。まもなく連絡があります。ここからどこに行くのかわからない。 お手数をおかけしていただき、ありがとうございます。

答えて

2

console.log呼び出しを削除します。開発者のツールバーが閉じている場合、コンソールはIEでは未定義です。

+0

スポットオン!ありがとう、トン! – Jaspers

関連する問題