Jifunze kutengeneza Flash Messages za PHP zinazotumika kuonyesha ujumbe wa muda mfupi baada ya action kama login, save, update, delete. Makala hii ina code kamili, HTML template, pamoja na session-based helper functions.

✅ Flash Message ni nini?

Flash message ni ujumbe unaoonekana mara moja baada ya kurudishwa kwenye ukurasa fulani, halafu hutoweka.
Mfano:

“Data imehifadhiwa kikamilifu!”

“Ujumbe haukutumwa, jaribu tena.”

Flash messages hutumia $_SESSION.

✅ 1. Weka session_start()

Weka hili juu ya kila file lenye messages.

<?php
if (session_status() === PHP_SESSION_NONE) {
session_start();
}
?>

✅ 2. Tengeneza Helper Function ya Flash Message

Hii ndiyo core function ya ku-set na ku-display messages.

<?php
function setFlash($key, $message, $type = 'success') {
$_SESSION['flash'][$key] = [
'message' => $message,
'type' => $type
];
}

function displayFlash($key) {
if (!empty($_SESSION['flash'][$key])) {
$flash = $_SESSION['flash'][$key];

$color = [
'success' => '#d4edda',
'error' => '#f8d7da',
'warning' => '#fff3cd',
'info' => '#d1ecf1'
];

echo '<div style="
padding:10px;
margin:10px 0;
border-radius:5px;
background:' . $color[$flash['type']] . ';
border:1px solid #ccc;
">' . $flash['message'] . '</div>';

unset($_SESSION['flash'][$key]); // destroy after showing
}
}
?>

✅ 3. Kutumia Flash Message (Saving, Updating, Deleting, etc.)
Mfano: save.php
<?php
require 'flash.php';

if ($saved) {
setFlash('post', 'Taarifa imehifadhiwa kikamilifu!', 'success');
} else {
setFlash('post', 'Kuna tatizo, jaribu tena!', 'error');
}

header("Location: index.php");
exit;

✅ 4. Kuonyesha Flash Message (index.php)
<?php
require 'flash.php';
displayFlash('post');
?>

🔥 5. Example ya Messages (Bootstrap Version – Optional)

Kama unatumia Bootstrap:

function displayFlash($key) {
if (!empty($_SESSION['flash'][$key])) {
$flash = $_SESSION['flash'][$key];

echo '<div class="alert alert-' . $flash['type'] . ' mt-2">'
. $flash['message'] .
'</div>';

unset($_SESSION['flash'][$key]);
}
}


Types Bootstrap

success

danger

warning

info

💡 Best Practices

✔ Tumia unique key kwa kila message (login, post, delete, error)
✔ Flash message ionekane mara moja tu
✔ Usitumie JavaScript kama security check — PHP session ndiyo logic kuu

🔗 Links Za Kujifunza Zaidi

🌐 Faulink Official Website:
https://www.faulink.com/

📘 Jifunze Web Design & Programming (Tutorials / Mifumo):
https://www.faulink.com/excel_mifumo.php

📲 Piga / WhatsApp kwa msaada wa haraka:
https://wa.me/255693118509