..


Link-uri sponsorizate

Interacţiunea dintre PHP şi MS Access

Articolul scris de Luca Ruggiero

Introducere

Interacţiunea dintre PHP şi baza de date îşi găseşte expresia cea mai înaltă cu MySQL pe ambele Linux şi sistemele de operare Windows. PHP pe Windows este capabil de a lucra cu alte baze de date MySQL decât, exploatarea şi interfeţele caracteristicile cerute de diferite SGBD. PHP este capabil de a lucra cu MS Access si MS SQL Server: În acest articol vom vedea cum PHP interactioneaza cu Access.

Interfaţă între orice limbaj de programare, atât WUI web cu SGBD de la Microsoft, cum ar fi Access, ADO (ActiveX Data Objects), deja cunoscute pentru programatori ASP, ASP.NET si Visual Basic.

Înainte de a începe cu explicaţia de ADO şi a utilizării sale prin intermediul PHP şi primul care să pună în aplicare exemple, mă simt obligat să spun că PHP cuplat cu un SGBD de la Microsoft nu este cel mai recomandabil şi de performanţă, încă pe deplin funcţional.

Cunoştinţele necesare pentru înţelegerea deplină a prezentului articol sunt:

  • PHP şi sintaxa ei pe baza
  • ADO, cel puţin elementele de bază
  • MS Access, cel puţin unele familiaritate cu interfata vizuala
  • SQL, cel puţin elementele de bază
Lectură plăcută!

Structura bazei de date de testare

Pentru punerea în aplicare a unor exemple practice, vom crea fisierul este format din utilizatori unice database.mdb tabel Access, la rândul său, compus din domenii id (contra), nume (text) şi numele de familie (Text).

Publicaţi baza de date de pe server Web personal, Apache sau EasyPHP care, de exemplu, în termen de încercare

 



 C: \ percorso_fisico \ database.mdb

 
percorso_fisico în cazul în care este adresa fizica a serverului Web personale, instalate, ca în exemplul, partiţia C.

Baza de date este gata. Vom continua.

Introducere în ADO

ADO bibliotecă de la Microsoft care permite interacţiunea cu SGBD de la Microsoft sine sau cu alte DBMS-uri, de exemplu, cu MySQL pentru utilizarea sa cu ASP.

ADO oferă trei obiecte de bază: Connection, înregistrări, şi Comandamentul. Acest articol foloseşte primele două, respectiv, care servesc pentru a gestiona şi de a gestiona conexiunea de date. Al treilea este un subiect de specialitate, dar nu prea bun, chiar de către programatori utilizând Microsoft-stil, cu excepţia cazului în ocazii speciale.

(.): ASP Programatorii nota Dragi colegi :-) ca mine v-aţi obişnuit să utilizaţi dot Pentru a separa numele variabilei care conţine, de exemplu conexiunea, metoda sau a proprietăţii care urmează să fie utilizate; în PHP, pentru interacţiunea numai cu ADO, formularul este folosit ca un separator ->

 



 Variabila-> metodă

 
amintiţi-vă că!

Noi stabili conexiunea la baza de date

Acum creaţi un director pe testul nostru server Web, de exemplu, în dosar şi inseraţi connessione.php phpaccess care conţin codul de mai jos:






 <? PHP



    



 $ Db = "C: \ percorso_fisico \ database.mdb";



    



 $ Sc = "Provider = Microsoft.Jet.OLEDB.4.0; Sursă de date = $ db;"







 ?>



Variabila $ db conţine calea fizică a fişierului şi variabila $ database.mdb sc conţine şirul de conexiune OLEDB la baza de date, acest fişier va fi inclus în toate fişierele PHP, care va efectua operaţiunile în baza de date în cauză.

De citire a datelor

Pentru a face citirea datelor pe care le crea pe server, în dosarul de testare, leggi.php fişierul; de mai jos codul de comentat în fişierul:






 <html>



    



 <head>



        



 Interacţiunea <title> între PHP şi MS Access </ title>



    



 </ Head>







 <body>









 <? PHP



    



 / / Include fişierul care conţine şirul de conexiune



    



 includ ("connessione.php");





    



 / / Crearea două obiecte COM care conţin Connection şi Recordset



    



 $ Cn = new COM ("ADODB.Connection");



    



 $ R = new COM ("ADODB.Recordset");





    



 / / Am deschis Connection şi Recordset



    



 $ Cn-> open ($ sc);



    



 $ R-> Open ("SELECT * FROM utilizatori", $ cn);





    



 / / Verificaţi că nu există date pe masă



    



 if ($ rs-> EOF) print "Nu există date găsit </ p>";



    



 <b> / / În cazul în care există un ciclu de citire </ b>



    



 altceva în timp ce ($ rs-> EOF == FALSE)



    



 {



        



 de imprimare "<p>";



        



 print "Nume <b>: </ b>".

 



 $ R-> Domenii ['nume'] -> valoare;



        



 de imprimare "<br>";



        



 print "Nume <b>: </ b>".

 



 $ R-> Domenii ['nume'] -> valoare;



        



 de imprimare "</ p>";



        



 $ R-> MoveNext ();



    



 }





    



 / / Close Recordset



    



 $ R-> Close ();



    



 $ R-> Release ();



    



 $ R = null;





    



 / / Închide conexiunea



    



 $ Cn-> Close ();



    



 $ Cn-> Release ();



    



 $ Cn = null;







 ?>









 </ BODY>







 </ HTML>



Operaţiunea este simplă: treci interogare pentru a Recordset, şi citiţi specifică variabila în cazul în care conexiunea a fost deschis, în proprietatea Recordset EOF (End Of File) funcţia citeşte toate datele din interogare specificată, dacă este setat la TRUE înseamnă că nu există date în baza de date, apoi lansa mesajul de notificare, în cazul în care setat la FALSE în interiorul unei bucle, citeşte toate datele în funcţie de interogare specificat, MoveNext () opreşte ciclul şi poziţia cursorului ADO la începutul ciclului, evitându-o buclă infinită.

În încheiere metodele de subiect sunt Close () şi Release (), respectiv, care sunt utilizate pentru a închide şi de a distruge un obiect COM. În cele din urmă se stabileşte variabila la null pentru a sterge memoria de variabila.

Scrierea de date

Criteriul prin care vă scrie date într-o bază de date Access cu PHP este similară la criteriul de lectură a datelor în codul de mai jos, scris în dosar nu se utilizează scrivi.php Recordset, dar efectuează o INSERT SQL, datorită Execute () metoda de "obiect Connection, codul comentat:






 <html>



    



 <head>



        



 Interacţiunea <title> între PHP şi MS Access </ title>



    



 </ Head>







 <body>









 <? PHP



    



 / / Include fişierul care conţine şirul de conexiune



    



 includ ("connessione.php");





    



 $ Cn = new COM ("ADODB.Connection");



    



 $ Cn-> open ($ sc);





    



 / / Definiţi interogare



    



 $ Sql ​​= "INSERT INTO utilizatori (nume, prenume) VALUES ('Luca', 'Roger')";





    



 / / Asiguraţi-de introducere a datelor



    



 $ Cn-> Execute ($ sql);





    



 / / Lansarea unui mesaj de confirmare



    



 de imprimare "Introducerea <p> finalizat cu succes </ p>";





    



 / / Închide conexiunea



    



 $ Cn-> Close ();



    



 $ Cn-> Release ();



    



 $ Cn = null;







 ?>









 </ BODY>







 </ HTML>



În aceeaşi categorie ...
E-Learning
Linux (Curs) Linux (Curs)
Ghid complet pentru open-source de sistem. Incepand de la 49 €.
MySQL (Curs) MySQL (Curs)
De gestionare a bazei de date open-source. Incepand de la 39 €.
PHP (Curs) PHP (Curs)
Cursul completa pentru crearea de site-uri Web dinamice. Incepand de la 49 €.
Link-uri sponsorizate