Tiistai, 21.11.2017    
Jorkki.com

Artikkelit
   » Etusivu
   » Palaute


logo
  Artikkelit » PHP-opas

1. Alkuun
2. Ehtolause
3. Lomakkeiden käsittely
4. Tiedoston sisällyttäminen
5. Silmukat
6. Taulukot
7. Tiedostojen käsittely
8. Superglobaalit muuttujat
9. Päätäntö ja FAQ




Superglobaalit muuttujat

PHP:n versiosta 4.20 lähtien globaalit muuttujat ovat default-asetuksissa disabloituna, joten jaksossa 3 käsitellyt esimerkit eivät nykyään välttämättä toimi.

Otamme esimerkiksi 3. jaksossa olleen numeronarvausskriptin:
<?php
$lomake="<form action=\"$_SERVER['PHP_SELF']\" method=\"post\">
Arvaa numero: <input type=\"text\" name=\"arvattava_numero\" size=\"5\" maxlength=\"80\" value=\"\">
<br>
<input type=\"submit\" value=\"Arvaa\">
</form>";
$arvattava_numero == $_POST['arvattava_numero'];
if ( $arvattava_numero == "" )
{
print $lomake;
}
elseif ( $arvattava_numero == "10" )
{
print "Arvasit oikein!";
}
elseif ( $arvattava_numero < "10" )
{
print "Arvaamasi numero on liian pieni.<br>";
print "Arvaa uudestaan:<br>$lomake";
}
else
{
print "Arvaamasi numero on liian iso.<br>";
print "Arvaa uudestaan:<br>$lomake";
}
?>

  • Eli alkuperäisessä numeronarvausskriptissä käytimme $PHP_SELF-muuttujaa, mutta supeglobaaleissa kyseinen muuttuja on $_SERVER['PHP_SELF'].
  • Globaaleissa muuttujissa POST- tai GET-muodossa lähetetty lomakkeen data on välittömästi käytettävissä siinä muuttujassa, mikä laitettiin lomakkeessa muuttujan nimeksi, mutta superglobaaleissa muuttuja pitää hakea joko $_POST['']-muuttujan avulla, mikäli data lähetettiin POST-muodossa tai $_GET['']-muuttujan avulla, mikäli data lähetettiin GET-muodossa.


Seuraava luku




© JC Web Productions