Часть 2. Интеграция Ajax-XMLHttprequest и Perl

3) Example III: вывод массива текстовой информации из Базы Данных по SQL запросам (асинхронное обновление данных).
SQL запрос: (SELECT   FROM    myShop WHERE view='yes' LIMIT 0,50)
Обратная процедура - нажать кнопку
OUTPUT DATA
Чтобы загрузить содержимое по SQL запросу - выбирите "мышкой" из выпадающего списка нужную строку, например «Название продукта», и все. Обработка ответа сервера выполняется с помощью подпрограммы DBopen(). Таблица из БД загрузится асинхронно, а последовательность запросов-ответов в клиент-серверной архитектуре будет исключена.

Нажмите на клавиатуре Cntrl/U, чтобы убедиться, что обработка и вывод данных в браузер выполнена с помощью Javascript ("толстый клиент").
function DBopen(){
 if (req.readyState == 4) {
if (req.status == 200) {
		//document.getElementById('database').firstChild.nodeValue = req.responseText;
		document.getElementById('database').innerHTML = req.responseText;
					} else {
					alert("There was a problem retrieving the DataBase");
					}
				}
}//end func