|
Вопрос # 4 581/ вопрос открыт / |
|
Здравствуйте, эксперты!
Есть база данных MYSQL на хостинге и есть клиент написан на Дельфи7.
Подскажите примерный текст php скрипта для подключения клиента к БД не напрямую, а через этот скрипт посредник.
И как вызвать этот скрипт из Дельфи7 без компоненты браузера.
 |
Вопрос задал: Shadow (статус: Посетитель)
Вопрос отправлен: 14 сентября 2010, 21:51
Состояние вопроса: открыт, ответов: 1.
|
Ответ #1. Отвечает эксперт: DNK
Здравствуйте, Shadow!
Видится следующая схема:
1) Делается запрос серверу с помощью IdHTTP (Indy Clients)
2) PHP на сервере делает запрос в БД, но вместо html-страницы формирует xml
3) Данные полученные с помощью IdHTTP парсятся например с помощью XMLDocument (Internet)
PHP-скрипт:
<data>
<?php
define(DB_USER, 'user');
define(DB_PASSWORD, 'pass');
define(DB_HOST, 'localhost');
define(DB_NAME, 'mydb');
define(DB_QUERY, 'SELECT * FROM mytable');
$db_connection = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD);
mysql_select_db(DB_NAME);
$query_result = mysql_query(DB_QUERY) or die(mysql_error());
while ($row = mysql_fetch_array($query_result, MYSQL_ASSOC)) {
?>
<row>
<?php
foreach ($row as $key => $value) {
echo("<$key>$value</$key>\n");
}
?>
</row>
<?php
}
mysql_free_result($query_result);
mysql_close();
?>
</data>
Xml получаем следующим образом:
var i: integer;
begin
XMLDocument1.XML.Text := IdHTTP1.Get('http://mysite.net/');
with XMLDocument1.Node.Collection do
for i := 0 to Count - 1 do
with Nodes[i] do begin
// обрабатываем элемент базы
end;
end;
ЗЫ: Не проверял
Приложение: Переключить в обычный режим- <data>
- <item>
- <fild1>item1-value1</fild1>
- <fild2>item1-value2</fild2>
- <fild3>item1-value3</fild3>
- </item>
- <item>
- <fild1>item2-value1</fild1>
- <fild2>item2-value2</fild2>
- <fild3>item2-value3</fild3>
- </item>
- </data>
 |
Ответ отправил: DNK (статус: Студент)
Время отправки: 15 сентября 2010, 13:03
Оценка за ответ: 5
|
Мини-форум вопроса
Всего сообщений: 1; последнее сообщение — 14 сентября 2010, 22:10; участников в обсуждении: 1.
|
Shadow (статус: Посетитель), 14 сентября 2010, 22:10 [#1]:
Здравствуйте, эксперты!
Есть база данных MYSQL на хостинге и есть клиент написан на Дельфи7.
Подскажите примерный текст php скрипта для подключения клиента к БД не напрямую, а через этот скрипт посредник.
И как вызвать этот скрипт из Дельфи7 без компоненты браузера.
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|