Kotitehtävä: PHP

Tehtävänanto:

  • a) Tee käyttäjän kotisivulle PHP:lla “Hei maailma” (esim. lukujen yhteenlasku). Asenna tarvittavat sovellukset. Aloita tyhjästä liverompulla.
  • b) Tee yksinkertainen PHP-ohjelma, joka laskee jotain käyttäjän syötteiden perusteella. Esim. suorakaiteen ala korkeudesta ja leveydestä, painoindeksi (BMI) pituudesta ja painosta tai syntymäaika syntymävuodesta. Vinkkejä: php.net: Manual: English: Simple tutorial: Forms. Kun julkaiset PHP-lähdekoodia WordPressissa, muista valita tekstin tyyliksi CODE, jotta sisennykset ja muut merkinnät näkyvät oikein.

Olenkin jo kerran kirjoitellut tänne raporttia Apache-webpalvelimen asennuksesta, joten en sitä nyt tee. Vaan hyppään suoraan koodin kirjoittamiseen websivulle.

Uusi läppärini saapui, joten työympäristö on nyt hieman erilainen.

Tietokoneen kokoonpano ja työympäristö:

  • Malli: Fujitsu Lifebook AH532
  • Suoritin: Intel Core i3-2328M 2.2GHz
  • Näytönohjain: Intel HD Graphics 3000
  • Muisti: 4Gb DDR3
  • Käyttöjärjestelmä: Ubuntu 12.04 LTS 64-bit

Ongelma I

Apachen asennus onnistui normaalisti. Asennuksen jälkeen kokeilin toimivuutta kirjoittamalla URL-kenttään “localhost” – Apache toimi normaalisti.

Tämän jälkeen loin tarvittavat kansiot websivua varten. Poikkeuksena viime postaukseen, vaihdoin index.html nimen index.php.

Kun kirjoitin selaimen URL-kenttään “localhost/~juho/index.php alkoi selain lataamaan .php-tiedostoa, eikä näyttänytkään sitä suoraan ruudulla.

Pienen googlettamisen jälkeen tajusin, etten ollut asentanut Apacheen php-pluginia. Tein sen komennoilla:

sudo apt-get install libapache2-mod-php5filter

sudo apt-get install libapache2-mod-suphp

Apachlle restart ja tämän jälkeen kotisivu näyttäytyi normaalisti.

Hei maailma

Kotisivun asennus Ubuntulle onnistui. Seuraavaksi tein pienen “Hei maailma” tervehdyksen PHP:lla.

Tein uuden tekstitiedoston nimeltä index.php ja kirjoittelin sinne pätkän koodia nanolla.

compt

Ja tältä se näytti websivulla:

awwyeah

I have no idea what I’m doing

EDIT: “Width” pitäisi olla “Lenght”.

PHP on hirveää, tämä  ei meinaa toimaa millään.

Päätin tehdä PHP:llä/HTML:llä pienen laskimen, joka laskisi kolmion ja suorakaiteen pinta-alan, eli kertoisi kaksi lukua keskenään.

Meinasin rage quittaa monta kertaa, sillä PHP on aivan hirveän epäkäytännöllinen mielestäni.
Lopulta sain säädettyä tälläisen koodin, joka vihdoinkin teki mitä halusin:

phplaskin

Koska Java on minulle tuttu, tein ohjelman omasta mielestäni helpoimmalla tavalla, eli muuttujilla.  Heti alussa määritän muuttujat $value1, $value2 ja $result.

$value1 ja 2 ovat käyttäjän määriteltävissä, kun taas $result on muuttujien tulo.

Käyttäjä määrittää muuttujat ja ohjelma kutsuu toiminnon mult.php ja ilmoittaa muuttujan $result arvon.

Vaikein kohta tässä koodissa oli se, että tajusin nimetä ohjelman mult.php. Eli, kun ohjelma hakee tiedostoa mult.php se hakee itsensä ja siten toteuttaa tuon viimeisen komennon, eli printtaa $resultin,

Selaimessa ohjelma näyttää tältä:

selaimessa

ja ilmoittaa vastauksen näin:

done'd

EDIT: Kommentoin koodin.

Sama Javalla

Halusin testata miten saman ohjelman tekeminen onnistuu Javalla, kun PHP:lla se tuntui niin kankealta.

javallasama

Mielestäni Javalla koodista tuli selkeämpi ja ennen kaikkea helpompi kirjoittaa. Seuraavana ongelmana olisikin saada Java-koodi websivulle.

EDIT: Java lisätty.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s