PHP
PHP KOULUTUSTA VUONNA 2008!
Kurssit saatavilla kautta Suomen. Tule ja varaa oma koulutustapahtumasi jo tänään.
IT-koulutuksen asiantuntijasi, Koulutus- ja konsultointipalvelu KK Mediat
PHP ja MySQL
Kaikkein ensimmäiseksi tutustumme PHP:n käyttämiseen yhdessä MySQL:n kanssa. MySQL on erittäin näppärä ja "ilmainen" tietokanta, josta on tullut erityisen suosittu. Ilmaisuudella on luonnollisesti hintansa, joka näkyy siinä että kannan piirteet ovat rajattuja verrattuna esimerkiksi MSSQL:n tai Oraclen tarjoamiin toimintoihin. MySQL:n voit ladata tästä, editoriksi suosittelen graafista Free Mascon ohjelmaa.
Ensimmäinen vaihe tietokantayhteyden luomisessa on yhteyden ottaminen tietokantapalvelimeen. Tämä tapahtuu funktion mysql_connect() avulla, joka ottaa parametreina tietokantapalvelimen nimen, käyttäjätunnuksesi sekä salasanan:
// Avataan yhteys tietokantapalvelimeen
mysql_connect("palvelimen_osoite","kayttajatunnus","salasana");
Yhteyden muodostuminen voidaan testata mysql_error()-funktiolla. Virhetilanteissa tämän funktion palauttamat ilmoitukset ovat aika vaikeaselkoisia. Tässä testaamisessa voidaan käyttää PHP:n exit()-funktiota (tai sen aliasta die()-funktiota), joka keskeyttää skriptin suorituksen. Tätä virheentarkistusta voidaan (ja kannattaa) käyttää aina kun käytetään PHP:ta ja tietokantoja. Alapuolella oleva esimerkki selventää asiaa:
mysql_connect("palvelimen_osoite","kayttajatunnus","salasana")
or die("Tietokantaan ei saatu yhteyttä.");
Tämän jälkeen valitaan käsiteltävä tietokanta funktiolla mysql_select(), jolle annetaan parametrina tietokannan nimi:
// Valitaan tietokanta
mysql_selectdb("testikanta");
Tämän jälkeen voimme aloittaa varsinaisen toiminnan eli kyselyjen luomisen. MySQL:n käyttämä SQL:n murre poikkeaa jossain määrin perus-SQL:n rakenteesta, joten MySQL.com:in tarjoma opas voi väliin tulla erittäin tarpeelliseksi. Kyselyn suorittaminen ja sen tulosten tallettaminen tapahtuu funktion mysql_query() avulla, jolle annetaan parametrina kysely. Kuten muissakin ohjelmointikielissä, on erittäin järkevää sijoittaa kysely omaan erilliseen muuttujaansa, sillä se selkiyttää koodia.
// Suoritetaan haku tietokannasta
// tallennetaan tulokset muuttujaan $result
$query = "SELECT t_id, t_nimi, t_hinta FROM testitaulu ORDER BY t_id";
$result = mysql_query($query);
Mikäli olet käyttänyt muita ohjelmointikieliä, ihmettelit varmaan erillisen tulosjoukon puuttumista. PHP hoitaa tulosjoukko-ajattelun tallentamalla tuloksen kyselyt taulukkomuuttujaan, josta niitä voidaan noutaa indeksin perusteella. Alla on esimerki, jossa noudamme ylläolevan kyselyn tuottamat tulokset:
for($laskuri = 0; $laskuri < mysql_numrows($result); $laskuri++) {
print "mysql_result($result,$laskuri,"t_id") <br>\n"
print "mysql_result($result,$laskuri,"t_nimi") <br>\n"
print "mysql_result($result,$laskuri,"t_hinta")<br>\n"
}
Toinen mahdollinen tapa tulosten kyselyyn on mysql_fetcharray()-funktio:
while($rivi = mysql_fetch_array($result)) {
print "$rivi[1] $rivi[2] $rivi[3]<br>\n";
}
Viimeisenä osiona on luonnollisesti tietokantayhteyden sulkeminen joka tapahtuu funktion mysql_close() avulla:
// Suljetaan tietokantayhteys
mysql_close();
Tutustu artikkelin muihin osiin:
»»» PHP
»»»PHP ja tietokannat
»»» PHP
»»»PHP ja MySQL
»»» PHP
»»»PHP ja ODBC
Tallenna tämä sivu kirjanmerkkeihin!