• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Select Ajax + Php

  • Автор темы tstf
  • Дата начала
Статус
Закрыто для дальнейших ответов.
T

tstf

Нужно реализовать следующее.
При выборе пункат из listmenu выполняется SQL запрос и без перезагрузки страницы появляются input-ы. Мне сказали что такое делается через AJAX.

Может кто поможет?

PS Я порылся в нете и нашёл только java-скрипты, в которых не выполнялся php-код, а значения были заданы ранее в яваскрипте.
 
S

sir Aurum

PS Я порылся в нете и нашёл только java-скрипты, в которых не выполнялся php-код, а значения были заданы ранее в яваскрипте.

Посмотри примеры по AJAX подробнее, ты найдешь, что JS делает запросы к серверу и на нем уже отрабатывает PHP. На самом деле все это описано в любом туториале по AJAX

На словах алгоритм такой:
через XMLHTTPRequest ты делаешь запрос к серверу, запрашиваешь свой PHP скрипт. Параметры ему передаешь гетом или постом. PHP скрипт делает свои SQL запросы и в ответе возвращает все инпуты. Варианта возврата в нашем случае может быть три: XML, JSON, HTML

Например, ответ содержит готовый HTML в виде строки и ты его поместил в переменную response:
у тебя есть вот такой div, в который надо вставить ответ:
HTML:
<div id="inputs">
<!-- Received inputs should be placed here -->
</div>

тогда делаешь так:
Код:
document.getElementById('inputs').innerHTML = response;

Если же у тебя ответ пришел в формате JSON, например массив объектов:
Код:
[{'value': 'Беларусь', 'name': 'BY'},{'value': 'Россия', 'name': 'RU'},{'value': 'Соединенные штаты', 'name': 'US'}]

то создаешь скриптом все inputы:
Код:
eval("var response = "+response);
var inputs = document.getElementById('inputs');
for(var i = 0; i < response.length; i++){
var input = document.createElement("INPUT");
input.value = response[i].value;
input.name = response[i].name;
inputs.appendChild(input);
}

Все
 
D

Detka

Здрасте. Я тут новенькая, но свёже нуждаюсь в помощи... Ничего я не поняла что тут написали, но у меня такая же задача )) Может кто поможет конкретно в мой скриптик втыкнуть такое? Если надо, то я заплачу.

Спасибо.
 
T

tstf

Если есть доброволец, то постучите плиз в асю 4322286. Есть вопрос по этой теме (просто сложно объяснить) Обещаю небольшое вознаграждение за помощь :)
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!