Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

AIDEZ MOAAAAA!!!!!! - pb avec gestion d'erreur

1 réponse
Avatar
[G2B] Fylefou
Mon petit systeme de gestion d'erreur (en objet) marche tres bien
Sauf pour les erreurs de type : Parse error:
alors au debut j'a v un souci , il ne l'affichait pas du tout!! du coup g
revu ma fonction error_repporting et o final je l'ai viré pour laisser le
nivo par default de PHP
du coup tout fonctionne sauf ce p***** de Parse error , ces erreurs arretant
les scripts



Une erreur d'un type inconnu s'est produite :
Numéro : 8
Message : Use of undefined constant deconnect2stats - assumed
'deconnect2stats'

Fichier : ****
Ligne : 868
Une erreur d'un type inconnu s'est produite :
Numéro : 8
Message : Use of undefined constant connect2stats - assumed 'connect2stats'

Fichier : *****
Ligne : 948
Une erreur d'un type inconnu s'est produite :
Numéro : 8
Message : Use of undefined constant getparam - assumed 'getparam'

Fichier : ****Ligne : 101


Parse error: parse error, unexpected T_VARIABLE in *******/cCSV.php on line
253

--
je connais l'erreur je l'ai laissé car ca me rendait fou


voici mon script:
define ("FATAL",E_USER_ERROR);

define ("ERROR",E_USER_WARNING);

define ("WARNING",E_USER_NOTICE);

function gestiondeserreurs($numero_erreur, $message_erreur, $fichier_erreur,
$ligne_erreur)

{

//test d'affichage

echo $numero_erreur;

switch ($numero_erreur)

{

case FATAL:

$msg_erreur_html = "<h3 style='color:#FF0000'>\"".$GLOBALS["root_html"]."\"
Une erreur du type <i>E_USER_ERROR</i> s'est produite :</h3>"

. "<u>Numéro :</u> " . $numero_erreur

. "<br><u>Message :</u> " . $message_erreur

. "<br><u>Fichier :</u> " . $fichier_erreur

. "<br><u>Ligne :</u> " . $ligne_erreur;

break;

case ERROR:

$msg_erreur_html = "<h3
style='color:#FF0000'>\"".$GLOBALS["root_html"]."\"Une erreur du type
<i>E_USER_WARNING</i> s'est produite :</h3>"

. "<u>Numéro :</u> " .$numero_erreur

. "<br><u>Message :</u> " . $message_erreur. "<br>"

. "<br><u>Fichier :</u> " . $fichier_erreur

. "<br><u>Ligne :</u> " . $ligne_erreur;

break;

case WARNING:

$msg_erreur_html = "<h3
style='color:#FF0000'>\"".$GLOBALS["root_html"]."\"Une erreur du type
<i>E_USER_NOTICE</i> s'est produite :</h3>"

. "<u>Numéro :</u> " .$numero_erreur

. "<br><u>Message :</u> " . $message_erreur . "<br>"

. "<br><u>Fichier :</u> " . $fichier_erreur

. "<br><u>Ligne :</u> " . $ligne_erreur;

break;

default:

$msg_erreur_html = "<h3
style='color:#FF0000'>\"".$GLOBALS["root_html"]."\"Une erreur d'un type
inconnu s'est produite :</h3>"

. "<u>Numéro :</u> " .$numero_erreur

. "<br><u>Message :</u> " . $message_erreur . "<br>"

. "<br><u>Fichier :</u> " . $fichier_erreur

. "<br><u>Ligne :</u> " . $ligne_erreur;

break;

}

echo $msg_erreur_html;//test egalement

$mail = new PHPMailer;

$mail->From = "******";

$mail->FromName = "Gestionnaire d'erreur Cartéos";

$mail->AddReplyTo("********");

$mail->Subject = "Une erreur c produite le ".date("j/m/Y")." à
".date("H:i:s");

$mail->AltBody = strip_tags(str_replace("<br>","\n",$msg_erreur_html));

$mail->Body = $msg_erreur_html;

$mail->AddAddress("******", "********");

$mail->Send();






}

JE VOUS EN SUPLI!!!!!
merci d'av!!

1 réponse

Avatar
John Gallet
Bonjour,

Mon petit systeme de gestion d'erreur (en objet) marche tres bien
Sauf pour les erreurs de type : Parse error:


Tu confonds deux types d'erreur : les erreurs du parser (compilateur si
tu préfères) et les erreurs d'exécution (run-time). Donc sauf à
transformer les erreurs de parsing en erreurs runtime en appelant
systématiquement la fonction eval() sur du code que tu lirais dans un
moteur pour encapsuler l'appel à Zend au travers d'un moteur à toi de
gestion des erreurs, solution complètement débile mais répondant
techniquement à ta question, je ne vois pas d'autres solutions (ce qui
ne veut pas dire qu'il n'y en a pas, mais je n'en vois pas. Si, on
pourrait aussi aller modifier le moteur Zend et recompiler, bon
courage.)

Maintenant une petite remarque en passant : en PHP3, on devait
explicitement passer par le chemin des différents includes pour être
certain que tout le code était testé. Ceci liait la vérification
purement syntaxique à la complétude fonctionnelle du jeu de test. Depuis
PHP4, ce n'est plus le cas. Ta question implique donc ou que tu es en
train d'écrire un moteur de validation de scripts PHP, ou que tu n'a
rien compris à la notion de programmation ni de compilation ou
interprétation et encore moins à la notion de test unitaire, sans parler
des tests d'intégration.

Enfin, merci de respecter le strict minimum de grammaire et de syntaxe
de la langue française, parce que des parse errors en essayant de
déchiffrer tes bredouillis parkinsoniens, mon parseur interne en fait un
sacré paquet.

JG
--
pourkoi faire ca c koi le but? je vois pas l interet c un forum libre
ou tt le monde px s exprimer c pas mtnt kil faut reagir c ds les posts
Au secours, mon ROT-13 ne marche plus :-((((

-+- PC in GNU : Neuneu decode à plein tube -+-