Kwenye PHP, Superglobals ni variables maalum zinazopatikana kila mahali katika programu yako β€” bila kujali sehemu gani unazotumia.
Zinasaidia kubeba taarifa muhimu kutoka kwa watumiaji, seva, na mazingira ya tovuti.

Superglobals zenye nguvu zaidi ni:

$_GET

$_POST

$_SERVER

Makala hii itakueleza jinsi ya kuzitumia kwa usahihi, kwa mifano rahisi na inayoeleweka.

πŸ”Ή 1. $_GET β€” Kupokea Data Kupitia URL

Superglobal $_GET hutumika kupokea data iliyotumwa kupitia URL, kwa mfano kupitia link au fomu yenye method="get".

βœ… Mfano Rahisi:
<!-- file: form_get.html -->
<form action="matokeo.php" method="get">
Jina: <input type="text" name="jina"><br>
Umri: <input type="number" name="umri"><br>
<input type="submit" value="Tuma">
</form>

<!-- file: matokeo.php -->
<?php
$jina = $_GET['jina'];
$umri = $_GET['umri'];

echo "Karibu $jina! Umri wako ni $umri miaka.";
?>

πŸ” Mchakato:

Mtumiaji anajaza fomu na kutuma.

Data huonekana kwenye URL, mfano:

matokeo.php?jina=Faustine&umri=20


PHP hupokea thamani hizo kupitia $_GET.

⚠️ Kumbuka:

Data inayopelekwa kupitia GET huonekana wazi kwenye URL.
Usitumie kwa data nyeti kama nenosiri.

πŸ”Ή 2. $_POST β€” Kutuma Data kwa Usalama Zaidi

$_POST hutumika kutuma data kutoka fomu hadi PHP kwa njia isiyoonekana kwenye URL.
Ni salama zaidi kuliko GET kwa maombi ya siri kama login au usajili.

βœ… Mfano:
<!-- file: form_post.html -->
<form action="matokeo.php" method="post">
Jina: <input type="text" name="jina"><br>
Neno la siri: <input type="password" name="password"><br>
<input type="submit" value="Tuma">
</form>

<!-- file: matokeo.php -->
<?php
$jina = $_POST['jina'];
$password = $_POST['password'];

echo "Karibu, $jina! Data yako imetumwa kwa usalama.";
?>

πŸ” Tofauti Kuu kati ya GET na POST:
Kipengele $_GET $_POST
Inaonekana kwenye URL βœ… Ndiyo ❌ Hapana
Inafaa kwa data nyeti ❌ Hapana βœ… Ndiyo
Ina limit ya urefu wa data βœ… Ndiyo ❌ Hapana
Inatumika kwa links au search βœ… Ndiyo ❌ Hapana
πŸ”Ή 3. $_SERVER β€” Taarifa Kuhusu Seva na Mazingira

Superglobal $_SERVER inatoa taarifa kuhusu mazingira ya server na maombi yaliyotumwa na browser ya mtumiaji.

βœ… Mfano:
<?php
echo "Jina la Server: " . $_SERVER['SERVER_NAME'] . "<br>";
echo "Faili lililotumika: " . $_SERVER['PHP_SELF'] . "<br>";
echo "Browser ya Mtumiaji: " . $_SERVER['HTTP_USER_AGENT'] . "<br>";
echo "Anwani ya IP ya Mtumiaji: " . $_SERVER['REMOTE_ADDR'] . "<br>";
?>

πŸ” Matokeo (mfano):
Jina la Server: faulink.com
Faili lililotumika: /matokeo.php
Browser ya Mtumiaji: Mozilla/5.0 (Windows NT 10.0; Win64; x64)
Anwani ya IP ya Mtumiaji: 196.216.172.4

βš™οΈ Vidokezo Muhimu

Zote ($_GET, $_POST, $_SERVER) ni arrays za associative. Unapata thamani kwa kutumia key (mfano $_GET['jina']).

Daima hakikisha unachuja (validate) na kusalimisha (sanitize) data kutoka kwa watumiaji kabla ya kuihifadhi au kuitumia.

Kwa usalama zaidi, unaweza kutumia htmlspecialchars() au filter_input().

πŸ”’ Mfano wa Usalama:
$jina = htmlspecialchars($_POST['jina']);
echo "Karibu, $jina!";

🌐 Soma Zaidi

Tembelea https://www.faulink.com/
kujifunza zaidi kuhusu PHP, HTML, CSS, na mbinu bora za kujenga tovuti salama na zenye nguvu.

πŸ“˜ Hitimisho

Superglobals ni moyo wa mawasiliano kati ya mtumiaji na seva katika PHP.
Kwa kuzitumia vizuri:

Unaweza kupokea data kutoka fomu,

Kufahamu mazingira ya seva,

Na kufanya tovuti yako iwe interactive na salama.

Kumbuka: Tumia $_GET kwa data nyepesi, $_POST kwa data nyeti, na $_SERVER kwa taarifa za mfumo