..
Введение
Взаимодействие между PHP и базы данных находит свое высшее выражение в MySQL на обоих Linux и Windows, систем. PHP на Windows, может работать с базами данных, кроме MySQL, используя функции и интерфейсы, необходимые различными СУБД. Неужели PHP не умеет работать с MS Access и MS SQL Server: В этой статье мы увидим, как PHP взаимодействует с Access.
Интерфейс между любым языком программирования и веб-WUI, с СУБД от Microsoft, такие как Access, ADO (ActiveX Data Objects) уже знакома программистам ASP, ASP.NET и Visual Basic.
Перед тем, как начать с объяснения ADO и его использование через PHP и, прежде чем внедрять примеры, я чувствую себя обязанным сказать, что PHP в сочетании с СУБД от Microsoft не наиболее целесообразно и производительности, но все же полностью функциональным.
Знания, необходимые для полного понимания настоящей статьи, являются:
Структура тестовой базе данных
Для реализации некоторых практическом примере мы создадим файл состоит из одной таблицы пользователей database.mdb Access, в свою очередь, состоят из полей идентификатора (счетчик), имя (текст) и фамилию (Текст).
Место базы данных на вашей личной веб-сервера, Apache или Денвер, что, например, в тестовый запуск
C: \ percorso_fisico \ database.mdbpercorso_fisico где физический адрес вашей личной веб-сервер, установлен, как в этом примере, раздел C.
База данных готова. Продолжить.
Введение в ADO
ADO представляет собой библиотеку от Microsoft, который позволяет взаимодействия с СУБД от Microsoft сама или с другими СУБД, такие как MySQL для работы с ASP.
ADO предлагает три основные объекты: Connection, Recordset и командования. В этой статье используются первые два выступающей соответственно управлять связи и управления данными. Третий специалист тему, но не слишком хорошо, даже для программистов Microsoft, чтобы умереть, за исключением особых случаев.
ASP программистов, обратите внимание: Уважаемые коллеги, как я :-) вы привыкли использовать знак точки Чтобы отделить имя переменной, которая содержит, например, связь, метод или свойство, которые будут использоваться, в PHP, для (.) только взаимодействие с ADO, он используется в качестве разделителя в виде ->
Переменная-> методпомните это!
Создание соединения с базой данных
Теперь создайте каталог на нашем веб-сервер тест, например, в файл и вставить phpaccess connessione.php, содержащий следующий код:
<? PHP
$ Db = "C: \ percorso_fisico \ database.mdb";
$ Sc = "Provider = Microsoft.Jet.OLEDB.4.0; Data Source = $ DB;"
?>
Переменная $ БД содержит физический путь к файлу и переменной $ подкожно database.mdb содержит OLEDB строку подключения к базе данных, этот файл будет включен во все PHP-файлы, которые будут осуществлять операции по базе данных идет речь.
Чтение данных
Чтобы выполнить чтение данных мы создаем на сервере, в тестовой папки, файла leggi.php, ниже прокомментировал код файл:
<html>
<head>
<title> Взаимодействие PHP и MS Access </ TITLE>
</ HEAD>
<body>
<? PHP
/ / Включаем файл, содержащий строку подключения
включают в себя ("connessione.php");
/ / Создание двух COM-объекты, содержащие соединения и записей
$ Сп = новый COM ("ADODB.Connection");
$ Rs = новый COM ("ADODB.Recordset");
/ / Я открываю Подключение и записей
$ Сп-> Открыть ($ SC);
$ Rs-> Open ("SELECT * FROM пользователей", $ сп);
/ / Проверяем, что Есть нет данных о стол
если ($ RS-> EOF) печати "Данные не найдены <p> </ P>";
<b> / / Если есть цикл чтения </ B>
еще в то время как ($ RS-> EOF == FALSE)
{
печать "<p>";
печать "<b> Название: </ B>".
$ Rs-> Fields ['имя'] -> значение;
печать "<br>";
печать "<b> Фамилия: </ B>".
$ Rs-> Fields ['имя'] -> значение;
печати "</ P>";
$ Rs-> MoveNext ();
}
/ / Закрыть записей
$ Rs-> Close ();
$ Rs-> Release ();
$ Rs = NULL;
/ / Закрыть подключение
$ Сп-> Close ();
$ Сп-> Release ();
$ Сп = NULL;
?>
</ Body>
</ Html>
Операция проста: Recordset пройти чтения и конкретных запросов в переменной, в которой открытия соединения, свойства Recordset EOF (конец файла) считывает все данные в соответствии с указанного запроса, если установлен в значение TRUE означает, что нет никаких данных в базе данных, затем запустить уведомление, если установлен в FALSE в цикле, считывает все данные в соответствии с указанного запроса; MoveNext () завершает цикл и позиции курсора ADO в начале цикла, избегая бесконечный цикл.
Закрытие объекта методы Close () и Release (), которые служат, соответственно, чтобы закрыть и уничтожить COM-объект. Наконец вы установите переменную до нуля, чтобы очистить память переменной.
Запись данных
Критерий, по которому вы записываете данные на доступ к базе данных с PHP похож на критерий чтения данных в следующий код, написанный в файле не использовать Recordset scrivi.php но выполняет SQL INSERT, чтобы благодаря Execute () метод "Подключение объекта, прокомментировал код:
<html>
<head>
<title> взаимодействия между PHP и MS Access </ TITLE>
</ HEAD>
<body>
<? PHP
/ / Включаем файл, содержащий строку подключения
включают в себя ("connessione.php");
$ Сп = новый COM ("ADODB.Connection");
$ Сп-> Открыть ($ SC);
/ / Определяем запрос
$ SQL = "INSERT INTO пользователей (имя, фамилия) VALUES ('Лука", "Роджер") ";
/ / Сделать ввода данных
$ Сп-> Выполнить ($ SQL);
/ / Запуск подтверждающее сообщение
печать "Вставка <p> успешно </ P>";
/ / Закрыть подключение
$ Сп-> Close ();
$ Сп-> Release ();
$ Сп = NULL;
?>
</ Body>
</ Html>
| |
Linux (курс)
Полное руководство по открытым исходным кодом системы. От 49 €. |
| |
MySQL (курс)
Управление с открытым исходным кодом базы данных. С 39 €. |
| |
PHP (курс)
Полный курс для создания динамических веб-сайтов. От 49 €. |