0
我希望這不是一個單調乏味的問題......我正在編寫其他人編寫的代碼。問題根本在於它在Chrome和Firefox上運行良好,但在Internet Explorer上運行得並不順利。發生什麼事情時,點擊提交頁面,只需重新加載並重新開始。我不知道爲什麼?誰能幫忙?登錄代碼不能在Internet Explorer中工作,但在Chrome和Firefox中可以使用
下面是HTML:它本質上是兩個字段索要電話號碼和PIN碼...
<form name="form1" id="form1" onSubmit="get_client_data(); return false;" method="post" >
<input type="hidden" name="random_1" id="random_1" value="<?=$session['random_1']?>" />
<h2>ENTER THE NUMBER YOU’D LIKE TO REFILL</h2>
<input placeholder="ENTER YOUR PHONE NUMBER:" name="phone_number" id="phone_number" type="text" class="form_input" onBlur="convert_phone(this.value,'phone_number');" />
<h2>ENTER YOUR PIN</h2>
<input placeholder="ENTER YOUR PIN CODE:" name="pin_id" id="pin_id" type="text" class="form_input" onBlur="check_validity(this.value, 'pin_id');" /><br>
<input name="" type="submit" value="GO" class="right button go" id="step_1" />
</form>
使用onSubmit發送到下面的JavaScript函數:(此使用AJAX來確定數量和PIN匹配,並且如果他們這樣做 - 它將使HTML(這裏沒有給出))的其他部分
function get_client_data(){
var pin_id = $('#pin_id').val();
var phone_number = $('#phone_number').val();
var random_1 = $('#random_1').val();
$.ajax({
type: "POST",
url: "front_end_functions.php",
data: "phone_number="+phone_number+"&plan="+plan+"&pin_id="+pin_id+"&random_1="+random_1+"&function=get_client_data",
dataType: 'json',
success: function(msg){
if(msg == 'error') {
alert('error');
return false;
} else if(msg == 'error2') {
alert('error');
return false;
} else {
$('#div_1').addClass('deselect');
$('#div_2').removeClass('deselect');
$('#phone_number').attr('disabled','disabled');
$('#pin_id').attr('disabled','disabled');
$('#step_1').attr('disabled','disabled');
$('#phone').removeAttr('disabled');
$('#carrier').removeAttr('disabled');
$('#plan').removeAttr('disabled');
$('#step_2').removeAttr('disabled');
$('#phone').val(msg[1]);
$('#carrier').val(msg[2]);
$('#plan').val(msg[3]);
}
}
});
}
阿賈克斯發送到看起來像這樣(你可以看到我使用PDO的功能 - 這是否導致問題?):
if($_REQUEST['function'] == 'get_client_data') {
$random_1 = $_REQUEST['random_1'];
$ip = getenv('HTTP_CLIENT_IP')?:
getenv('HTTP_X_FORWARDED_FOR')?:
getenv('HTTP_X_FORWARDED')?:
getenv('HTTP_FORWARDED_FOR')?:
getenv('HTTP_FORWARDED')?:
getenv('REMOTE_ADDR');
$query = $db->prepare("SELECT * FROM sessions WHERE id = ?");
$query->execute(array($ip));
$session = $query->fetch();
if($session['random_1'] == $random_1) {
$phone_number = $_REQUEST['phone_number'];
$pin_id = $_REQUEST['pin_id'];
$sql = "SELECT c.cid, cp.phone, cr.carrier_name, p.plan_name ,cp.carrier as cr_id,cp.plan as p_id
FROM clients c, client_phones cp , carriers cr, plans p
WHERE cp.phone = ?
AND cp.client_id = ?
AND cp.deleted = 0
AND c.cid = cp.client_id
AND c.status = 'a'
AND cr.carrier_id = cp.carrier
AND p.plan_id = cp.plan";
$query = $db->prepare($sql);
$query->execute(array($phone_number, $pin_id));
$result = $query->fetch();
if(!empty($result)){
$_SESSION['client'] = $result;
echo json_encode($result);
}else{
echo json_encode('error');
}
}else{
echo json_encode('error2');
}
}
謝謝!
我是基於mac的,所以可能無法幫助,但你應該包括在哪個版本的IE遇到問題。 – chris85
如果PDO會導致問題,那麼每個人都會注意到,不僅是「Internet Explorer」的用戶。 'Internet Explorer'有開發者工具,你是否嘗試過在那些幫助下進行調試(檢查網絡連接,查找預期響應,瀏覽器控制檯等)。 –
你檢查過瀏覽器的控制檯是否有錯誤? –