Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Обновление страницы аякс

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (2): [1] 2 »   

> Описание: Ничего не могу найти..
Хенаро
Отправлено: 06 Декабря, 2014 - 14:15:04
Post Id



Гость


Покинул форум
Сообщений всего: 65
Дата рег-ции: Нояб. 2014  


Помог: 0 раз(а)




Здравствуйте) Помогите, пожалуйста, уже неделю копаю в гугле и ничего не могу найти.. Как обновить страницу аяксом в фоновом режиме? После входа на сайт и старта сессии много материалов выводятся через эхо. И хотелось бы сделать это всё красиво, без перезагрузки, чтобы вывелось приветствие с именем пользователя. Пожалуйста, буду очень благодарен
CODE (javascript):
скопировать код в буфер обмена
  1. $('#enter').click(function(e){
  2.         e.preventDefault();
  3.         var login=$('#loggin').val();
  4.         var password=$('#password').val();
  5.         if (login=="" || password ==""){
  6.                 $('#success').text('В поле пусто!');
  7.         }
  8.         $.ajax({
  9.                 url: "php/login.php",
  10.                 type: "POST",
  11.                 data: {login:login, password: password},
  12.                 success: function(data){
  13.                         if(data){
  14.                         if (data==0){
  15.                         $('#formreg').html('<img src="img/273395.jpg"/>').delay(2000).hide('fold',2000);
  16.                         setTimeout(function(){
  17.                                 document.location= "index.php";// пока так
  18.                         },4000);
  19.                         }
  20.                         }
  21.                 }
  22.         });
  23. });
 
 Top
andrewkard
Отправлено: 07 Декабря, 2014 - 22:02:35
Post Id


Участник


Покинул форум
Сообщений всего: 1372
Дата рег-ции: Нояб. 2014  


Помог: 30 раз(а)




Хенаро
Вы когда провели проверку логина и пароля, отдайте обратно имя пользователя, оно у Вас будет в data, //success: function(data){
и тогда его можно будет вставить в div либо p по id
 
 Top
Хенаро
Отправлено: 07 Декабря, 2014 - 22:06:03
Post Id



Гость


Покинул форум
Сообщений всего: 65
Дата рег-ции: Нояб. 2014  


Помог: 0 раз(а)




andrewkard пишет:
Хенаро
Вы когда провели проверку логина и пароля, отдайте обратно имя пользователя, оно у Вас будет в data, //success: function(data){
и тогда его можно будет вставить в div либо p по id

Да, это можно сделать) Но как быть с остальным контентом который через эхо выводится???
 
 Top
andrewkard
Отправлено: 07 Декабря, 2014 - 22:10:39
Post Id


Участник


Покинул форум
Сообщений всего: 1372
Дата рег-ции: Нояб. 2014  


Помог: 30 раз(а)




А например, что именно выводится через echo? И на какой странице? Т.е. мы говорим про index.php?
 
 Top
Хенаро
Отправлено: 07 Декабря, 2014 - 22:16:28
Post Id



Гость


Покинул форум
Сообщений всего: 65
Дата рег-ции: Нояб. 2014  


Помог: 0 раз(а)




andrewkard пишет:
А например, что именно выводится через echo? И на какой странице? Т.е. мы говорим про index.php?

Ну да, index.php. Там много чего выводится Растерялся Например ссылочки вверху, в общем смотри сам http://henaro[dot]vindetta[dot]net/#IV/1[dot]jpg Подмигивание
 
 Top
Bio man
Отправлено: 07 Декабря, 2014 - 22:17:51
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2751
Дата рег-ции: Июль 2010  
Откуда: Даугавпилс, Латвия


Помог: 52 раз(а)




Хенаро пишет:
много материалов выводятся через эхо
Систему сам писал? Переделывай, "эхо" должно быть всего 1 (не считая шаблонов)
Что это?? Каким образом этот код выполняется? Посмотри ещё раз, у тебя не рабочий код.

А обновлять данные как описал andrewkard. Посылай либо отрендереный HTML либо json (при этом не забудь отправить заголовок Content-Type: application/json)
(Добавление)
Хенаро пишет:
Но как быть с остальным контентом который через эхо выводится???
Рендери шаблон на сервере и отдавай его, в success вставляй куда тебе надо.
(Добавление)
Bio man пишет:
Систему сам писал? Переделывай, "эхо" должно быть всего 1 (не считая шаблонов)
судя по твоей ссылке, рано я тебе это сказал, но всё равно имей ввиду, как знаний наберёшься, применишь
 
 Top
Хенаро
Отправлено: 07 Декабря, 2014 - 22:28:14
Post Id



Гость


Покинул форум
Сообщений всего: 65
Дата рег-ции: Нояб. 2014  


Помог: 0 раз(а)




Всё работает, как надо Подмигивание Если данные пришли, идём дальше, если они равны нулю - топаем ещё вперёд
Да делать мне нечего, по частям всё это отдавать))) Много возни, понимаешь.. Я хотел бы одним махом чтоб оно заново как бы прочитало страничку аяксом, типа так. Не знаешь, возможно ли такое вообще? Я только месяц программирую, зелёный ещё совсем)))
Всё сам Улыбка

(Отредактировано автором: 07 Декабря, 2014 - 22:30:32)

 
 Top
andrewkard
Отправлено: 07 Декабря, 2014 - 22:32:23
Post Id


Участник


Покинул форум
Сообщений всего: 1372
Дата рег-ции: Нояб. 2014  


Помог: 30 раз(а)




Хенаро пишет:
Например ссылочки вверху

Зачем их выводить через echo, пропишите напрямую в html без php
 
 Top
Viper
Отправлено: 07 Декабря, 2014 - 22:42:13
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




Хенаро https://angularjs[dot]org/ и шаблон и данные и аякс... все в одном.


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
Bio man
Отправлено: 07 Декабря, 2014 - 22:57:10
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2751
Дата рег-ции: Июль 2010  
Откуда: Даугавпилс, Латвия


Помог: 52 раз(а)




Хенаро пишет:
Всё работает, как надо
Судя по коду, я уверен, что не работает.
пустая строка, 0, null, undefined, false, может что то еще, приравниваются к булеву false в этом случае
, тобишь условие вернуло false и блок if'а не выполнится.
Хенаро пишет:
Я только месяц программирую
не программируешь а учишься

Короче так. В success делай ещё 1 аякс запрос с таким параметром url: "/" и в success вставляй data в документ. Но похоже, что подменить всё не получится. Останется doctype и теги <html></html>, их можно регулярками из data почистить
(Добавление)
Viper так сразу и на ангулар? Не потянет. Надо хотя бы принципы "общения" знать. А то будет 100500 тем в разделе JS
 
 Top
Хенаро
Отправлено: 07 Декабря, 2014 - 23:00:49
Post Id



Гость


Покинул форум
Сообщений всего: 65
Дата рег-ции: Нояб. 2014  


Помог: 0 раз(а)




andrewkard пишет:
Хенаро пишет:
Например ссылочки вверху

Зачем их выводить через echo, пропишите напрямую в html без php
Надобно Подмигивание чтоб пхп не рассляблялся

(Отредактировано автором: 07 Декабря, 2014 - 23:17:05)

 
 Top
andrewkard
Отправлено: 07 Декабря, 2014 - 23:16:48
Post Id


Участник


Покинул форум
Сообщений всего: 1372
Дата рег-ции: Нояб. 2014  


Помог: 30 раз(а)




Хенаро
Т.е., они у Вас меняются? Если так, тогда после проверки отдавайте массив всего того, что должно измениться, предварительно закодировав его в JSON "echo json_encode($ar_data);", в функции JS раскодируйте и вставляйте туда куда нужно.
 
 Top
Хенаро
Отправлено: 07 Декабря, 2014 - 23:17:54
Post Id



Гость


Покинул форум
Сообщений всего: 65
Дата рег-ции: Нояб. 2014  


Помог: 0 раз(а)




Bio manТы не понял, там пхп эхует))) 0 в случае если всё норм Подмигивание
PHP:
скопировать код в буфер обмена
  1.  $row=mysql_fetch_row($sql);
  2.         if ($pass==$row[2]){
  3.                 session_start();
  4.         $_SESSION['login']=$name;
  5.         $_SESSION['password']=$pass;
  6.                 //$html=file_get_contents('indexajax.php');
  7.         //header("Refresh: 5; url=/index.php"); пробовал и так  ::smile24.gif::
  8.         //header("location: ../index.php");
  9.         echo 0;


Можно попробовать через load() , нарыл вот http://jquery[dot]page2page[dot]ru/index[dot][dot][dot]0%BD%D1%8B%D1%85
(Добавление)
andrewkard пишет:
Хенаро
Т.е., они у Вас меняются? Если так, тогда после проверки отдавайте массив всего того,

Что ты со мной на вы, я здесь один. Да не хочется играться, по частям всё это вставлять.. ничего страшного, маленький редирект не помешает Подмигивание

(Отредактировано автором: 07 Декабря, 2014 - 23:18:55)

 
 Top
andrewkard
Отправлено: 07 Декабря, 2014 - 23:43:21
Post Id


Участник


Покинул форум
Сообщений всего: 1372
Дата рег-ции: Нояб. 2014  


Помог: 30 раз(а)




Может так:
location.reload()
 
 Top
Bio man
Отправлено: 08 Декабря, 2014 - 00:07:20
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2751
Дата рег-ции: Июль 2010  
Откуда: Даугавпилс, Латвия


Помог: 52 раз(а)




Хенаро а чем мой вариант не устраивает?
В данном случае с json нет смысла заморачиваться, так как придется городить кучу логики что бы эти данные обработать
 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB