..
Ievads
Starp PHP un datubāzes mijiedarbība atrod savu augstāko izpausmi ar MySQL gan Linux un Windows sistēmām. PHP uz Windows ir spējīgs strādāt ar datu bāzēm, izņemot MySQL, izmantojot funkcijas un saskarnes, ko pieprasa dažādas DBVS. Vai PHP var strādāt ar MS Access un MS SQL Server: Šajā rakstā mēs redzētu, kā PHP mijiedarbojas ar Access.
Saskarne starp jebkuru programmēšanas valodu, Web WUI, ar DBVS no Microsoft, piemēram, tā pieejamība, ADO (ActiveX Data Objects) jau pazīstami ar ASP programmētāju, ASP.NET un Visual Basic.
Pirms sākt ar paskaidrojumu par ADO un caur PHP tās izmantošanu, un pirms īstenošanas piemēriem, es uzskatu, pienākums teikt, ka PHP kopā ar Microsoft DBVS nav visvairāk ieteicams un sniegumu, bet joprojām ir pilnībā funkcionāla.
Zināšanas, kas nepieciešamas, lai pilnībā izprastu šo pantu ir:
Struktūra testa datu bāzes
Lai īstenotu dažas praktiskas piemēram, mēs izveidosim fails sastāv no vienas tabulas database.mdb Access lietotājiem, savukārt sastāv no laukiem id (skaitītājs), vārds (teksts) un uzvārdu (teksts).
Novietojiet datu bāzi par savu personisko Web serveri, Apache vai EasyPHP, ka, piemēram, testu
C: \ percorso_fisico \ database.mdbpercorso_fisico kur ir fizisko adresi jūsu personisko Web serveri, kas uzstādīta, kā šajā piemērā, C partition.
Datu bāze ir gatava. Turpināt.
Ievads ADO
ADO ir bibliotēka, no Microsoft, kas ļauj mijiedarbību ar DBVS no Microsoft pašu vai kopā ar citām DBVS, piemēram, MySQL, lai to izmantotu ar ASP.
ADO piedāvā trīs galvenās objekti: Savienojums, RecordSet, un komandu. Šis raksts izmanto pirmās divas apkalpo attiecīgi pārvaldīt savienojumu un pārvaldītu datus. Trešais ir speciālists tēmu, bet ne pārāk labi pat, ko izmanto Microsoft programmētāji mirt, izņemot īpašos gadījumos.
ASP programmētāju, ņemiet vērā: Cienījamie kolēģi, kā man :-) jums ir pieraduši, izmantojot dot rakstzīmju Lai atdalītu mainīgā nosaukums, kas satur, piemēram, savienojumu, metodi vai īpašumu, ko izmanto, PHP, par (.) tikai mijiedarbību ar ADO, tas tiek izmantots kā atdalītājs formā ->
mainīga-> metodeatcerieties, ka!
Izveidot datu bāzes savienojuma
Tagad izveidot direktoriju par mūsu testu web servera, piemēram, failu un ievietot phpaccess connessione.php, kas satur šādu kodu:
<? PHP
$ Db = "C: \ percorso_fisico \ database.mdb";
$ Sc = "Provider = Microsoft.Jet.OLEDB.4.0; Datu avots = $ db;"
?>
Mainīgais $ db satur fizisko faila ceļu un mainīgajā $ sc database.mdb satur OLEDB savienojuma virknes no datubāzes, šis fails tiks iekļauti visi PHP faili, kas veiks operācijas datubāzi jautājumu.
Reading datu
Lai veiktu nolasīt datus mēs izveidot uz servera, testā mapi, failu leggi.php zem komentēja kods failu:
<html>
<head>
<title> Mijiedarbība starp PHP un MS Access </ title>
</ Head>
<body>
<? PHP
/ / Include failu, kas satur savienojuma virkne
ietver ("connessione.php");
/ / Izveidot divas COM objekti, kas satur Savienojums un Recordset
$ Cn = jauni COM ("ADODB.Connection");
$ Rs = jauni COM ("ADODB.Recordset");
/ / Es atvērtu Connection un Recordset
$ Cn-> Open ($ sc);
$ Rs-> Open ("SELECT * FROM lietotājiem", $ cn);
/ / Pārbaudiet, ka nav uz galda datu
if ($ rs-> EOF) print "Nav datu atrasts <p> </ p>";
/ <b> / Ja ir lasīšanas cikla </ b>
cits while ($ rs-> EOF == FALSE)
{
print "<p>";
print "<b> Vārds: </ b>".
$ Rs-> Lauki ['name'] -> vērtība;
print "<br>";
print "<b> Uzvārds: </ b>".
$ Rs-> Lauki ['name'] -> vērtība;
print "</ p>";
$ Rs-> MoveNext ();
}
/ / Aizvērt RecordSet
$ Rs-> Close ();
$ Rs-> izlaidums ();
$ Rs = null;
/ / Aizvērt Connection
$ Cn-> Close ();
$ Cn-> izlaidums ();
$ Cn = null;
?>
</ Body>
</ Html>
Darbība ir vienkārša: RecordSet iziet lasīšanu un īpašus jautājumus, mainīgo, kurā savienojums tika atvērtas, un Recordset EOF (faila beigas) īpašībām skan visus datus, saskaņā ar precizētiem vaicājumu, ja ir iestatīts uz TRUE nozīmē, ka nav datu bāzes datiem, tad sākt rādīt paziņojumu, ja ir iestatīts FALSE pa apli, lasa visus datus atbilstoši noteiktajiem vaicājumu; MoveNext () izbeidz cilpu un novietojiet kursoru ADO sākumā cikla, izvairoties infinite loop.
Objekta slēgšana ir metodes Close () un atbrīvošanas (), kas kalpo attiecīgi slēgt un iznīcināt COM objektu. Visbeidzot jums noteikti mainīgo null, lai nodzēstu atmiņā mainīgo.
Writing dati
Kritēriji, pēc kuriem var rakstīt datus uz Access datu bāzi ar PHP ir līdzīgs kritērijs nolasīt datus šādu kodu, kas rakstīts fails neizmanto Recordset scrivi.php bet izpilda SQL INSERT, pateicoties Execute () metodi "Connection objekts, komentēja kodu:
<html>
<head>
<title> Mijiedarbība starp PHP un MS Access </ title>
</ Head>
<body>
<? PHP
/ / Include failu, kas satur savienojuma virkne
ietver ("connessione.php");
$ Cn = jauni COM ("ADODB.Connection");
$ Cn-> Open ($ sc);
/ / Define query
$ Sql = "INSERT INTO lietotāju (vārds, uzvārds) VALUES ('Luca", "Roger')";
/ / Make datu ievades
$ Cn-> Execute ($ sql);
/ / Uzsākt apstiprinājuma ziņojums
print "ievietošana <p> sekmīgi pabeigta </ p>";
/ / Aizvērt Connection
$ Cn-> Close ();
$ Cn-> izlaidums ();
$ Cn = null;
?>
</ Body>
</ Html>
| |
Linux (Kurss)
Pilnīga rokasgrāmata, lai atvērtā koda sistēmas. Sākot no 49 €. |
| |
MySQL (Kurss)
Vadība ir atvērtā koda datu bāzi. Sākot no € 39. |
| |
PHP (Kurss)
Pilns kurss, lai radītu dinamisku tīmekļa vietnes. Sākot no 49 €. |