PHP og MS Access

Tags:    php
Skrevet af Bruger #4193 @ 18.08.2003
PHP og Microsoft Access er to ting man ikke lige umiddelbart forbinder med hinanden - de fleste bruger MySQL, PostGreSQL eller andre af de gratis databaser.

Men jeg havde et konkret problem - min ISP tog ekstra penge for hver MySQL database man ville have, og med mit spinkle budget kunne jeg lige så godt glemme det. Desuden ville jeg have så mange databaser som jeg ville ha'.

Denne tutorial kræver, at din webserver kører Windows NT eller 2000.

Trin 1: Oprettelse af database


Først og fremmest skal vi have en Access-fil (.mdb).
Lav en tabel med felterne:

fornavn (Tekst)
efternavn (Tekst)
adresse (Tekst)
postnr (Tal)
telefon (Tal)

Kald tabellen PersonTabel og lav to personer - jeg har fx. lavet:
Fold kodeboks ind/udKode 

Gem databasen som PERSON.MDB i den mappe hvor du vil lave din database-powered applikation.

Trin 2: Opret forbindelse til database


Vi vil nu bruge en teknologi, som PHP ikke understøtter direkte, nemlig en ADODB forbindelse gennem COM.

Den laver vi med:

Fold kodeboks ind/udKode 


Nu starter PHP automatisk et COM objekt for os, hvor vi kan lave en forbindelse til Access.

Næste trin er at lave forbindelses-strengen:

Fold kodeboks ind/udKode 


Nu vil vi åbne forbindelsen:

Fold kodeboks ind/udKode 



Trin 3: SQL


Nu skal vi så have lavet en SQL-deklaration for hvilke felter vi vil hente:

Fold kodeboks ind/udKode 



Udskrivning af indhold


Før vi udskriver indholdet skal vi lige gøre det pænt:

Fold kodeboks ind/udKode 


- og nu skal vi så endelig til at udskrive det! :D

Fold kodeboks ind/udKode 


Det vil udskrive alle data i vores database :)

I del 2 vil vi udskrive enkelte elementer i databasen :)

Hvad synes du om denne artikel? Giv din mening til kende ved at stemme via pilene til venstre og/eller lægge en kommentar herunder.

Del også gerne artiklen med dine Facebook venner:  

Kommentarer (15)

User
Bruger #3884 @ 22.08.03 14:53
Kan man ik bruger XP ?
User
Bruger #4193 @ 23.08.03 20:08
Jo, jo :)

Men internetudbydere kører sjældent med Windows XP (aldrig) - de kører med NT/2000 og 2003
User
Bruger #4193 @ 23.08.03 20:09
P.S. Det duer også med Apache, andre servere... dvs. det kræves ikke at man bruger IIS
User
Bruger #3245 @ 03.09.03 15:40
Nice Artikel! ;)
Den er ihvertfald god at ha' i baghovedet! :D
User
Bruger #4404 @ 29.10.03 17:44
Jeg syntes det er en udmærket artikkel hvis jeg kunne finde ud af det, når jeg kommer til at jeg vil have det ud af databasen får jeg fejlen "Fatal error: Cannot instantiate non-existent class: com in /web/www/frac/users/slojd/Test/default.php on line 2" Nogle der kan hjælpe?
User
Bruger #3788 @ 01.01.04 11:59
Din ISP bruger et unix-baseret system. COM er indbygget i windows.
User
Bruger #4833 @ 15.02.04 09:03
jeg hat samme problem hvad skal jeg gøre
User
Bruger #4833 @ 15.02.04 09:05
hvornår kommer del to
User
Bruger #6017 @ 24.06.04 00:02
Nu har vi så hvordan vi henter fra en MS Access db.. Men hvordan tilføjer man i en?..
User
Bruger #6791 @ 13.11.04 19:35
Fed artikel, lige hvad jeg skulle bruge, men, hvorfor kommer min server med en fejl: PHP har lavet en ulovlig handling? hvad kan jeg gøre ved det?
User
Bruger #6791 @ 13.11.04 21:14
fandt ud af det
man skal bare indsætte
$db_connection->close();
tilsidst i php scriptet
User
Bruger #3976 @ 25.04.05 13:42
Hvor er artikel 2?
User
Bruger #3976 @ 25.04.05 14:40
Kan du sætte et link på den ?
User
Bruger #7896 @ 29.09.06 16:26
Det er virkelig en super artikel og lige hvad jeg manglede, Perfekt for os der ikke kan finde ud af MySQL
User
Bruger #7896 @ 29.09.06 17:06
der er dog lige opstået et probem, på min localhost virker det fint, men når jeg så smider det ud på min hjemmeside bliver siden helt blank. hvad skal jeg gøre?
Du skal være logget ind for at skrive en kommentar.
t