Ohjeita PHP:n käyttöön

Php-mahdollistaa palvelinskriptien liittämisen www-sivun tuottamiseen. TKTL:n ympäristössä php-skriptejä sisältäviä sivuja voi ajaa vain koneessa db.cs.helsinki.fi

  1. Kirjoittaudu koneelle db.cs.helsinki.fi omalla tunnuksellasi. Palvelin fs näkyy tälle koneelle 'readonly' tilassa. Oma fs-palvelimen kotihakemistosi näkyy nimellä /home/fs/USERNAME (missä USERNAME on käyttäjätunnuksesi)
  2. Jos olet ensimmäistä kertaa db-koneessa, anna kotihakemistollesi yleinen suoritusoikeus chmod a+x /home/USERNAME
  3. Luo itsellesi db-koneen kotihakemistoosi hakemisto public_html, ellei sinulla ole vielä sellaista kyseisellä koneella.
  4. Voit sijoittaa php-tiedostoja public_html hakemistoon, mutta olisi parempi tehdä niitä varten oma alihakemisto vaikkapa 'php'.
  5. Anna luomillesi hakemistoille webbisivujen katseluun tarvittavat oikeudet (vähintään x omistajalle, ryhmälle ja maailmalle)
  6. Jokaisen php-tiedoston tyyppitunnuksena pitää olla 'php' esimerkiksi esim.php
  7. Luo siihen hakemistoon, mihin aiot php-sivuja sijoittaa, tiedosto .htaccess ja kirjoita tämän tiedoston sisällöksi seuraava rivi
    AddHandler cgi-script php
    .htaccess tiedostoon pitää olla lukuoikeus kaikilla.
  8. Jokaisen php-tiedoston ensimmäisenä rivinä pitää olla php-tulkin määrittelevä rivi
    #!/usr/local/bin/php
    Rivin sisällön pitää olla juuri tuo yllä oleva (ei Windows-editoreilla syntyvää carriage return (^M) merkkiä rivin lopussa vaan pelkästään linefeed). Tarkista jollain Linux editorilla.
  9. Php-tiedostoilla pitää omistajalla olla suoritusoikeus (x) (ja tietenkin myös luku ja kirjoitusoikeudet, että tiedostoa voi editoida). Ryhmälle ja maailmalle ei välttämättä tarvita mitään oikeuksia.
  10. Tee jostain html-tiedostostasi (vaikkapa jostain tämän harjoituksen kotitehtävästä) php-tiedosto ja testaa, että saat sen toimimaan (ensimmäinen rivi, + tyyppi, + sijoitus oikeaan hakemistoon + oikeudet). Tiedosto /home/USERNAME/public_html/php/esim.php näkyy selaimessa URL:lla http://db.cs.helsinki.fi/~USERNAME/php/esim.php (tyyppitunnuksen php voi jättää myös pois URL:sta). Jos haluat välittää get-metodilla parametreja voit kirjoittaa ne URL:n perään, esim. http://db.cs.helsinki.fi/~USERNAME/php/esim.php?param1=yksi&param2=kaksi
  11. Sivulle upotetaan php-skripti seuraavasti
    <?php php-skripti ?>
    Skripti voi olla monirivinen.
  12. Php-lause echo kirjoitettava1,...; kirjoittaa muuttujan tai vakion tuotettavalle sivulle. Merkkijonovakion voi esittää esimerkiksi kaksinkertaisten lainausmerkkien sisässä esim.
    <?php echo "Hei!"; ?> tuottaa sivulle tekstin Hei!.
  13. Yllä oli esimerki http-parametrien välittämiseksi php:lle. Get-metodilla välitettyyn parametriin param1 pääset käsiksi muuttujan $_GET["param1"] avulla (taulukon $_GET alkio, jonka indeksi on "param1"). Voit tulostaa muuttujan arvon echo- lauseella. Saat muuttujan arvon osaksi merkkijonoa esim. seuraavasti:
    <?php echo "Parametrit: param1= $_GET[param1] ja param2= $_GET[param2]"; ?>
    (Huom: Kun merkkijonolla indeksoitu taulukkoalkio upotetaan merkkijonoon, niin indeksin ympärillä ei käytetä lainausmerkkejä!). Voit tehdä tuon saman myös seuraavasti
    <?php
         $p1= $_GET["param1"];
         $p2= $_GET["param2"];
         echo "Parametrit: param1= $p1 ja param2= $p2";
    ?>