Intereting Posts

Пользовательский вход с Ajax не работает с IE

Iam делает мой собственный пользовательский логин в wordpress, используя функцию wp_signon. Всякий раз, когда пользователь вводит свои учетные данные, другая страница вызывается с использованием ajax. На этой странице я проверяю учетные данные пользователей и регистрирую пользователя при использовании функции wp_signon. Затем отправляется подтверждение, и текущая страница захватывает его и показывает, что пользователь успешно вошел в систему. Код работает в Chrome и Firefox, но не работает в IE. Это код в файле AJAX. Текущая страница получает ответ, в котором говорится, что пользователь вошел в систему, но когда я обновляю его, он все еще показывает, что пользователь не вошел в систему.: (Протаскивая его в течение нескольких дней.

$creds = array(); $creds['user_login'] = $user; $creds['user_password'] = $password; $creds['remember'] = $remember; $user = wp_signon( $creds, true ); if ( is_wp_error($user) ){ echo "Invalid Username or Password"; } else { $current_user = wp_get_current_user(); $userid=$current_user->ID; mysql_pconnect($dbhost,$dbuser,$dbpass) or die ("Unable to connect to MySQL server"); $dbquerry= 'select `login` from wp_users where user_login="'.$_GET['user'].'"'; $result=mysql_db_query($dbname,$dbquerry); list($login)=mysql_fetch_array($result); if($login==1) { echo "change"; } else { echo "success"; } } 

Этот код хорошо работает в Chrome и firefox, а не в IE

Solutions Collecting From Web of "Пользовательский вход с Ajax не работает с IE"

Наконец выяснил виновника и решил проблему 🙂 IE кэширует запросы AJAX. Поэтому всякий раз, когда вы используете вызов AJAX для установки файлов cookie для входа в систему, у вас есть проблемы с IE. Остерегайтесь !!!!! В вашем ajax-вызове заполните случайное число в URL-адресе, чтобы IE не поймал

В вызове Ajax вставлено это

  var d = new Date(); var n = d.getTime(); req.open("GET", "something.php?user"+username+"&x="+n); 

При этом IE не кэширует запрос AJAX