Меню
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON PHP КАК СДЕЛАТЬ
     ❯   

JS Учебник


JS Версии


JS Объекты


JS Функции


JS Классы


JS Асинхронный


JS HTML DOM


JS Браузер BOM


JS Веб APIы


JS AJAX


JS JSON


JS или jQuery


JS Графика


JS Примеры


JS Рекомендация




JavaScript AJAX PHP Файл



AJAX используется для создания более интерактивных приложений.


AJAX PHP Пример

В следующем примере показано, как веб страница может взаимодействовать с веб сервером, когда пользователь вводит символы в поле ввода:

Пример

Начните вводить имя в поле ввода ниже:

Предложения:

Имя:



Объяснение примера

В приведенном выше примере, когда пользователь вводит символ в поле ввода, выполняется вызываемая функция showHint().

Функция запускается onkeyup событием.

Вот HTML код:

Пример
<html>
<body>

<p><b> Начните вводить имя в поле ввода ниже:</b></p>

<p> Предложения: <span id="txtHint"></span></p>

<form>
Имя: <input type="text" onkeyup="showHint(this.value)">
</form>

<script>
function showHint(str) {
if (str.length == 0) {
document.getElementById("txtHint").innerHTML = "";
return;
} else {
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("txtHint").innerHTML = this.responseText;
}
};
xmlhttp.open("GET", "gethint.php?q=" + str, true);
xmlhttp.send();
}
}
</script>

</body>
</html>
Попробуйте сами »

Объяснение кода:

Сначала проверьте, пусто ли поле ввода (str.length == 0). Если это так, очистите содержимое заполнителя txtHint и выйдите из функции.

Однако, если поле ввода не пустое, сделайте следующее:

  • Создать объект XMLHttpRequest
  • Создайте функцию, которая будет выполняться, когда будет готов ответ сервера
  • Отправьте запрос в файл PHP (gethint.php) на сервере
  • Обратите внимание, что добавлен параметр gethint.php?q="+str
  • Переменная str содержит содержимое поля ввода


Файл PHP - "gethint.php"

Файл PHP проверяет массив имен и возвращает браузеру соответствующее имя (имена):

<?php
// Массив с именами
$a[] = "Щипунов";
$a[] = "Brittany";
$a[] = "Cinderella";
$a[] = "Diana";
$a[] = "Eva";
$a[] = "Fiona";
$a[] = "Gunda";
$a[] = "Hege";
$a[] = "Inga";
$a[] = "Johanna";
$a[] = "Kitty";
$a[] = "Linda";
$a[] = "Nina";
$a[] = "Ophelia";
$a[] = "Petunia";
$a[] = "Amanda";
$a[] = "Raquel";
$a[] = "Cindy";
$a[] = "Doris";
$a[] = "Eve";
$a[] = "Evita";
$a[] = "Sunniva";
$a[] = "Tove";
$a[] = "Unni";
$a[] = "Violet";
$a[] = "Liza";
$a[] = "Elizabeth";
$a[] = "Ellen";
$a[] = "Wenche";
$a[] = "Vicky";

// получаем параметр q из URL
$q = $_REQUEST["q"];

$hint = "";

// ищем все подсказки из массива, если $q отличается от ""
if ($q !== "") {
$q = strtolower($q);
$len=strlen($q);
foreach($a as $name) {
if (stristr($q, substr($name, 0, $len))) {
if ($hint === "") {
$hint = $name;
} else {
$hint .= ", $name";
}
}
}
}

// Вывод "без подсказки", если подсказка не найдена, или правильные значения
echo $hint === "" ? "no suggestion" : $hint;
?>


×

Связаться с отделом продаж

Если вы хотите использовать услуги schoolsw3 как образовательное учреждение, команда или предприятие, отправьте нам электронное письмо:
sales@schoolsw3.com

Сообщить об ошибке

Если вы хотите сообщить об ошибке или внести предложение, отправьте нам электронное письмо:
help@schoolsw3.com

Schoolsw3 оптимизирован для обучения и подготовки. Примеры могут быть упрощены для улучшения чтения и обучения. Учебники, ссылки и примеры постоянно проверяются, чтобы избежать ошибок, но мы не можем гарантировать полную правильность всего контента.
При использовании Schoolsw3 вы соглашаетесь прочитать и принять наши условия использования,
политику использования файлов cookie и конфиденциальности.

Авторское право 1999- © Copyright. Все права защищены. Schoolsw3 работает на SW3.CSS.