Взаимодействие с СУБД
 

Для начала создаём таблицу PostgreSQL, она может быть создана с помощью:

CREATE TABLE GORODA(
ID SERIAL PRIMARY KEY, -- внутренний ключ дял ссылок
GOROD TEXT, -- название населенного пункта
KOD TEXT -- код междугородней связи
);

-- Несколько начальных записей
INSERT INTO GORODA (GOROD,KOD) VALUES ('Москва','095');
INSTER INTO GORODA (GOROD,KOD) VALUES ('Питер','812');
INSTER INTO GORODA (GOROD,KOD) VALUES ('Киев','044');


GRANT SELECT on GORODA to nobody; -- чтобы Apache имел право доступа

Для того чтобы создать соответствующую базу данных, нам потребуеться поместить приведенный выше SQL-запрос в файл, например phone.sql , а затем из пользовательского счета администратора PostgreSQL ввести след. команды: createdb phone psql -f phone.sql phone В результате будет созданна база данных phone , в ней будет определена таблица GORODA, а уже в ней созданы три записи. Теперь можно приступать к созданию программы. Программа выводит телефонные коды городов:

Список кодов автоматической междугородней связи

<?php
# Вначале подключаемся к серверу базы данных
$database = pg_Connect("","","","","phone");
if (!$database)
{
echo "Подключиться к серверу не удалось!";
exit;
}
# Теперь формируем и выполняем запрос
$result = pg_Exec($database,
"select gorod,kod from goroda");

# фиксируем количество строк, возвращенных в
# результате выполнения запроса
$num_recs = pg_NumRows($result);
if ($num_recs > 0)
{
?>
<TABLE BORDER=1>
<TR><TH>Наименование населенного пункта</TH><TH>Код</TH>
</TR>
<?
for ($i = 0; $i < $num_recs; $i++)
{
$current_city = pg_Result($result,$i,0); # Первое поле
$current_kod = pg_Result($result,$i,1); # и второе
echo "<TR><TD>$current_city</TD><TD>$current_kod</TD></TR>";
}
?>
</TABLE>
<?
} else {
echo "Список, к сожалению, пуст!";
}
# конец программы

?>

 
Автор: Тимофей Пуговкин
 
Оригинал статьи: http://www.woweb.ru/publ/59-1-0-298