Possible d'éviter l'apparition de messages d'erreur? - PHP - Programmation
Marsh Posté le 28-10-2004 à 23:09:05
bubu666 a écrit : Voila, j'aimerai éviter que les message d'erreur de php s'affiche sur la page notament pour l'envoi de mail ou d'enregistrement dans une base sql. Il peut arriver d'avoir ceci d'afficher: Warning: mail(): Failed to connect to mailserver at...., j'aimerai que ce message ne s'affiche pas et que je puisse mettre autre chose à la place. |
je sais pas si avec le @ devant le nom des fonctions ca pourrait résoudre ton probleme
exemple @mail(....)
Marsh Posté le 28-10-2004 à 23:14:34
nikel avec le @ devant la fonction, le message d'erreur a disparu.
mais comment récupéré le message d'erreur qui aurait du s'afficher?
Marsh Posté le 28-10-2004 à 23:21:50
bubu666 a écrit : nikel avec le @ devant la fonction, le message d'erreur a disparu. |
bonne question ;o)
a mon avis deja tu devrais traiter dans ton script le retour de la fonction mail et faire en consequence
mais la apres je sais pas trop , j'essaye en general d'eviter ses messages d'erreurs
mais bon je pense qu'il doit bien y avoir un moeyn de recuperer els erreurs par le biais de variable systeme ou je ne sais quoi
la gestion des erreurs c'est aps vraiment ma spécialité et c'est un sérieux manque
regarde sur le @ sur google et peut etre en cherchant la dessus tu truovera la réponse a ton problème
Marsh Posté le 28-10-2004 à 23:22:21
cet opérateur "@" sert a masquer l'erreur retournée par la fonction qui suit cet opérateur.
Un autre solution exise, celle ci cache tous les messages d'un type precis.
exemple : pour masquer les notices
error_reporting(~E_NOTICE);
Marsh Posté le 29-10-2004 à 09:05:27
sinon avec easy php tu peux acceder au fichier log ou tout les erreurs de apache sont stockées avec la date et heure d'apparition. Il te suffit de lire ce fichier et d'accéder au dernier enregistrement et tu as ton message d'erreur.
Par contre tu dois pouvoir trouver ce fichier log meme si tu n'as pas easyphp je pense.
Marsh Posté le 29-10-2004 à 09:54:00
spaceuniverse a écrit : |
Bah voui, c'est un peu un fichier d'Apache (le serveur)
Marsh Posté le 29-10-2004 à 10:14:23
Mais RTFM bordel
Citation : mail() retourne TRUE si le mail est envoyé, et FALSE sinon. |
Code :
|
Si true alors pas eu d'erreur et si false alors l'envoi du mail a foiré
Marsh Posté le 29-10-2004 à 10:28:14
autrement tu as la bufferisation de sortie avec ob_start(); et ob_flush();
Marsh Posté le 29-10-2004 à 16:53:34
Pour les erreurs on fait un gestionnaire d'erreurs
Je conseille à tous ceux qui ont postés dans ce post de lire l'intégralité de ce chapitre : http://fr2.php.net/manual/en/ref.errorfunc.php
Marsh Posté le 29-10-2004 à 18:05:16
jme sent mieux en français
http://fr2.php.net/manual/fr/ref.errorfunc.php
Marsh Posté le 29-10-2004 à 21:16:49
Je préfère la doc dans la langue d'origine c'est pour ça que j'ai mis le lien vers la doc en anglais
Marsh Posté le 29-10-2004 à 22:44:10
bien chef.
en tout cas j'ai appris une chose :
il existe une fonction :
wddx_serialize_value()
mais j'ai pas compris du tout comment elle marchait (et j'ai regardé la doc php biensur !)
Marsh Posté le 29-10-2004 à 23:58:28
On est d'accord que cette fonction ne fait pas du tout partie du chapitre sur la gestion des erreurs ?
Marsh Posté le 30-10-2004 à 00:03:50
bah vi, mais elle est dans la doc que tu as donné...
Marsh Posté le 30-10-2004 à 00:32:10
La doc que je t'ai donnée c'est la doc officielle, y a donc toutes les fonctions, mêmes celles qui ne te serviront jamais
Mais si tu veux lire toute la doc, c'est tout à ton honneur
Marsh Posté le 30-10-2004 à 01:43:03
wai mais je l'ai pas comprise
bon on laisse tomber...
Marsh Posté le 28-10-2004 à 23:06:48
Voila, j'aimerai éviter que les message d'erreur de php s'affiche sur la page notament pour l'envoi de mail ou d'enregistrement dans une base sql. Il peut arriver d'avoir ceci d'afficher: Warning: mail(): Failed to connect to mailserver at...., j'aimerai que ce message ne s'affiche pas et que je puisse mettre autre chose à la place.
J'aimerai également pouvoir récupèrer ce message pour une utilisation ultérieur.