Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 19.08.2011, 15:17
Аватар для Sadist_dead
Профессор
Отправить личное сообщение для Sadist_dead Посмотреть профиль Найти все сообщения от Sadist_dead
 
Регистрация: 08.08.2011
Сообщений: 191

Проверка поля и риконект
Подскажите пожалуйста не могу понять

Идет запрос авторизации в php. PHP возвращает
<script type="text/javascript">
$(function f(){
$("#wer").click(function(){
	var a = $("#login").val();
	var b = $("#password").val();
$.ajax({
	type: "POST",
	url: "http://localhost/webschool/login.php",
	data: ({a:a,b:b}),
	dataType: 'json',
	beforesend: alert("Отправляемые данные  a=" +a+ "b="+b), 
	success: function(data){
          
$.each(data, function(index,a){
for(var i in a ) {     
$("#Id_p").append(a[i]);	 
}; // закрытие for
         //  alert("Номер : "+ index+"\n\n Язык : "+ a[i]);		 
}); // закрытие $.each(data, function(index,a){   
}, // закрытие success: function(data){
});
});
});
</script>


PHP Возвращает на "Вы успешно авторизированны" или "Извините, но данные не верны!"


Ответ приходит в див
<div id="Id_p"></div>

вопрос: как сделать так чтобы если ответ правильный происходил риконект на другую страницу

я думал сделать так но у меня не работает посмотри пожалуйста что не так

<script language="JavaScript"> 
 if ((document.getElementById("Id_p").this)==='Вы успешно авторизированны'){
  window.location.href = "index_user.php"
 }

  
</script>

может я вообще не туда двигаюсь
Ответить с цитированием
  #2 (permalink)  
Старый 19.08.2011, 15:33
Аватар для walik
Профессор
Отправить личное сообщение для walik Посмотреть профиль Найти все сообщения от walik
 
Регистрация: 09.11.2009
Сообщений: 1,101

Сообщение от Sadist_dead
document.getElementById("Id_p").this


мб так:
document.getElementById("Id_p").innerHTML
__________________
"Всегда пишите код так, будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете."
Мой сертификат :-D клацай
Ответить с цитированием
  #3 (permalink)  
Старый 19.08.2011, 15:34
Аватар для Geddar
Кандидат Javascript-наук
Отправить личное сообщение для Geddar Посмотреть профиль Найти все сообщения от Geddar
 
Регистрация: 23.05.2009
Сообщений: 100

анализируй сам ответ, добавь параметр в ответ, так проще, например
ok%%Вы успешно авторизированны
разбивай через .split('%%'), если ок, то location.href='куда_пойдём'
я так всегда делаю, меня устраивает
__________________
Обходя грабли ты теряешь драгоценный жизненный опыт!
Ответить с цитированием
  #4 (permalink)  
Старый 19.08.2011, 15:40
Аватар для Sadist_dead
Профессор
Отправить личное сообщение для Sadist_dead Посмотреть профиль Найти все сообщения от Sadist_dead
 
Регистрация: 08.08.2011
Сообщений: 191

Сообщение от walik Посмотреть сообщение


мб так:
document.getElementById("Id_p").innerHTML
<script language="JavaScript"> 
 if ((document.getElementById("Id_p").innerHTML)==='Вы успешно авторизированны'){
  window.location.href = "index_user.php"
 }

  
</script>


не хочет, мне кажется что вообще может по другому...как-то

скажите пожалуйста может в чем преимущество javascrip в случае случае авторизации ведь можно принципе сделать все в php и проверку данных и сразу риконект.
и не надо будет ничего ни откуда вытаскивать
Ответить с цитированием
  #5 (permalink)  
Старый 19.08.2011, 15:44
Аватар для Geddar
Кандидат Javascript-наук
Отправить личное сообщение для Geddar Посмотреть профиль Найти все сообщения от Geddar
 
Регистрация: 23.05.2009
Сообщений: 100

страница не перезагружается, так как бы современней.
Попробуй == вместо ===
Хотя я настаиваю на вышепредложенном мной варианте )
__________________
Обходя грабли ты теряешь драгоценный жизненный опыт!
Ответить с цитированием
  #6 (permalink)  
Старый 19.08.2011, 15:44
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,205

Сообщение от Sadist_dead
ведь можно принципе сделать все в php
Тогда почему вопрос в разделе "Общие вопросы Javascript"?
Ответить с цитированием
  #7 (permalink)  
Старый 19.08.2011, 15:56
Аватар для Sadist_dead
Профессор
Отправить личное сообщение для Sadist_dead Посмотреть профиль Найти все сообщения от Sadist_dead
 
Регистрация: 08.08.2011
Сообщений: 191

Сообщение от Geddar Посмотреть сообщение
анализируй сам ответ, добавь параметр в ответ, так проще, например
ok%%Вы успешно авторизированны
разбивай через .split('%%'), если ок, то location.href='куда_пойдём'
я так всегда делаю, меня устраивает


<script language="JavaScript">
 
 var qwerty = document.getElementById("Id_p").innerHTML;
 if (qwerty==='ok'){alert("работает")}

  
</script>


Передаю из php просто ок
проверял переменную qwerty получила ок но alert("работает") не пашет
Ответить с цитированием
  #8 (permalink)  
Старый 19.08.2011, 15:58
Аватар для Sadist_dead
Профессор
Отправить личное сообщение для Sadist_dead Посмотреть профиль Найти все сообщения от Sadist_dead
 
Регистрация: 08.08.2011
Сообщений: 191

Сообщение от ksa Посмотреть сообщение
Тогда почему вопрос в разделе "Общие вопросы Javascript"?
Сделать то можно , но это будет не интересно, тем более что уж раз взялся хочу понять хотя бы. Потом разберусь что лучше....
Ответить с цитированием
  #9 (permalink)  
Старый 19.08.2011, 16:01
Аватар для Sadist_dead
Профессор
Отправить личное сообщение для Sadist_dead Посмотреть профиль Найти все сообщения от Sadist_dead
 
Регистрация: 08.08.2011
Сообщений: 191

Сообщение от Geddar Посмотреть сообщение
страница не перезагружается, так как бы современней.
Попробуй == вместо ===
Хотя я настаиваю на вышепредложенном мной варианте )
неа ровным счетом ничего
Ответить с цитированием
  #10 (permalink)  
Старый 19.08.2011, 16:03
Аватар для Geddar
Кандидат Javascript-наук
Отправить личное сообщение для Geddar Посмотреть профиль Найти все сообщения от Geddar
 
Регистрация: 23.05.2009
Сообщений: 100

.....
success: function(data){  //data="ok%%Вы успешно авторизированны"
    a=data.split('%%');
    if(a[0]=='ok'){
        alert(a[1]);
        location.href='/адрес';
    }else{
        alert("Ошибка авторизации");
    }
}

Обычно я делаю иначе передаю err%%[проблема авторизации]
т.к. проблемы бывают разные, особенно при регистрации, а положительный результ чаще всего один )

З.Ы. проверяй переданные/полученные данные, а не содержимое тега. Тем более если пропарсить документ, то встретиться ещё объекс #text, на подобное я в висивинге наталкивался

З.Ы.Ы. если всё равно не заработет, ставьте firebug в FF, стрекозу в опере или консоль в хроме открывайте и ищите косяки, т.к. из-за какой-то грубой ошибки у вас весь код не работает ...
__________________
Обходя грабли ты теряешь драгоценный жизненный опыт!

Последний раз редактировалось Geddar, 19.08.2011 в 16:15.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проверка Тестового поля arahmanov AJAX и COMET 7 05.08.2011 00:35
Проверка заполнености поля формы Telnet Общие вопросы Javascript 5 09.07.2011 21:21
Проверка поля Номер телефона zhuzha Общие вопросы Javascript 7 12.05.2010 16:40
Проверка текстового поля pingvinchic Events/DOM/Window 14 13.02.2010 20:52
проверка поля в скрытом div'е dmus AJAX и COMET 4 10.08.2009 10:34