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 :: Как подключить файл обработки ajax запроса к своему проекту.

 PHP.SU

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


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

> Без описания
St.
Отправлено: 12 Октября, 2016 - 13:50:59
Post Id


Новичок


Покинул форум
Сообщений всего: 35
Дата рег-ции: Февр. 2016  


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




Ниже приведен стандартый код отправки ajax запроса на сервер.
В filecheck - это имя файла php, который будет обрабатывать ajax запрос.

Как подключить filecheck к своему проекту?
Может можно как-то вызвать функцию (а не filecheck)?
Эбм-мм-э... Мне не совсем это понятно...

П.С.
Не хочется в файле filecheck опять писать подключение к MySql и т.п.
Как это правильно (универсально) сделать?

CODE (javascript):
скопировать код в буфер обмена
  1. // Отправка данных на сервер методом POST.
  2. function TransferPOST(data, id, urlimgwait, urlimgsuccessfully, urlimgfailure, filecheck)
  3. {
  4. // data               - что отправить на сервер.
  5. // id                 - имя id div'а или span'а, где будет размещен ответ.
  6. // urlimgwait         - тег <img> индикатора ожидания.
  7. // urlimgsuccessfully - тег <img> индикатор успешно.
  8. // urlimgfailure      - тег <img> индикатор неудача.
  9. // filecheck          - файл php, который будет обрабатывать запрос.
  10.  
  11.         var data;
  12.                 var id;
  13.                         var urlimgwait;
  14.                         var urlimgsuccessfully;
  15.                 var urlimgfailure;
  16.         var filecheck;
  17.  
  18.         // Создаём объект XMLHTTP.
  19.         var xmlhttp = getXmlHttp();
  20.  
  21.         // Открываем асинхронное соединение.
  22.         xmlhttp.open('POST', filecheck, true);
  23.  
  24.                 // Отправляем тип содержимого.
  25.                 xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
  26.  
  27.                         // Отправляем POST-запрос.
  28.                         xmlhttp.send("data=" + encodeURIComponent(data));
  29.  
  30.         // Вставить изображение ожидания.
  31.         var image = document.getElementById(id);
  32.                 image.innerHTML = urlimgwait;
  33.  
  34.         // Ждём ответа от сервера
  35.         xmlhttp.onreadystatechange = function()
  36.         {
  37.         // Ответ пришёл
  38.         if (xmlhttp.readyState == 4)
  39.                 {
  40.                  // Сервер вернул код 200 (что хорошо)
  41.                 if(xmlhttp.status == 200)
  42.                         {
  43.                         if (xmlhttp.responseText)
  44.                                 {
  45.                                 // Успешно.
  46.                                 var image = document.getElementById(id);
  47.                                 image.innerHTML = urlimgsuccessfully;
  48.                                 }
  49.                                 else
  50.                                 {
  51.                                 // Неудача.
  52.                                 var image = document.getElementById(id);
  53.                                 image.innerHTML = urlimgfailure;
  54.                                 }
  55.                         }
  56.                         else
  57.                         {
  58.                         alert("При обращении к серверу возникли проблемы: " + xmlhttp.statusText);
  59.                         }
  60.                 }
  61.         }
  62. }
  63.  
  64. // Создать кросс-броузерный объект.
  65. function getXmlHttp() {
  66.  
  67.         var xmlhttp;
  68.  
  69.         if (window.ActiveXObject)
  70.                 {
  71.                         try
  72.                         {
  73.                         // Если сценарий запущен под управлением IE.
  74.                         xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
  75.                         }
  76.                         catch (e)
  77.                         {
  78.                         xmlhttp = false;
  79.                         }
  80.                 }
  81.                 else
  82.                 {
  83.                         try
  84.                         {
  85.                         // Если сценарий запущен под управлением Mozilla и т.п.
  86.                         xmlhttp = new XMLHttpRequest();
  87.                         }
  88.                         catch (e)
  89.                         {
  90.                         xmlhttp = false;
  91.                         }
  92.                 }
  93.  
  94.         if (!xmlhttp)
  95.                 alert("Ошибка создания объекта XMLHttpRequest.");
  96.                 else
  97.                 return xmlhttp;
  98. }

(Добавление)
Тема об этом здесь: http://javascript[dot]ru/forum/ajax/[dot][dot][dot]emu-proektu[dot]html

(Отредактировано автором: 12 Октября, 2016 - 15:46:32)

 
 Top
zypikov
Отправлено: 12 Октября, 2016 - 16:08:15
Post Id



Частый гость


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


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




St. пишет:
Как подключить filecheck к своему проекту?

St. пишет:
Не хочется в файле filecheck опять писать подключение к MySql и т.п.
Как это правильно (универсально) сделать?


Не зная как у вас устроена архитектура, сложно что-то посоветовать.

St. пишет:
Может можно как-то вызвать функцию (а не filecheck)?
. Нет, насколько я знаю любой ajax-транспорт делает запрос к файлу.
И.. что этот скрипт отправляет на сервер?


-----
У всего есть обратная сторона.
 
 Top
Fart
Отправлено: 12 Октября, 2016 - 16:39:30
Post Id



Посетитель


Покинул форум
Сообщений всего: 324
Дата рег-ции: Июль 2016  


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




St., немного не понимаю какая проблема возникла при подключении некого файла (а-)синхронного запроса Хм

не получается копировать и использовать js функции ? тут все сложнее тогда.

нет желания создавать доп подключение к субд? создай файлы с динамической загрузкой и они будут выполнять все те действия без повторного копипаста кода.
даже просто делать include "connect.database.php"; - уже избавить от использования повторного кода.

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


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB