Front-end: html страничка с JS. Необходимо чтобы пользователь ввел данные. Фактически строка "008" или "909" (ID в базе данных). ответ от сервера в JSON. Вот такого вида
{"ID":"107","Diapazon":"vse","Adres":"ulKirova","I nfrastructura":"DOM","Prinadlegnost":"RR","Dostup" :"svobodnue","Kluch":"universalnii","Aparatnaa":"2 ","AD":"NO","Contact":"NO","WGS":"65.99 40.778","Primechanie":"nich"}
Ответ надо обработать и вывести в виде таблицы (количество столбцов 2, строк столько же сколько параметров JSON, т.е. 12).
back-end: LAMP. PHP скрипт "cod.php" обрабатывает запрос по переданному значению ID.
<?php
require_once 'connection.php'; // подключаем скрипт
// подключаемся к серверу
$link = mysqli_connect($host, $user, $password, $database)
or die("Ошибка " . mysqli_error($link));
$ID= $_REQUEST[ID];
// выполняем операции с базой данных
$query ="SELECT * FROM `Client` WHERE ID= $ID";
$result = mysqli_query($link, $query) or die("Ошибка " . mysqli_error($link));
//if($result)
//{
// echo "Выполнение запроса прошло успешно";
//}
if (mysqli_num_rows($result) > 0)
{
while($row=mysqli_fetch_array($result))
{
// заносим данне в массив
$client[ID] = $row[ID];
$client[Surname] = $row[Surname];
$client[Name] = $row[Name];
$client[Middlename] = $row[Middlename];
}
}
else
{
$client[Surname] = 'net dannux';
$client[Name] = 'net dannux';
$client[Middlename] = 'net dannux';
}
echo (json_encode($client));
// закрываем подключение
mysqli_close($link);
?>
Вопрос в том каким способом передать из JS то самое значение ID? XMLHttpRequest? но вот какого типа именно? Если POST, то потребуется ли переделка серверной части PHP? Я так понимаю, что проще передать через GET, но в примерах не увидел как передается параметр.
https://learn.javascript.ru/ajax-xmlhttprequest
var xhr = new XMLHttpRequest();
xhr.open('GET', '/my/url', true);
xhr.send();
xhr.onreadystatechange = function() {
if (this.readyState != 4) return;
// по окончании запроса доступны:
// status, statusText
// responseText, responseXML (при content-type: text/xml)
if (this.status != 200) {
// обработать ошибку
alert( 'ошибка: ' + (this.status ? this.statusText : 'запрос не удался') );
return;
}
// получить результат из this.responseText или this.responseXML
}
xhr.open('GET', '/my/url', true); --- тут как то в URL передавать переменную с ID?