La page qui suit ci-dessous n’est pas une documentation officielle de la plateforme de FranceServ Hébergement. Cette ressource est une contribution de la part des hébergés eux-mêmes où ils peuvent s'ils le souhaitent, participer à la création de contenu dans le Wiki pour apporter leurs expériences concernant l'hébergement mutualisé chez FSH. Merci de prendre vos précautions. En savoir plus ...

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

contributions:debug_poussif [2012/06/21 10:36]
willemijns créée
contributions:debug_poussif [2012/06/21 10:41] (Version actuelle)
willemijns
Ligne 1: Ligne 1:
 +(texte à vérifier)
 +
 +Sur proposition de l'​admin en cas de besoin de debug poussé, voici le code PHP
 +qui se décompose de deux fonctions et de deux lignes de codes magiques qui doivent être placés au début du code après les fonctions.
 +
 +<​code>​
 +<?php
 +
 +function myErrorHandler($errno,​ $errstr, $errfile, $errline)
 +  {
 +  if (!(error_reporting() & $errno))
 +    {
 +    // Ce code d'​erreur n'est pas inclus dans error_reporting()
 +    return;
 +    }
 +  switch ($errno)
 +    {
 +    case E_USER_ERROR:​
 +      $error_type = '​ERREUR';​
 +      break;
 +    case E_USER_WARNING:​
 +      $error_type = '​ALERTE';​
 +      break;
 +    case E_USER_NOTICE:​
 +      $error_type = '​AVERTISSEMENT';​
 +      break;
 +    default:
 +      $error_type = '​ERREUR INCONNUE';​
 +      break;
 +    }
 +  /* Afficher et reporter l'​erreur */
 +  $ip = $_SERVER['​REMOTE_ADDR'​];​
 +  $error_admin = date("​d/​m/​Y - H:​i",​time())."​ - "​.$error_type."​ - "​.$ip."​ - Problème à la ligne "​.$errline."​ dans le fichier "​.$errfile."​ : ["​.$errno."​] "​.$errstr;​
 +  $error_public = $error_type."​ - Problème à la ligne "​.$errline."​ : ["​.$errno."​] "​.$errstr;​
 +  echo("<​b>"​.$error_public."</​b><​br/>​\n"​);​
 +  fs_log($error_admin);​
 +  /* Ne pas exécuter le gestionnaire interne de PHP */
 +  if($error_type == '​ERREUR'​){exit(1);​}
 +  return true;
 +  }
 +function shutdown_function()
 +  {
 +  $a=error_get_last();​
 +  if($a!=null)
 +    {
 +    $ip = $_SERVER['​REMOTE_ADDR'​];​
 +    $errstr = implode(",",​ $a);
 +    $error_admin = date("​d/​m/​Y - H:​i",​time())."​ - FATAL ERROR - "​.$ip."​ - Problème : "​.$errstr ;
 +    @fs_log($error_admin);​
 +    return true;
 +    }
 +  }
 +</​code>  ​
 +  ​
 +__** Ici vous ajoutez toutes vos fonctions **__ 
 +
 +<​code>​
 +$old_error_handler = set_error_handler("​myErrorHandler"​);​
 +register_shutdown_function('​shutdown_function'​);​
 +</​code>​
 +
 +__** Ici vous ajoutez votre code PHP **__
 +<​code>​
 +?>
 +</​code>​
  
 
contributions/debug_poussif.txt · Dernière modification: 2012/06/21 10:41 par willemijns
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki