PHP-ohjelmointi

 Etusivu

Funktiot ja ulkoiseen tiedostoon kirjoittaminen

PHP-kieli on laaja ja joskus koodia tarvitaan runsaasti. Suuremmat ohjelmakokonaisuudet on siksi hyvä järjestää osiin ja yksi tapa on käyttää funktioita. Funktiot ovat ohjelmalohkoja, joita voidaan käyttää käskystä tarvittaessa. Funktioissa voidaan käyttää valmiita kirjastofunktioita tai luoda omia itse määriteltyjä funktioita.

Funktion määrittely alkaa function-käskyllä. Sen jälkeen voidaan antaa funktiolle nimi ja antaa sille alkuarvot sulkuihin. Jos alkuarvoja ei haluta antaa, voidaan sulut jättää tyhjäksi. Määrityksen jälkeen funktiolle annetaan käsketty toiminta aaltusulkeiden sisään.

function funktion_nimi(parametrit) {
  funktiolle annettava toiminta
}

Jos haluamme funktion palauttavan jonkin arvon, voidaan se tehdä komennolla return. Jos halutaan funktion vain toimivan komentosarjana, return-komentoa ei kirjoiteta. Funktion parametrien arvot voidaan antaa vasta funktiokutsun yhteydessä. Arvot kirjoitetaan sulkeiden sisään pilkulla erotettuina. Funktio käynnistetään kirjoittamalla funktion nimi, sulkeet ja tarvittaessa niiden sisään parametrien arvot.


» harjoitus19.php malli


» harjoitus20.php malli

 

Tekstitiedostoon kirjoittaminen
Joskus PHP-koodia ja ohjelmia koodatessa tulee tarpeen tallentaa tietoja seuraavaan kertaan ja muiden kävijöiden käyttöön. Monesti käytetään tietokantoja tietojen tallentamiseksi. Pienimuotoisessa tietojen tallentamisessa on kuitenkin turhaa monimutkaisten tietokantojen käyttö. Tiedot voidaan tallentaa tekstitiedostoon ja niitä voidaan muokata siellä. Tällainen tietojen tallentaminen käy hienosti esimerkiksi pienimuotoisten sisältöjen muokkaaminen, vaikkapa itse teksteissä tai vieraskirjassa.

Jotta käytössä olisi tallennustila on sinun luotava ensimmäiseksi tyhjä tekstitiedosto. Tässä esimerkissä käytämme siinä nimeä viesti.txt ja se tallennetaan samaan kansioon palvelimella kuin tämä harjoitus. Jossain palvelimissa tämän tiedoston oikeuksia on muokattava jos aikoo tehdä siihen muutoksia. Varmista tämä jos harjoitus ei toimi.

Tekstitiedosto avataan muokattavaksi fopen()-koodilla. Sulkeiden sisään tulee avattavan tiedoston nimi ja parametri, mihin kohtaan tiedostossa kirjoitetaan. w-kirjaimella teksti vaihtuu kokonaan ja a-kirjaimella viestit tulee perään kuten vieraskirjassa. Lomakkeen tiedot kaapataan POST-käskyllä ja niistä tehdään muuttuja. str-replace-käsky muuntaa lomakkeen rivinvaihdot tulostettavaan muotoon. fwrite kirjoittaa tekstitiedostoon parametreillä annettujen sääntöjen mukaan ja fclose sulkee tiedoston lopuksi. Include-koodilla tekstitiedoston teksti saadaan tulostettua sivulle.

Jotta voidaan käyttää lainausmerkkejä pitää ylimääräiset kenoviivat poistaa. Koodi luo automaattisesti kenoviivat lainausmerkkien ja kenoviivojen eteen, jottei niitä lueta koodina.
$viesti = stripslashes($viesti);

Jos halutaan estää html-tagien käyttö, kirjoitetaan
$viesti = htmlspecialchars($viesti);


» harjoitus21.php malli

Video

 
 

Aiheeseen liittyvät linkit

Varmuuskopiointia
 - Mureakuha - PHP-perusteet
 - Vida - PHP-kurssi

Opetusmateriaalia (PDF)
 - PHP ja MySQL - MicroPC

 

 

Kysy neuvoa tai anna vinkki

 

Tiedotteet ja aikataulut

Tervetuloa kurssille!!

 

Tehtävät ja palautus

Tehtävä

1. Laadi aikaisempaan if-else-tehtävään tulostettavat vastaukset funktioilla koodin alkuun ja käynnistä niitä funktioiden avulla riippuen annetusta iästä.

2. Laadi kotisivuille oma hallintasivu, johon teet lomakeruudun. Laadi etusivulle palsta uutisille. Lomakkeen avulla voit muuttaa etusivun uutiset-tekstiä. Tee myös sivuillesi palauteruutu joka lähettää palautetekstit hallintasivulle peräkkäin.

Palauta koodit verkkoon alla olevasta linkistä. Palauta tehtävät muistioon kirjoitettuna. Voit kirjoittaa ja muokata tehtäviä myös palautuksen jälkeen. Palautuskansio on salasanasuojattu. Saat käyttäjätiedot opettajalta. Palauta tiedosto varustettuna omalla nimelläsi muotoon:
sukunimi_etunimi.txt

» Palauta tiedosto tänne