Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Muuttujille oletusarvot

bgf1 [08.03.2008 20:34:20]

#

<?php

$oper = $_GET["oper"];
$l1 = $_GET["l1"];
$l2 = $_GET["l2"];

function laske($luku1,$oper,$luku2)
{

Switch($oper) {
	case plus :
	return ($luku1 + $luku2);
	break;

	case miinus :
	return ($luku1 - $luku2);
	break;

	case kerto :
	return ($luku1 * $luku2);
	break;

	case jako :
	return ($luku1 / $luku2);
	break;
	}

}
print laske($l1,$oper,$l2);
?>

"Muuta laskin-ohjelmaa niin, että muuttujat saavat oletusarvot (1,1,"+").
Lisäksi $tulos muuttuja, jota kautta pääohjelmaan palautuu laskennan tulos."
Eli nyt tämänlainen ongelma. Ton laskimen sain toimimaan mutta nämä muutokset ovat aiheuttaneet jo riittävästi pään vaivaa, joten vinkit kelpaa. Ilmeisesti joko global tai static muuttujia tarvitaan. Ja & merkkiä. Edellämainituista ohjeissa kerrotaan, mutta niiden yhdistäminen tuohon ei onnistu.

T. Jukka Halttunen

(Mod. Edit. Kooditagit.)

Metabolix [08.03.2008 20:39:48]

#

Muistahan jatkossa nuo kooditagit, taisi olla jo kolmas kerta. Olisit myös voinut jatkaa kyselyäsi siihen edelliseenkin keskusteluun, kun aihe on yhä sama.

Aloitapa nyt itsenäinen opiskelu. Vastaus kysymykseesi löytyy aivan suoraan PHP-opassarjan 6. osasta. Ilmeisesti myös saat jostain näitä tehtäviä, joten samassa lähteessä ovat luultavasti kaikki tarvittavat ohjeet niiden ratkaisemiseen.

Jos itse sivuun on tarkoitus tehdä tuo muutos, tarkista empty-funktiolla, onko GET-taulukon tietty kohta tyhjä, ja jos on, sijoita muuttujaasi sopiva oletusarvo.

Globaali muuttuja toimii vaikkapa näin:

<?php
$tulos = 0;
function f()
{
  global $tulos;
  $tulos = 10;
}
echo $tulos; // 0
f();
echo $tulos; // 10
?>

Hakoulinen [08.03.2008 20:42:13]

#

Mikä se itse ongelma on?

Ja miksi pitäisi laittaa oletusarvot? :o

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta