Maison > développement back-end > Problème PHP > Comment afficher des erreurs contextuelles via php

Comment afficher des erreurs contextuelles via php

PHPz
Libérer: 2023-03-20 14:34:01
original
1805 Les gens l'ont consulté

Lorsque nous développons une application, nous rencontrerons inévitablement diverses erreurs. À ce stade, nous devons afficher des fenêtres contextuelles via php pour inviter l'utilisateur avec des messages d'erreur. Dans cet article, nous verrons comment afficher des fenêtres contextuelles et des méthodes de gestion des erreurs via PHP.

Tout d'abord, nous pouvons afficher la fenêtre pop-up via la fonction d'alerte de javascript. En php, nous pouvons exécuter js via le code suivant :

echo "<script>alert('Hello World!');</script>";
Copier après la connexion

Ce code passera Hello World! en paramètre à la fonction d'alerte de javascript, faisant ainsi apparaître une fenêtre contenant le texte Hello World.

Ensuite, regardons un exemple pratique, en supposant qu'une erreur fatale se produit dans notre script :

$foo = 5/0;
Copier après la connexion

La variable $foo ici se verra attribuer une valeur infinie car nous essayons de supprimer un 0. Cependant, cela entraînera une erreur fatale. Par défaut, PHP affichera les erreurs dans le fichier journal du serveur, mais ce n'est pas convivial. Nous devons utiliser le mécanisme de gestion des erreurs de PHP pour afficher des fenêtres contextuelles invitant les messages d'erreur de l'utilisateur. Le mécanisme de gestion des erreurs de

php fournit 7 niveaux d'erreur, du E_ERROR le plus grave au E_NOTICE le moins grave. Nous pouvons définir le niveau d'erreur via la constante ERROR_REPORTING. Par exemple, nous pouvons définir le niveau d'erreur sur E_ALL au début du script pour détecter toutes les erreurs :

ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
Copier après la connexion

Ce code activera le mécanisme de rapport d'erreurs et définira le niveau d'erreur sur E_ALL. Que se passe-t-il si nous exécutons maintenant l'instruction $foo = 5/0 ci-dessus ? Nous verrons une fenêtre d’erreur fatale. Nous pouvons voir le message d'erreur dans la fenêtre afin que nous puissions le corriger rapidement.

En plus d'avertir les utilisateurs des messages d'erreur, nous pouvons également rediriger vers une page d'erreur via la fonction d'en-tête de PHP. Nous pouvons transmettre les informations d'invite en paramètre :

header("Location: error.php?message=An error has occurred!");
Copier après la connexion

Ce code redirigera l'utilisateur vers un script nommé error.php et transmettra un message d'invite.

Dans le développement réel, nous devons souvent vérifier les entrées des utilisateurs pour éviter de saisir des données illégales. Par exemple, nous pouvons vérifier un numéro de téléphone mobile via une expression régulière :

if (!preg_match("/^[0-9]{11}$/", $_POST['phone'])) {
    echo "<script>alert('Invalid phone number entered. Please enter a valid phone number.');</script>";
}
Copier après la connexion

Ce code vérifiera si le champ de téléphone saisi par l'utilisateur contient 11 caractères numériques. Si la vérification échoue, une fenêtre contextuelle s'affichera pour rappeler à l'utilisateur de saisir un numéro de téléphone mobile valide.

En bref, les fenêtres contextuelles de sortie PHP peuvent être utilisées pour envoyer rapidement des messages d'erreur aux utilisateurs, améliorer l'expérience utilisateur et renforcer la sécurité. Les pirates exploitent souvent les vulnérabilités des applications, la validation et la gestion des erreurs des entrées sont donc cruciales.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal