Показать сообщение отдельно
  #1 (permalink)  
Старый 19.05.2013, 21:12
Новичок на форуме
Отправить личное сообщение для irishman Посмотреть профиль Найти все сообщения от irishman
 
Регистрация: 19.05.2013
Сообщений: 5

AJAX в IE10 скрипт выполняется но не происходит записи в базу
Уважаемые коллеги, столкнулся с вопросом, не работает в ajax в IE В друг. браузерах всё ок...

$(".ok_change").click( function() {
		var name = $("#reg_name").val();
		var fone = $("#reg_fone").val();
		var old_passw = $("#old_passw").val();
		var new_passw = $("#new_passw").val();
		var new_passw_2= $("#new_passw_2").val();
		var comp_name_r= $("#comp_name_r").val();
		var comp_rec= $("#comp_rec").val();
		var add_cont= $("#add_cont").val();
		var xhttp = new  XMLHttpRequest();
		xhttp.onreadystatechange=function(){
			if (xhttp.readyState==1) {
			}
			if (xhttp.readyState==4 && xhttp.status==200) {
				$(".change_err").html(xhttp.responseText);
				if ($(".change_ok").val() == "ok") {
					$(".ok_change").mouseleave(function(){
						$(this).css({"background-color":"#67c347"});
					});
					$(".ok_change").mouseover(function(){
						$(this).css({"background-color":"#67c347"});
					});
					$(".ok_change").css({"background-color":"#67c347"});
					setTimeout(function() {location.reload();}, 1500 );
				}
			}
		}
		var task="/forms/change.php";
		var params = "name="+name+"&fone="+fone+"&old_passw="+old_passw+"&new_passw="+new_passw+"&new_passw_2="+new_passw_2+"&comp_name_r="+comp_name_r+"&comp_rec="+comp_rec+"&add_cont="+add_cont;
		console.log(params);
		xhttp.open("POST",task+"?",true);
		xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xhttp.send(params);
	});


<?php
session_start();
mb_internal_encoding("UTF-8");
$mysqli = mysqli_connect("localhost", "root", "root", "exitauto");
	if (mysqli_connect_errno($mysqli)) {
    		echo "Не удалось подключиться к MySQL - Базы запчастей: " . mysqli_connect_error();
	}
mysqli_set_charset($mysqli, 'utf8');
$name = $_POST['name'];
$fone = $_POST['fone'];
$old_passw = $_POST['old_passw'];
$new_passw = $_POST['new_passw'];
$new_passw_2 = $_POST['new_passw_2'];
$comp_name_r = $_POST['comp_name_r'];
$comp_rec= $_POST['comp_rec'];
$add_cont= $_POST['add_cont'];
$sql = "SELECT * FROM `users` WHERE `id` = '".$_SESSION['user_id']."'";
$qr = mysqli_query($mysqli, $sql);
$row = mysqli_fetch_assoc($qr);
if ($new_passw == "") {
	if (mb_strlen($name, 'UTF-8') < 2) {
		echo "<span class=reg_err_text>Вы имя - не менее 2х символов</span>";
	}
	elseif (preg_match("/^(\+?\d+)?\s*(\(\d+\))?[\s-]*([\d-]*)$/", $fone) <> 1) {
		echo "<span class=reg_err_text>Телефон можест состоять только из цифр и знака +</span>";
	}
	elseif ($comp_name_r <> "undefined" and mb_strlen($comp_name_r) < 3) {
		echo "<span class=reg_err_text>Ошибка!</span> Вы не ввели Наименование компании (не менее 3-х символов).";	
	}
	elseif ($comp_rec <> "undefined" and strlen($comp_rec) < 20) {
		echo "<span class=reg_err_text>Ошибка!</span> Вы не ввели реквизиты компании (не менее 20-и символов) Реквизиты нужны для формирования счетов.";
	}
	else {
		$sql = "UPDATE `users` SET  `first_name` = '".$name."', `fone` = '".$fone."', `com_name` = '".$comp_name_r."', `com_rec` = '".$comp_rec."', `com_add` = '".$add_cont."' WHERE `id` = '".$_SESSION['user_id']."'";
		echo "<span style='color:green;'>Успех.</span> Данные сохранены, страница будет обновлена. <input type=hidden class=change_ok value=ok>";
		mysqli_query($mysqli, $sql);
		$_SESSION['user_firstname'] = $name;
	}
}
else {
	if (mb_strlen($name, 'UTF-8') < 2) {
		echo "<span class=reg_err_text>Вы имя - не менее 2х символов</span>";
	}
	elseif (preg_match("/^(\+?\d+)?\s*(\(\d+\))?[\s-]*([\d-]*)$/", $fone) <> 1) {
		echo "<span class=reg_err_text>Телефон можест состоять только из цифр и знака +</span>";
	}
	elseif ($comp_name_r <> "undefined" and mb_strlen($comp_name_r) < 3) {
		echo "<span class=reg_err_text>Ошибка!</span> Вы не ввели Наименование компании (не менее 3-х символов).";	
	}
	elseif ($comp_rec <> "undefined" and strlen($comp_rec) < 20) {
		echo "<span class=reg_err_text>Ошибка!</span> Вы не ввели реквизиты компании (не менее 20-и символов) Реквизиты нужны для формирования счетов.";
	}
	elseif ($old_passw <> $row['password']) {
		echo "<span class=reg_err_text>Старый пароль введён не верно</span>";
	}
	elseif (strlen($new_passw) < 7) {
	echo "<span class=reg_err_text>Ошибка!</span>Новый пароль должен быть не меннее 7-и символов в длинну";
	}
	elseif (preg_match("/^[a-zA-Z0-9_\-.]+$/", $new_passw) <> 1) {
		echo "<span class=reg_err_text>Ошибка!</span> Новый пароль должен состоять только из латинских строчных и заглавных букв и цифр!";
	}
	elseif ($new_passw <> $new_passw_2) {
		echo "<span class=reg_err_text>Ошибка!</span> Новые пароли не совпадают";
	}
	else {
		$sql = "UPDATE `users` SET `password` = '".$new_passw."', `first_name` = '".$name."', `fone` = '".$fone."', `com_name` = '".$comp_name_r."', `com_rec` = '".$comp_rec."', `com_add` = '".$add_cont."' WHERE `id` = '".$_SESSION['user_id']."'";
		echo "<span style='color:green;'>Успех.</span> Данные сохранены, страница будет обновлена. <input type=hidden class=change_ok value=ok>";
		mysqli_query($mysqli, $sql);
		$_SESSION['user_firstname'] = $name;
	}
}
?>


В чём может быть проблема?
Ответить с цитированием