..


Рекламні посилання

Взаємодія PHP і MS Access

Стаття, написана Лукою Руджеро

Введення

Взаємодія між 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 не найбільш доцільно і продуктивності, але все ж повністю функціональним.

Знання, необхідні для повного розуміння цієї статті, є:

  • PHP, синтаксис і основні
  • ADO, принаймні основи
  • Ms Access, принаймні трохи знайомі з її візуальним інтерфейсом
  • SQL, принаймні основи
Приємного читання!

Структура тестовій базі даних

Для реалізації деяких практичному прикладі ми створимо файл складається з однієї таблиці користувачів database.mdb Access, в свою чергу, складаються з полів ідентифікатора (лічильник), ім'я (текст) та прізвище (Текст).

Місце бази даних на вашому особистому веб-сервера, Apache або Денвер, що, наприклад, в тестовий запуск

 



 C: \ percorso_fisico \ database.mdb

 
percorso_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>



У тій же категорії ...
E-Learning
Linux (курс) Linux (курс)
Повне керівництво по відкритим вихідним кодом системи. Від 49 €.
MySQL (курс) MySQL (курс)
Управління з відкритим вихідним кодом бази даних. З 39 €.
PHP (курс) PHP (курс)
Повний курс для створення динамічних веб-сайтів. Від 49 €.
Рекламні посилання