Używam własnej metody od lat, ale pomyślałem, że może nie jest to najlepszy sposób, aby to osiągnąć.Jaki jest dobry sposób na pokazywanie błędów/wiadomości użytkownikom w php?
Zasadniczo gdy chcę rzucać błąd użytkownikowi, lub potwierdzenie wyświetlacza udanej akcji, I wykonaj następujące czynności:
if($something == "condition") {
$_SESSION["message"] = "Your passwords didnt match! Make sure they are the same in both fields!";
$_SESSION["message_type"] = 1;
header("Location:register.php");
exit();
}
to mam funkcję jak
function show_message() {
global $_SESSION;
if (isset($_SESSION["message"])) {
echo "<div class='site_message type_" . $_SESSION["message_type"] . "'>" . $_SESSION["message"] . "</div>";
unset($_SESSION["message"]);
unset($_SESSION["message_type"]);
}
}
i Wstawiłem show_message(); na górze każdej strony, aby wyświetlić możliwe błędy, które mogą być rzucane na tę stronę.
Jakie są możliwe problemy z tym?
Co zrobić, jeśli sesja nie działa, ponieważ klient nie akceptuje plików cookie? – Gumbo
Byłem pod wrażeniem php, że przekażę SID za pośrednictwem adresu URL. EDYCJA: Moje wrażenie było fałszywe, nie działało. : o –
Jedyne, co chciałbym dodać, to przekształcenie tych funkcji w metody dedykowanej klasy. Wiadomości używane w ten sposób są często nazywane wiadomościami flash w różnych frameworkach. To może być podstawą twojej klasy FlashMessage. –