[ Index ]
 

Code source de PunBB 1.2.16

Accédez au Source d'autres logiciels libres

title

Body

[fermer]

/upload/include/ -> common.php (source)

   1  <?php
   2  /***********************************************************************

   3  

   4    Copyright (C) 2002-2005  Rickard Andersson (rickard@punbb.org)

   5  

   6    This file is part of PunBB.

   7  

   8    PunBB is free software; you can redistribute it and/or modify it

   9    under the terms of the GNU General Public License as published

  10    by the Free Software Foundation; either version 2 of the License,

  11    or (at your option) any later version.

  12  

  13    PunBB is distributed in the hope that it will be useful, but

  14    WITHOUT ANY WARRANTY; without even the implied warranty of

  15    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the

  16    GNU General Public License for more details.

  17  

  18    You should have received a copy of the GNU General Public License

  19    along with this program; if not, write to the Free Software

  20    Foundation, Inc., 59 Temple Place, Suite 330, Boston,

  21    MA  02111-1307  USA

  22  

  23  ************************************************************************/
  24  
  25  // Activez le mode DEBUG en enlevant // du début de la ligne ci-dessous

  26  //define('PUN_DEBUG', 1);

  27  
  28  // Ceci permettra d'afficher en bas de page toutes les requêtes exécutées

  29  // N'ACTIVEZ PAS cela sur un environnement de production !

  30  //define('PUN_SHOW_QUERIES', 1);

  31  
  32  if (!defined('PUN_ROOT'))
  33      exit('La constante PUN_ROOT doit être définie est doit pointer le repertoire racine d\'une installation fonctionnelle de PunBB.');
  34  
  35  
  36  // Load the functions script

  37  require  PUN_ROOT.'include/functions.php';
  38  
  39  // Reverse the effect of register_globals

  40  unregister_globals();
  41  
  42  
  43  @include PUN_ROOT.'config.php';
  44  
  45  // If PUN isn't defined, config.php is missing or corrupt

  46  if (!defined('PUN'))
  47      exit('Le fichier "config.php" n\'existe pas ou est endommagé. Veuillez lancer <a href="install.php">install.php</a> pour installer PunBB.');
  48  
  49  
  50  // Record the start time (will be used to calculate the generation time for the page)

  51  list($usec, $sec) = explode(' ', microtime());
  52  $pun_start = ((float)$usec + (float)$sec);
  53  
  54  // Make sure PHP reports all errors except E_NOTICE. PunBB supports E_ALL, but a lot of scripts it may interact with, do not.

  55  error_reporting(E_ALL ^ E_NOTICE);
  56  
  57  // Turn off magic_quotes_runtime

  58  set_magic_quotes_runtime(0);
  59  
  60  // Strip slashes from GET/POST/COOKIE (if magic_quotes_gpc is enabled)

  61  if (get_magic_quotes_gpc())
  62  {
  63  	function stripslashes_array($array)
  64      {
  65          return is_array($array) ? array_map('stripslashes_array', $array) : stripslashes($array);
  66      }
  67  
  68      $_GET = stripslashes_array($_GET);
  69      $_POST = stripslashes_array($_POST);
  70      $_COOKIE = stripslashes_array($_COOKIE);
  71  }
  72  
  73  // Seed the random number generator

  74  mt_srand((double)microtime()*1000000);
  75  
  76  // If a cookie name is not specified in config.php, we use the default (punbb_cookie)

  77  if (empty($cookie_name))
  78      $cookie_name = 'punbb_cookie';
  79  
  80  // Define a few commonly used constants

  81  define('PUN_UNVERIFIED', 32000);
  82  define('PUN_ADMIN', 1);
  83  define('PUN_MOD', 2);
  84  define('PUN_GUEST', 3);
  85  define('PUN_MEMBER', 4);
  86  
  87  
  88  // Load DB abstraction layer and connect

  89  require  PUN_ROOT.'include/dblayer/common_db.php';
  90  
  91  // Start a transaction

  92  $db->start_transaction();
  93  
  94  // Load cached config

  95  @include PUN_ROOT.'cache/cache_config.php';
  96  if (!defined('PUN_CONFIG_LOADED'))
  97  {
  98      require  PUN_ROOT.'include/cache.php';
  99      generate_config_cache();
 100      require PUN_ROOT.'cache/cache_config.php';
 101  }
 102  
 103  
 104  // Enable output buffering

 105  if (!defined('PUN_DISABLE_BUFFERING'))
 106  {
 107      // For some very odd reason, "Norton Internet Security" unsets this

 108      $_SERVER['HTTP_ACCEPT_ENCODING'] = isset($_SERVER['HTTP_ACCEPT_ENCODING']) ? $_SERVER['HTTP_ACCEPT_ENCODING'] : '';
 109  
 110      // Should we use gzip output compression?

 111      if ($pun_config['o_gzip'] && extension_loaded('zlib') && (strpos($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip') !== false || strpos($_SERVER['HTTP_ACCEPT_ENCODING'], 'deflate') !== false))
 112          ob_start('ob_gzhandler');
 113      else
 114          ob_start();
 115  }
 116  
 117  
 118  // Check/update/set cookie and fetch user info

 119  $pun_user = array();
 120  check_cookie($pun_user);
 121  
 122  // Attempt to load the common language file

 123  @include PUN_ROOT.'lang/'.$pun_user['language'].'/common.php';
 124  if (!isset($lang_common))
 125      exit('Il n\'y a pas de pack de langue \''.pun_htmlspecialchars($pun_user['language']).'\' d\'installé. Veuillez ré-installer une langue de ce nom.');
 126  
 127  // Check if we are to display a maintenance message

 128  if ($pun_config['o_maintenance'] && $pun_user['g_id'] > PUN_ADMIN && !defined('PUN_TURN_OFF_MAINT'))
 129      maintenance_message();
 130  
 131  
 132  // Load cached bans

 133  @include PUN_ROOT.'cache/cache_bans.php';
 134  if (!defined('PUN_BANS_LOADED'))
 135  {
 136      require_once  PUN_ROOT.'include/cache.php';
 137      generate_bans_cache();
 138      require PUN_ROOT.'cache/cache_bans.php';
 139  }
 140  
 141  // Check if current user is banned

 142  check_bans();
 143  
 144  
 145  // Update online list

 146  update_users_online();
 147  


Généré le : Sat Nov 24 22:44:38 2007 par Balluche grâce à PHPXref 0.7
  Clicky Web Analytics