Afhankelijkheden
Om
deze
functies
te
gebruiken
moet
PHP
gecompileerd
zijn
met
ondersteuning
voor
MySQL
.
Installatie
Door
de
--with-mysql
Door
de
--with-mysql
configuratie
optie
te
gebruiken
kan
PHP
toegang
krijgen
tot
MySQL
databases
.
Als
deze
optie
gebruikt
wordt
zonder
het
pad
naar
MySQL
te
specificeren
,
zal
PHP
de
ingebouwde
MySQL
client
libraries
gebruiken
.
Met
PHP4
is
MySQL
ondersteuning
altijd
aan
;
als
je
de
configuratie
optie
niet
specificeert
,
worden
de
bijgevoegde
libraries
gebruikt
.
Gebruikers
die
andere
applicaties
draaien
die
MySQL
gebruiken
(
bijvoorbeeld
mensen
die
PHP
3
en
PHP
4
naast
elkaar
draaien
als
Apache
modules
,
of
auth-mysql
)
moeten
altijd
het
pad
naar
MySQL
specificeren
:
--with-mysql=
/
path
/
to
/
mysql
.
Dit
zorgt
ervoor
dat
PHP
de
client
libraries
die
door
MySQL
geinstalleerd
zijn
gebruikt
,
zodat
een
conflict
voorkomen
wordt
.
Waarschuwing
|
Crashes
en
problemen
met
het
opstarten
van
PHP
kunnen
voorkomen
als
deze
extensie
samen
met
de
recode
extensie
wordt
geladen
.
Zie
de
recode
extensie
voor
meer
informatie
.
|
Configuratie tijdens scriptuitvoer
Het
gedrag
van
deze
functies
kan
worden
beï
vanuit
php.ini
.
Tabel
1
.
MySQL
Configuratie
Opties
Naam
|
Standaard
|
Veranderbaar
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Zie ook
ini_set()
voor verdere details en de definitie van de PHP_INI_*
constanten.
Hieronder
volgt
een
korte
uitleg
van
de
configuratie
-
instructies
-
mysql.allow_persistent
boolean
-
Zijn
persistent
connections
in
MySQL
toegestaan
of
niet
.
-
mysql.max_persistent
integer
-
Het
maximale
aantal
persistent
MySQL
connecties
per
proces
.
-
mysql.max_links
integer
-
Het
maximale
aantal
MySQL
connecties
per
proces
,
inclusief
de
persistent
connecties
.
-
mysql.default_port
string
-
Het
standaard
TCP
poort
nummer
te
gebruiken
wanneer
een
verbinding
met
de
database
server
gemaakt
moet
worden
als
geen
poort
is
opgegeven
.
Als
geen
standaard
poort
is
opgegeven
dan
wordt
de
poort
verkregen
(
in
deze
volgorde
)
van
de
omgevingsvariabele
MYSQL_TCP_PORT
,
de
mysql-tcp
regel
in
/
etc
/
services
of
de
constante
MYSQL_PORT
tijdens
het
compileren
.
Win32
zal
alleen
de
MYSQL_PORT
constante
gebruiken
.
-
mysql.default_socket
string
-
De
standaard
socket
naam
te
gebruiken
wanneer
lokaal
een
verbinding
moet
worden
gemaakt
met
een
database
server
indien
geen
andere
socket
naam
is
opgegeven
.
-
mysql.default_host
string
-
De
standaard
host
naam
te
gebruiken
wanneer
lokaal
een
verbinding
moet
worden
gemaakt
met
een
database
server
indien
geen
andere
socket
naam
is
opgegeven
.
Dit
is
niet
van
kracht
bij
het
gebruik
van
safe
mode
.
-
mysql.default_user
string
-
De
standaard
gebruikersnaam
te
gebruiken
wanneer
een
verbinding
moet
worden
gemaakt
met
een
database
server
indien
geen
andere
naam
is
opgegeven
.
Dit
is
niet
van
kracht
bij
het
gebruik
van
safe
mode
.
-
mysql.default_password
string
-
Het
standaard
wachtwoord
te
gebruiken
wanneer
een
verbinding
moet
worden
gemaakt
met
een
database
server
indien
geen
ander
wachtwoord
is
opgegeven
.
Dit
is
niet
van
kracht
bij
het
gebruik
van
safe
mode
.
-
mysql.connect_timeout
integer
-
Pauze
(
in
seconden
)
bij
het
verbinden
met
een
database
.
Bij
Linux
wordt
deze
pauze
ook
gebruikt
voor
het
wachten
op
een
eerste
antwoord
van
de
server
.
Resource types
De
MySQL
module
gebruikt
twee
resource
typen
.
De
eerste
is
de
link
identifier
voor
een
verbinding
met
een
database
,
de
tweede
is
een
resource
voor
de
resultaten
van
een
query
.
Voorgedefineerde constanten
Deze
constanten
worden
gedefineerd
door
deze
extensie
,
en
zullen
alleen
beschikbaar
zijn
als
de
extensie
met
PHP
is
meegecompileerd
,
of
als
deze
dynamisch
is
geladen
vanuit
een
script
.
Vanaf
PHP
4.3.0
is
het
mogelijk
om
additionele
client
opties
voor
de
functies
mysql_connect(
)
en
mysql_pconnect(
)
in
te
stellen
.
De
volgende
constanten
zijn
gedefiniëerd
:
Tabel
2
.
MySQL
client
constanten
constante
|
beschrijving
|
|
Gebruik
compressie
protocol
.
|
|
Sta
een
spatie
toe
na
functienamen
.
|
|
Sta
interactive_timeout
seconden
van
inactiviteit
(
in
plaats
van
wait_timeout
)
toe
alvorens
een
connectie
te
sluiten
.
|
De
functie
mysql_fetch_array(
)
gebruikt
een
constante
voor
de
verschillende
resultaat
reeksen
.
De
volgende
constanten
zijn
gedefiniëerd
:
Tabel
3
.
MySQL
fetch
constanten
constante
|
beschrijving
|
|
Kolommen
worden
geretourneerd
in
de
reeks
waarbij
de
veldnaam
als
reeksindex
wordt
gebruikt
.
|
|
Kolommen
worden
geretourneerd
in
de
reeks
waarbij
zowel
de
veldnaam
als
een
numerieke
index
als
reeksindex
wordt
gebruikt
.
|
|
Kolommen
worden
geretourneerd
in
de
reeks
waarbij
een
numerieke
index
als
reeksindex
wordt
gebruikt
.
Deze
index
begint
bij
0
,
het
eerste
veld
in
het
resultaat
.
|
Voorbeelden
Dit
simpele
voorbeeld
laat
zien
hoe
verbinding
met
een
MySQL
database
tot
stand
wordt
gebracht
,
er
een
query
wordt
uitgevoerd
,
resulterende
rijen
worden
geprint
en
hoe
de
verbinding
weer
wordt
gesloten
.
Voorbeeld
1
.
MySQL
extensie
overzicht
voorbeeld
?php
/
/
Verbinding
maken
,
een
database
selecteren
$link
=
mysql_connect(
"mysql_host"
,
"mysql_login"
,
"mysql_password"
)
or
die("Kan
geen
verbinding
maken")
;
print
"Verbinding
succesvol
gemaakt"
;
mysql_select_db("my_database"
)
or
die("Kan
geen
database
selecteren")
;
/
/
Een
SQL
query
uitvoeren
$query
=
"SELECT
*
FROM
my_table"
;
$result
=
mysql_query($query
)
or
die("Fout
bij
uitvoeren
query")
;
/
/
Printen
resultaten
in
HTML
print
"
table
\n"
;
while
($line
=
mysql_fetch_array($result
,
MYSQL_ASSOC)
)
{
print
"\t
tr
\n"
;
foreach
($line
as
$col_value
)
{
print
"\t\t
td
$col_value
/
td
\n"
;
}
print
"\t
/
tr
\n"
;
}
print
"
/
table
\n"
;
/
/
Resultaat-set
vrij
maken
mysql_free_result($result)
;
/
/
Verbinding
afsluiten
mysql_close($link)
;
?
|
|