[ Index ] |
|
Code source de PunBB 1.2.16 |
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 26 // The PunBB version this script installs 27 $punbb_version = '1.2.16'; 28 $punbb_version_fr = '1.2.16'; 29 30 31 define('PUN_ROOT', './'); 32 if (file_exists(PUN_ROOT.'config.php')) 33 exit('Le fichier \'config.php\' existe déjà, ce qui signifie très probablement que PunBB est déjà installé. Vous devriez plutôt <a href="index.php">aller ici</a>.'); 34 35 36 // Make sure we are running at least PHP 4.1.0 37 if (intval(str_replace('.', '', phpversion())) < 410) 38 exit('Vous utilisez la version '.PHP_VERSION.' de PHP. PunBB nécéssite au minimum PHP 4.1.0 pour fonctionner correctement. Vous devez mettre à jour votre installation de PHP afin de pouvoir continuer l\'installation.'); 39 40 // Disable error reporting for uninitialized variables 41 error_reporting(E_ALL); 42 43 // Turn off PHP time limit 44 @set_time_limit(0); 45 46 47 if (!isset($_POST['form_sent'])) 48 { 49 // Determine available database extensions 50 $dual_mysql = false; 51 $db_extensions = array(); 52 if (function_exists('mysqli_connect')) 53 $db_extensions[] = array('mysqli', 'MySQL amélioré (MySQL Improved)'); 54 if (function_exists('mysql_connect')) 55 { 56 $db_extensions[] = array('mysql', 'MySQL Standard'); 57 58 if (count($db_extensions) > 1) 59 $dual_mysql = true; 60 } 61 if (function_exists('sqlite_open')) 62 $db_extensions[] = array('sqlite', 'SQLite'); 63 if (function_exists('pg_connect')) 64 $db_extensions[] = array('pgsql', 'PostgreSQL'); 65 66 if (empty($db_extensions)) 67 exit('Cet environnement PHP n\'a le support pour aucune bases de données que PunBB peut utiliser. Afin d\'installer PunBB, PHP doit supporter soit MySQL, PostgreSQL ou SQLite.'); 68 69 ?> 70 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 71 72 <html> 73 <head> 74 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 75 <title>Installation de PunBB</title> 76 <link rel="stylesheet" type="text/css" href="style/Oxygen.css" /> 77 <script type="text/javascript"> 78 <!-- 79 function process_form(the_form) 80 { 81 var element_names = new Object() 82 element_names["req_db_type"] = "Type de base de données" 83 element_names["req_db_host"] = "Hôte serveur de base de données" 84 element_names["req_db_name"] = "Nom de base de données" 85 element_names["db_prefix"] = "Préfixe tables" 86 element_names["req_username"] = "Nom utilisateur administrateur" 87 element_names["req_password1"] = "Mot de passe administrateur 1" 88 element_names["req_password2"] = "Mot de passe administrateur 2" 89 element_names["req_email"] = "E-mail administrateur" 90 element_names["req_base_url"] = "URL de base" 91 92 if (document.all || document.getElementById) 93 { 94 for (i = 0; i < the_form.length; ++i) 95 { 96 var elem = the_form.elements[i] 97 if (elem.name && elem.name.substring(0, 4) == "req_") 98 { 99 if (elem.type && (elem.type=="text" || elem.type=="textarea" || elem.type=="password" || elem.type=="file") && elem.value=='') 100 { 101 alert("\"" + element_names[elem.name] + "\" est un champ requis pour ce formulaire.") 102 elem.focus() 103 return false 104 } 105 } 106 } 107 } 108 109 return true 110 } 111 // --> 112 </script> 113 </head> 114 <body onload="document.getElementById('install').req_db_type.focus()"> 115 116 <div id="puninstall" style="margin: auto 10% auto 10%"> 117 <div class="pun"> 118 119 <div class="block"> 120 <h2><span>Installation de PunBB</span></h2> 121 <div class="box"> 122 <div class="inbox"> 123 <p>Bienvenue sur l'application d'installation de PunBB ! Vous vous apprêtez à installer PunBB. Afin d'installer celui-ci vous devez remplir le formulaire ci-dessous. Si vous rencontrez des difficultés avec l'installation, veuillez s'il vous plait vous référer à la documentation.</p> 124 </div> 125 </div> 126 </div> 127 128 <div class="blockform"> 129 <h2><span>Installer PunBB</span></h2> 130 <div class="box"> 131 <form id="install" method="post" action="install.php" onsubmit="this.start.disabled=true;if(process_form(this)){return true;}else{this.start.disabled=false;return false;}"> 132 <div><input type="hidden" name="form_sent" value="1" /></div> 133 <div class="inform"> 134 <div class="forminfo"> 135 <h3>Réglages de la base de données</h3> 136 <p>Afin d'installer votre base de données pour PunBB, veuillez saisir les informations demandées ci-dessous. Vous devez connaître toutes les informations demandées avant de procéder à l'installation.</p> 137 </div> 138 <fieldset> 139 <legend>Sélectionnez le type de votre base de données</legend> 140 <div class="infldset"> 141 <p>PunBB supporte actuellement MySQL, PostgreSQL et SQLite. Si votre base de données est absente du menu déroulant ci-dessous, cela signifie que cet environnement <acronym title="PHP: Hypertext Preprocessor" lang="en">PHP</acronym> n'a pas le support pour cette base de données particulière. Plus d'information concernant le support des versions particulières de chaque base de données pourra être trouvée dans la <acronym title="Frequently Asked Questions" lang="en">FAQ</acronym>.</p> 142 <?php if ($dual_mysql): ?> <p>PunBB a détecté que votre environnement PHP supporte deux manières différentes de communiquer avec MySQL. Les deux options s'appellent "standard" (MySQL) et "amélioré" (MySQLi ; "i" comme "improved"). Si vous n'êtes pas certain de laquelle utiliser, commencez par essayer "amélioré" et si cela échoue, essayez "standard".</p> 143 <?php endif; ?> <label><strong>Type de base de données</strong> 144 <br /><select name="req_db_type"> 145 <?php 146 147 foreach ($db_extensions as $db_type) 148 echo "\t\t\t\t\t\t\t".'<option value="'.$db_type[0].'">'.$db_type[1].'</option>'."\n"; 149 150 ?> 151 </select> 152 <br /></label> 153 </div> 154 </fieldset> 155 </div> 156 <div class="inform"> 157 <fieldset> 158 <legend>Saisissez l'adresse de votre serveur de base de données</legend> 159 <div class="infldset"> 160 <p>L'adresse du serveur de base de données (exemples : localhost, db.monhote.com ou 192.168.0.15). Vous pouvez indiquer un numéro de port personnalisé au cas où votre base de donnée ne fonctionne pas sur le port par défaut (exemple : localhost:3580). Pour le support de SQLite, écrivez n'importe quoi ou laissez 'localhost'.</p> 161 <label><strong>Hôte serveur de base de données</strong><br /><input type="text" name="req_db_host" value="localhost" size="50" maxlength="100" /><br /></label> 162 </div> 163 </fieldset> 164 </div> 165 <div class="inform"> 166 <fieldset> 167 <legend>Saisissez le nom de votre base de données</legend> 168 <div class="infldset"> 169 <p>Le nom de la base de données sur laquelle PunBB sera installé. La base de données doit exister. Pour SQLite, il s'agit du chemin relatif vers le fichier de base de données. Si ce fichier de base de données SQLite n'existe pas, PunBB essayera de le créer.</p> 170 <label for="req_db_name"><strong>Nom de la base de données</strong><br /><input id="req_db_name" type="text" name="req_db_name" size="30" maxlength="50" /><br /></label> 171 </div> 172 </fieldset> 173 </div> 174 <div class="inform"> 175 <fieldset> 176 <legend>Saisissez votre nom d'utilisateur et votre mot de passe de la base de données</legend> 177 <div class="infldset"> 178 <p>Saisissez le nom d'utilisateur et le mot de passe que vous utilisez pour vous connecter à la base de données. Ignorez pour SQLite.</p> 179 <label class="conl">Nom d'utilisateur <acronym title="Base de données">BDD</acronym><br /><input type="text" name="db_username" size="30" maxlength="50" /><br /></label> 180 <label class="conl">Mot de passe <acronym title="Base de données">BDD</acronym><br /><input type="text" name="db_password" size="30" maxlength="50" /><br /></label> 181 <div class="clearer"></div> 182 </div> 183 </fieldset> 184 </div> 185 <div class="inform"> 186 <fieldset> 187 <legend>Saisissez le préfixe des tables</legend> 188 <div class="infldset"> 189 <p>Si vous le souhaitez vous pouvez indiquer un préfixe de tables. De cette façon vous pouvez utiliser plusieurs installations de PunBB sur la même base de données. (exemple : pun_).</p> 190 <label>Préfixe tables<br /><input id="db_prefix" type="text" name="db_prefix" size="20" maxlength="30" /><br /></label> 191 </div> 192 </fieldset> 193 </div> 194 <div class="inform"> 195 <div class="forminfo"> 196 <h3>Réglages d'administration</h3> 197 <p>Veuillez saisir les informations demandées ci-dessous afin de définir un administrateur pour votre installation de PunBB.</p> 198 </div> 199 <fieldset> 200 <legend>Saisissez le nom d'utilisateur de l'administrateur</legend> 201 <div class="infldset"> 202 <p>Le nom d'utilisateur de l'administrateur des forums. Vous pourrez par la suite créer de nouveaux administrateurs ainsi que des modérateurs. Ce nom d'utilisateur peut faire entre 2 et 25 caractères de long.</p> 203 <label><strong>Nom d'utilisateur administrateur</strong><br /><input type="text" name="req_username" size="25" maxlength="25" /><br /></label> 204 </div> 205 </fieldset> 206 </div> 207 <div class="inform"> 208 <fieldset> 209 <legend>Saisissez et confirmez le mot de passe administrateur</legend> 210 <div class="infldset"> 211 <p>Les mots de passe peuvent faire entre 4 et 16 caractères de long. Les mots de passe sont sensibles à la casse.</p> 212 <label class="conl"><strong>Mot de passe</strong><br /><input id="req_password1" type="text" name="req_password1" size="16" maxlength="16" /><br /></label> 213 <label class="conl"><strong>Confirmez le mot de passe</strong><br /><input type="text" name="req_password2" size="16" maxlength="16" /><br /></label> 214 <div class="clearer"></div> 215 </div> 216 </fieldset> 217 </div> 218 <div class="inform"> 219 <fieldset> 220 <legend>Saisissez l'adresse e-mail de l'administrateur</legend> 221 <div class="infldset"> 222 <p>L'adresse e-mail de l'administrateur des forums.</p> 223 <label for="req_email"><strong>E-mail administrateur</strong><br /><input id="req_email" type="text" name="req_email" size="50" maxlength="50" /><br /></label> 224 </div> 225 </fieldset> 226 </div> 227 <div class="inform"> 228 <fieldset> 229 <legend>Saisissez l'<acronym title="Uniform Resource Locator" lang="en">URL</acronym> de base de votre installation de PunBB</legend> 230 <div class="infldset"> 231 <p>L'<acronym title="Uniform Resource Locator" lang="en">URL</acronym> de base (sans slash à la fin) de vos forums PunBB (exemple : http://forum.mondomaine.com ou http://monhote.com/~utilisateur). Ceci <strong>doit être correct</strong> ou les administrateurs et modérateurs ne pourront valider aucun des formulaires. Veuillez noter que la valeur pré-réglée ci-dessous est juste une proposition devinée par PunBB.</p> 232 <label><strong><acronym title="Uniform Resource Locator" lang="en">URL</acronym> de base</strong><br /><input type="text" name="req_base_url" value="http://<?php echo $_SERVER['SERVER_NAME'].str_replace('\\', '/', dirname($_SERVER['SCRIPT_NAME'])) ?>" size="60" maxlength="100" /><br /></label> 233 </div> 234 </fieldset> 235 </div> 236 <p><input type="submit" name="start" value="Lancer l'installation" /></p> 237 </form> 238 </div> 239 </div> 240 241 </div> 242 </div> 243 244 </body> 245 </html> 246 <?php 247 248 } 249 else 250 { 251 // 252 // Strip slashes only if magic_quotes_gpc is on. 253 // 254 function unescape($str) 255 { 256 return (get_magic_quotes_gpc() == 1) ? stripslashes($str) : $str; 257 } 258 259 260 // 261 // Compute a hash of $str. 262 // Uses sha1() if available. If not, SHA1 through mhash() if available. If not, fall back on md5(). 263 // 264 function pun_hash($str) 265 { 266 if (function_exists('sha1')) // Only in PHP 4.3.0+ 267 return sha1($str); 268 else if (function_exists('mhash')) // Only if Mhash library is loaded 269 return bin2hex(mhash(MHASH_SHA1, $str)); 270 else 271 return md5($str); 272 } 273 274 275 // 276 // A temporary replacement for the full error handler found in functions.php. 277 // It's here because a function called error() must be callable in the database abstraction layer. 278 // 279 function error($message, $file = false, $line = false, $db_error = false) 280 { 281 if ($file !== false && $line !== false) 282 echo '<strong style="color: A00000">Une erreur s\'est produite à la ligne '.$line.' dans le fichier '.$file.'.</strong><br /><br />'; 283 else 284 echo '<strong style="color: A00000">Une erreur s\'est produite.</strong><br /><br />'; 285 286 echo '<strong>PunBB a rapporté :</strong> '.htmlspecialchars($message).'<br /><br />'; 287 288 if ($db_error !== false) 289 echo '<strong>La base de données a rapporté :</strong> '.htmlspecialchars($db_error['error_msg']).(($db_error['error_no']) ? ' (Errno: '.$db_error['error_no'].')' : ''); 290 291 exit; 292 } 293 294 295 $db_type = $_POST['req_db_type']; 296 $db_host = trim($_POST['req_db_host']); 297 $db_name = trim($_POST['req_db_name']); 298 $db_username = unescape(trim($_POST['db_username'])); 299 $db_password = unescape(trim($_POST['db_password'])); 300 $db_prefix = trim($_POST['db_prefix']); 301 $username = unescape(trim($_POST['req_username'])); 302 $email = strtolower(trim($_POST['req_email'])); 303 $password1 = unescape(trim($_POST['req_password1'])); 304 $password2 = unescape(trim($_POST['req_password2'])); 305 306 307 // Make sure base_url doesn't end with a slash 308 if (substr($_POST['req_base_url'], -1) == '/') 309 $base_url = substr($_POST['req_base_url'], 0, -1); 310 else 311 $base_url = $_POST['req_base_url']; 312 313 314 // Validate username and passwords 315 if (strlen($username) < 2) 316 error('Le nom d\'utilisateur administrateur doit faire au moins 2 caractères de long. Veuillez retourner en arrière et corriger.'); 317 if (strlen($password1) < 4) 318 error('Le mot de passe administrateur doit faire au moins 4 caractères de long. Veuillez retourner en arrière et corriger.'); 319 if ($password1 != $password2) 320 error('Les mots de passe administrateur ne correspondent pas. Veuillez retourner en arrière et corriger.'); 321 if (!strcasecmp($username, 'invité')) 322 error('Le nom d\'utilisateur \'invité\' est réservé. Veuillez retourner en arrière et corriger.'); 323 if (!strcasecmp($username, 'guest')) 324 error('Le nom d\'utilisateur \'guest\' est réservé. Veuillez retourner en arrière et corriger.'); 325 if (preg_match('/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/', $username)) 326 error('Les noms d\'utilisateur ne peuvent être de la forme d\'une adresse IP. Veuillez retourner en arrière et corriger.'); 327 if (preg_match('#\[b\]|\[/b\]|\[u\]|\[/u\]|\[i\]|\[/i\]|\[color|\[/color\]|\[quote\]|\[/quote\]|\[code\]|\[/code\]|\[img\]|\[/img\]|\[url|\[/url\]|\[email|\[/email\]#i', $username)) 328 error('Le nom d\'utilisateur ne peut contenir aucune des balise de formatage (BBCode) que les forums utilisent. Veuillez retourner en arrière et corriger.'); 329 330 if (strlen($email) > 50 || !preg_match('/^(([^<>()[\]\\.,;:\s@"\']+(\.[^<>()[\]\\.,;:\s@"\']+)*)|("[^"\']+"))@((\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\])|(([a-zA-Z\d\-]+\.)+[a-zA-Z]{2,}))$/', $email)) 331 error('L\'adresse e-mail administrateur que vous avez saisie est incorrecte. Veuillez retourner en arrière et corriger.'); 332 333 334 // Load the appropriate DB layer class 335 switch ($db_type) 336 { 337 case 'mysql': 338 require PUN_ROOT.'include/dblayer/mysql.php'; 339 break; 340 341 case 'mysqli': 342 require PUN_ROOT.'include/dblayer/mysqli.php'; 343 break; 344 345 case 'pgsql': 346 require PUN_ROOT.'include/dblayer/pgsql.php'; 347 break; 348 349 case 'sqlite': 350 require PUN_ROOT.'include/dblayer/sqlite.php'; 351 break; 352 353 default: 354 error('\''.$db_type.'\' n\'est pas un type de base de données valable.'); 355 } 356 357 // Create the database object (and connect/select db) 358 $db = new DBLayer($db_host, $db_username, $db_password, $db_name, $db_prefix, false); 359 360 361 // Do some DB type specific checks 362 switch ($db_type) 363 { 364 case 'mysql': 365 case 'mysqli': 366 break; 367 368 case 'pgsql': 369 // Make sure we are running at least PHP 4.3.0 (needed only for PostgreSQL) 370 if (version_compare(PHP_VERSION, '4.3.0', '<')) 371 error('Vous utilisez la version '.PHP_VERSION.'de PHP. PunBB nécéssite au minimum PHP 4.3.0 pour fonctionner correctement avec PostgreSQL. Vous devez mettre à jour votre installation de PHP ou utiliser une base de données différente pour continuer.'); 372 break; 373 374 case 'sqlite': 375 if (strtolower($db_prefix) == 'sqlite_') 376 error('Le préfixe de tables \'sqlite_\' est réservé pour l\'utilisation du moteur SQLite. Veuillez choisir un préfixe différent.'); 377 break; 378 } 379 380 381 // Make sure PunBB isn't already installed 382 $result = $db->query('SELECT 1 FROM '.$db_prefix.'users WHERE id=1'); 383 if ($db->num_rows($result)) 384 error('Une table nommée "'.$db_prefix.'users" est déjà présente dans la base de données "'.$db_name.'". Ceci pourrait signifier que PunBB est déjà installé ou qu\'un autre logiciel est installé et occupe un ou plusieurs des noms de tables nécéssaires à PunBB. Si vous souhaitez installer plusieurs copies de PunBB sur la même base de donnés, vous devez choisir des préfixes de tables différents.'); 385 386 387 // Create all tables 388 switch ($db_type) 389 { 390 case 'mysql': 391 case 'mysqli': 392 $sql = 'CREATE TABLE '.$db_prefix."bans ( 393 id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, 394 username VARCHAR(200), 395 ip VARCHAR(255), 396 email VARCHAR(50), 397 message VARCHAR(255), 398 expire INT(10) UNSIGNED, 399 PRIMARY KEY (id) 400 ) TYPE=MyISAM;"; 401 break; 402 403 case 'pgsql': 404 $db->start_transaction(); 405 406 $sql = 'CREATE TABLE '.$db_prefix."bans ( 407 id SERIAL, 408 username VARCHAR(200), 409 ip VARCHAR(255), 410 email VARCHAR(50), 411 message VARCHAR(255), 412 expire INT, 413 PRIMARY KEY (id) 414 )"; 415 break; 416 417 case 'sqlite': 418 $db->start_transaction(); 419 420 $sql = 'CREATE TABLE '.$db_prefix."bans ( 421 id INTEGER NOT NULL, 422 username VARCHAR(200), 423 ip VARCHAR(255), 424 email VARCHAR(50), 425 message VARCHAR(255), 426 expire INTEGER, 427 PRIMARY KEY (id) 428 )"; 429 break; 430 431 } 432 433 $db->query($sql) or error('Impossible de créer la table '.$db_prefix.'bans. Veuillez vérifier vos réglages et essayer à nouveau.', __FILE__, __LINE__, $db->error()); 434 435 436 switch ($db_type) 437 { 438 case 'mysql': 439 case 'mysqli': 440 $sql = 'CREATE TABLE '.$db_prefix."categories ( 441 id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, 442 cat_name VARCHAR(80) NOT NULL DEFAULT 'New Category', 443 disp_position INT(10) NOT NULL DEFAULT 0, 444 PRIMARY KEY (id) 445 ) TYPE=MyISAM;"; 446 break; 447 448 case 'pgsql': 449 $sql = 'CREATE TABLE '.$db_prefix."categories ( 450 id SERIAL, 451 cat_name VARCHAR(80) NOT NULL DEFAULT 'New Category', 452 disp_position INT NOT NULL DEFAULT 0, 453 PRIMARY KEY (id) 454 )"; 455 break; 456 457 case 'sqlite': 458 $sql = 'CREATE TABLE '.$db_prefix."categories ( 459 id INTEGER NOT NULL, 460 cat_name VARCHAR(80) NOT NULL DEFAULT 'New Category', 461 disp_position INTEGER NOT NULL DEFAULT 0, 462 PRIMARY KEY (id) 463 )"; 464 break; 465 } 466 467 $db->query($sql) or error('Impossible de créer la table '.$db_prefix.'categories. Veuillez vérifier vos réglages et essayer à nouveau.', __FILE__, __LINE__, $db->error()); 468 469 470 471 switch ($db_type) 472 { 473 case 'mysql': 474 case 'mysqli': 475 $sql = 'CREATE TABLE '.$db_prefix."censoring ( 476 id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, 477 search_for VARCHAR(60) NOT NULL DEFAULT '', 478 replace_with VARCHAR(60) NOT NULL DEFAULT '', 479 PRIMARY KEY (id) 480 ) TYPE=MyISAM;"; 481 break; 482 483 case 'pgsql': 484 $sql = 'CREATE TABLE '.$db_prefix."censoring ( 485 id SERIAL, 486 search_for VARCHAR(60) NOT NULL DEFAULT '', 487 replace_with VARCHAR(60) NOT NULL DEFAULT '', 488 PRIMARY KEY (id) 489 )"; 490 break; 491 492 case 'sqlite': 493 $sql = 'CREATE TABLE '.$db_prefix."censoring ( 494 id INTEGER NOT NULL, 495 search_for VARCHAR(60) NOT NULL DEFAULT '', 496 replace_with VARCHAR(60) NOT NULL DEFAULT '', 497 PRIMARY KEY (id) 498 )"; 499 break; 500 } 501 502 $db->query($sql) or error('Impossible de créer la table '.$db_prefix.'censoring. Veuillez vérifier vos réglages et essayer à nouveau.', __FILE__, __LINE__, $db->error()); 503 504 505 506 switch ($db_type) 507 { 508 case 'mysql': 509 case 'mysqli': 510 $sql = 'CREATE TABLE '.$db_prefix."config ( 511 conf_name VARCHAR(255) NOT NULL DEFAULT '', 512 conf_value TEXT, 513 PRIMARY KEY (conf_name) 514 ) TYPE=MyISAM;"; 515 break; 516 517 case 'pgsql': 518 $sql = 'CREATE TABLE '.$db_prefix."config ( 519 conf_name VARCHAR(255) NOT NULL DEFAULT '', 520 conf_value TEXT, 521 PRIMARY KEY (conf_name) 522 )"; 523 break; 524 525 case 'sqlite': 526 $sql = 'CREATE TABLE '.$db_prefix."config ( 527 conf_name VARCHAR(255) NOT NULL DEFAULT '', 528 conf_value TEXT, 529 PRIMARY KEY (conf_name) 530 )"; 531 break; 532 } 533 534 $db->query($sql) or error('Impossible de créer la table '.$db_prefix.'config. Veuillez vérifier vos réglages et essayer à nouveau.', __FILE__, __LINE__, $db->error()); 535 536 537 538 switch ($db_type) 539 { 540 case 'mysql': 541 case 'mysqli': 542 $sql = 'CREATE TABLE '.$db_prefix."forum_perms ( 543 group_id INT(10) NOT NULL DEFAULT 0, 544 forum_id INT(10) NOT NULL DEFAULT 0, 545 read_forum TINYINT(1) NOT NULL DEFAULT 1, 546 post_replies TINYINT(1) NOT NULL DEFAULT 1, 547 post_topics TINYINT(1) NOT NULL DEFAULT 1, 548 PRIMARY KEY (group_id, forum_id) 549 ) TYPE=MyISAM;"; 550 break; 551 552 case 'pgsql': 553 $sql = 'CREATE TABLE '.$db_prefix."forum_perms ( 554 group_id INT NOT NULL DEFAULT 0, 555 forum_id INT NOT NULL DEFAULT 0, 556 read_forum SMALLINT NOT NULL DEFAULT 1, 557 post_replies SMALLINT NOT NULL DEFAULT 1, 558 post_topics SMALLINT NOT NULL DEFAULT 1, 559 PRIMARY KEY (group_id, forum_id) 560 )"; 561 break; 562 563 case 'sqlite': 564 $sql = 'CREATE TABLE '.$db_prefix."forum_perms ( 565 group_id INTEGER NOT NULL DEFAULT 0, 566 forum_id INTEGER NOT NULL DEFAULT 0, 567 read_forum INTEGER NOT NULL DEFAULT 1, 568 post_replies INTEGER NOT NULL DEFAULT 1, 569 post_topics INTEGER NOT NULL DEFAULT 1, 570 PRIMARY KEY (group_id, forum_id) 571 )"; 572 break; 573 } 574 575 $db->query($sql) or error('Impossible de créer la table '.$db_prefix.'forum_perms. Veuillez vérifier vos réglages et essayer à nouveau.', __FILE__, __LINE__, $db->error()); 576 577 578 579 switch ($db_type) 580 { 581 case 'mysql': 582 case 'mysqli': 583 $sql = 'CREATE TABLE '.$db_prefix."forums ( 584 id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, 585 forum_name VARCHAR(80) NOT NULL DEFAULT 'New forum', 586 forum_desc TEXT, 587 redirect_url VARCHAR(100), 588 moderators TEXT, 589 num_topics MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT 0, 590 num_posts MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT 0, 591 last_post INT(10) UNSIGNED, 592 last_post_id INT(10) UNSIGNED, 593 last_poster VARCHAR(200), 594 sort_by TINYINT(1) NOT NULL DEFAULT 0, 595 disp_position INT(10) NOT NULL DEFAULT 0, 596 cat_id INT(10) UNSIGNED NOT NULL DEFAULT 0, 597 PRIMARY KEY (id) 598 ) TYPE=MyISAM;"; 599 break; 600 601 case 'pgsql': 602 $sql = 'CREATE TABLE '.$db_prefix."forums ( 603 id SERIAL, 604 forum_name VARCHAR(80) NOT NULL DEFAULT 'New forum', 605 forum_desc TEXT, 606 redirect_url VARCHAR(100), 607 moderators TEXT, 608 num_topics INT NOT NULL DEFAULT 0, 609 num_posts INT NOT NULL DEFAULT 0, 610 last_post INT, 611 last_post_id INT, 612 last_poster VARCHAR(200), 613 sort_by SMALLINT NOT NULL DEFAULT 0, 614 disp_position INT NOT NULL DEFAULT 0, 615 cat_id INT NOT NULL DEFAULT 0, 616 PRIMARY KEY (id) 617 )"; 618 break; 619 620 case 'sqlite': 621 $sql = 'CREATE TABLE '.$db_prefix."forums ( 622 id INTEGER NOT NULL, 623 forum_name VARCHAR(80) NOT NULL DEFAULT 'New forum', 624 forum_desc TEXT, 625 redirect_url VARCHAR(100), 626 moderators TEXT, 627 num_topics INTEGER NOT NULL DEFAULT 0, 628 num_posts INTEGER NOT NULL DEFAULT 0, 629 last_post INTEGER, 630 last_post_id INTEGER, 631 last_poster VARCHAR(200), 632 sort_by INTEGER NOT NULL DEFAULT 0, 633 disp_position INTEGER NOT NULL DEFAULT 0, 634 cat_id INTEGER NOT NULL DEFAULT 0, 635 PRIMARY KEY (id) 636 )"; 637 break; 638 } 639 640 $db->query($sql) or error('Impossible de créer la table '.$db_prefix.'forums. Veuillez vérifier vos réglages et essayer à nouveau.', __FILE__, __LINE__, $db->error()); 641 642 643 644 switch ($db_type) 645 { 646 case 'mysql': 647 case 'mysqli': 648 $sql = 'CREATE TABLE '.$db_prefix."groups ( 649 g_id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, 650 g_title VARCHAR(50) NOT NULL DEFAULT '', 651 g_user_title VARCHAR(50), 652 g_read_board TINYINT(1) NOT NULL DEFAULT 1, 653 g_post_replies TINYINT(1) NOT NULL DEFAULT 1, 654 g_post_topics TINYINT(1) NOT NULL DEFAULT 1, 655 g_post_polls TINYINT(1) NOT NULL DEFAULT 1, 656 g_edit_posts TINYINT(1) NOT NULL DEFAULT 1, 657 g_delete_posts TINYINT(1) NOT NULL DEFAULT 1, 658 g_delete_topics TINYINT(1) NOT NULL DEFAULT 1, 659 g_set_title TINYINT(1) NOT NULL DEFAULT 1, 660 g_search TINYINT(1) NOT NULL DEFAULT 1, 661 g_search_users TINYINT(1) NOT NULL DEFAULT 1, 662 g_edit_subjects_interval SMALLINT(6) NOT NULL DEFAULT 300, 663 g_post_flood SMALLINT(6) NOT NULL DEFAULT 30, 664 g_search_flood SMALLINT(6) NOT NULL DEFAULT 30, 665 PRIMARY KEY (g_id) 666 ) TYPE=MyISAM;"; 667 break; 668 669 case 'pgsql': 670 $sql = 'CREATE TABLE '.$db_prefix."groups ( 671 g_id SERIAL, 672 g_title VARCHAR(50) NOT NULL DEFAULT '', 673 g_user_title VARCHAR(50), 674 g_read_board SMALLINT NOT NULL DEFAULT 1, 675 g_post_replies SMALLINT NOT NULL DEFAULT 1, 676 g_post_topics SMALLINT NOT NULL DEFAULT 1, 677 g_post_polls SMALLINT NOT NULL DEFAULT 1, 678 g_edit_posts SMALLINT NOT NULL DEFAULT 1, 679 g_delete_posts SMALLINT NOT NULL DEFAULT 1, 680 g_delete_topics SMALLINT NOT NULL DEFAULT 1, 681 g_set_title SMALLINT NOT NULL DEFAULT 1, 682 g_search SMALLINT NOT NULL DEFAULT 1, 683 g_search_users SMALLINT NOT NULL DEFAULT 1, 684 g_edit_subjects_interval SMALLINT NOT NULL DEFAULT 300, 685 g_post_flood SMALLINT NOT NULL DEFAULT 30, 686 g_search_flood SMALLINT NOT NULL DEFAULT 30, 687 PRIMARY KEY (g_id) 688 )"; 689 break; 690 691 case 'sqlite': 692 $sql = 'CREATE TABLE '.$db_prefix."groups ( 693 g_id INTEGER NOT NULL, 694 g_title VARCHAR(50) NOT NULL DEFAULT '', 695 g_user_title VARCHAR(50), 696 g_read_board INTEGER NOT NULL DEFAULT 1, 697 g_post_replies INTEGER NOT NULL DEFAULT 1, 698 g_post_topics INTEGER NOT NULL DEFAULT 1, 699 g_post_polls INTEGER NOT NULL DEFAULT 1, 700 g_edit_posts INTEGER NOT NULL DEFAULT 1, 701 g_delete_posts INTEGER NOT NULL DEFAULT 1, 702 g_delete_topics INTEGER NOT NULL DEFAULT 1, 703 g_set_title INTEGER NOT NULL DEFAULT 1, 704 g_search INTEGER NOT NULL DEFAULT 1, 705 g_search_users INTEGER NOT NULL DEFAULT 1, 706 g_edit_subjects_interval INTEGER NOT NULL DEFAULT 300, 707 g_post_flood INTEGER NOT NULL DEFAULT 30, 708 g_search_flood INTEGER NOT NULL DEFAULT 30, 709 PRIMARY KEY (g_id) 710 )"; 711 break; 712 } 713 714 $db->query($sql) or error('Impossible de créer la table '.$db_prefix.'groups. Veuillez vérifier vos réglages et essayer à nouveau.', __FILE__, __LINE__, $db->error()); 715 716 717 718 switch ($db_type) 719 { 720 case 'mysql': 721 case 'mysqli': 722 $sql = 'CREATE TABLE '.$db_prefix."online ( 723 user_id INT(10) UNSIGNED NOT NULL DEFAULT 1, 724 ident VARCHAR(200) NOT NULL DEFAULT '', 725 logged INT(10) UNSIGNED NOT NULL DEFAULT 0, 726 idle TINYINT(1) NOT NULL DEFAULT 0 727 ) TYPE=HEAP;"; 728 break; 729 730 case 'pgsql': 731 $sql = 'CREATE TABLE '.$db_prefix."online ( 732 user_id INT NOT NULL DEFAULT 1, 733 ident VARCHAR(200) NOT NULL DEFAULT '', 734 logged INT NOT NULL DEFAULT 0, 735 idle SMALLINT NOT NULL DEFAULT 0 736 )"; 737 break; 738 739 case 'sqlite': 740 $sql = 'CREATE TABLE '.$db_prefix."online ( 741 user_id INTEGER NOT NULL DEFAULT 1, 742 ident VARCHAR(200) NOT NULL DEFAULT '', 743 logged INTEGER NOT NULL DEFAULT 0, 744 idle INTEGER NOT NULL DEFAULT 0 745 )"; 746 break; 747 } 748 749 $db->query($sql) or error('Impossible de créer la table '.$db_prefix.'online. Veuillez vérifier vos réglages et essayer à nouveau.', __FILE__, __LINE__, $db->error()); 750 751 752 753 switch ($db_type) 754 { 755 case 'mysql': 756 case 'mysqli': 757 $sql = 'CREATE TABLE '.$db_prefix."posts ( 758 id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, 759 poster VARCHAR(200) NOT NULL DEFAULT '', 760 poster_id INT(10) UNSIGNED NOT NULL DEFAULT 1, 761 poster_ip VARCHAR(15), 762 poster_email VARCHAR(50), 763 message TEXT, 764 hide_smilies TINYINT(1) NOT NULL DEFAULT 0, 765 posted INT(10) UNSIGNED NOT NULL DEFAULT 0, 766 edited INT(10) UNSIGNED, 767 edited_by VARCHAR(200), 768 topic_id INT(10) UNSIGNED NOT NULL DEFAULT 0, 769 PRIMARY KEY (id) 770 ) TYPE=MyISAM;"; 771 break; 772 773 case 'pgsql': 774 $sql = 'CREATE TABLE '.$db_prefix."posts ( 775 id SERIAL, 776 poster VARCHAR(200) NOT NULL DEFAULT '', 777 poster_id INT NOT NULL DEFAULT 1, 778 poster_ip VARCHAR(15), 779 poster_email VARCHAR(50), 780 message TEXT, 781 hide_smilies SMALLINT NOT NULL DEFAULT 0, 782 posted INT NOT NULL DEFAULT 0, 783 edited INT, 784 edited_by VARCHAR(200), 785 topic_id INT NOT NULL DEFAULT 0, 786 PRIMARY KEY (id) 787 )"; 788 break; 789 790 case 'sqlite': 791 $sql = 'CREATE TABLE '.$db_prefix."posts ( 792 id INTEGER NOT NULL, 793 poster VARCHAR(200) NOT NULL DEFAULT '', 794 poster_id INTEGER NOT NULL DEFAULT 1, 795 poster_ip VARCHAR(15), 796 poster_email VARCHAR(50), 797 message TEXT, 798 hide_smilies INTEGER NOT NULL DEFAULT 0, 799 posted INTEGER NOT NULL DEFAULT 0, 800 edited INTEGER, 801 edited_by VARCHAR(200), 802 topic_id INTEGER NOT NULL DEFAULT 0, 803 PRIMARY KEY (id) 804 )"; 805 break; 806 } 807 808 $db->query($sql) or error('Impossible de créer la table '.$db_prefix.'posts. Veuillez vérifier vos réglages et essayer à nouveau.', __FILE__, __LINE__, $db->error()); 809 810 811 812 switch ($db_type) 813 { 814 case 'mysql': 815 case 'mysqli': 816 $sql = 'CREATE TABLE '.$db_prefix."ranks ( 817 id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, 818 rank VARCHAR(50) NOT NULL DEFAULT '', 819 min_posts MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT 0, 820 PRIMARY KEY (id) 821 ) TYPE=MyISAM;"; 822 break; 823 824 case 'pgsql': 825 $sql = 'CREATE TABLE '.$db_prefix."ranks ( 826 id SERIAL, 827 rank VARCHAR(50) NOT NULL DEFAULT '', 828 min_posts INT NOT NULL DEFAULT 0, 829 PRIMARY KEY (id) 830 )"; 831 break; 832 833 case 'sqlite': 834 $sql = 'CREATE TABLE '.$db_prefix."ranks ( 835 id INTEGER NOT NULL, 836 rank VARCHAR(50) NOT NULL DEFAULT '', 837 min_posts INTEGER NOT NULL DEFAULT 0, 838 PRIMARY KEY (id) 839 )"; 840 break; 841 } 842 843 $db->query($sql) or error('Impossible de créer la table '.$db_prefix.'titles. Veuillez vérifier vos réglages et essayer à nouveau.', __FILE__, __LINE__, $db->error()); 844 845 846 847 switch ($db_type) 848 { 849 case 'mysql': 850 case 'mysqli': 851 $sql = 'CREATE TABLE '.$db_prefix."reports ( 852 id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, 853 post_id INT(10) UNSIGNED NOT NULL DEFAULT 0, 854 topic_id INT(10) UNSIGNED NOT NULL DEFAULT 0, 855 forum_id INT(10) UNSIGNED NOT NULL DEFAULT 0, 856 reported_by INT(10) UNSIGNED NOT NULL DEFAULT 0, 857 created INT(10) UNSIGNED NOT NULL DEFAULT 0, 858 message TEXT, 859 zapped INT(10) UNSIGNED, 860 zapped_by INT(10) UNSIGNED, 861 PRIMARY KEY (id) 862 ) TYPE=MyISAM;"; 863 break; 864 865 case 'pgsql': 866 $sql = 'CREATE TABLE '.$db_prefix."reports ( 867 id SERIAL, 868 post_id INT NOT NULL DEFAULT 0, 869 topic_id INT NOT NULL DEFAULT 0, 870 forum_id INT NOT NULL DEFAULT 0, 871 reported_by INT NOT NULL DEFAULT 0, 872 created INT NOT NULL DEFAULT 0, 873 message TEXT, 874 zapped INT, 875 zapped_by INT, 876 PRIMARY KEY (id) 877 )"; 878 break; 879 880 case 'sqlite': 881 $sql = 'CREATE TABLE '.$db_prefix."reports ( 882 id INTEGER NOT NULL, 883 post_id INTEGER NOT NULL DEFAULT 0, 884 topic_id INTEGER NOT NULL DEFAULT 0, 885 forum_id INTEGER NOT NULL DEFAULT 0, 886 reported_by INTEGER NOT NULL DEFAULT 0, 887 created INTEGER NOT NULL DEFAULT 0, 888 message TEXT, 889 zapped INTEGER, 890 zapped_by INTEGER, 891 PRIMARY KEY (id) 892 )"; 893 break; 894 } 895 896 $db->query($sql) or error('Impossible de créer la table '.$db_prefix.'reports. Veuillez vérifier vos réglages et essayer à nouveau.', __FILE__, __LINE__, $db->error()); 897 898 899 900 switch ($db_type) 901 { 902 case 'mysql': 903 case 'mysqli': 904 $sql = 'CREATE TABLE '.$db_prefix."search_cache ( 905 id INT(10) UNSIGNED NOT NULL DEFAULT 0, 906 ident VARCHAR(200) NOT NULL DEFAULT '', 907 search_data TEXT, 908 PRIMARY KEY (id) 909 ) TYPE=MyISAM;"; 910 break; 911 912 case 'pgsql': 913 $sql = 'CREATE TABLE '.$db_prefix."search_cache ( 914 id INT NOT NULL DEFAULT 0, 915 ident VARCHAR(200) NOT NULL DEFAULT '', 916 search_data TEXT, 917 PRIMARY KEY (id) 918 )"; 919 break; 920 921 case 'sqlite': 922 $sql = 'CREATE TABLE '.$db_prefix."search_cache ( 923 id INTEGER NOT NULL DEFAULT 0, 924 ident VARCHAR(200) NOT NULL DEFAULT '', 925 search_data TEXT, 926 PRIMARY KEY (id) 927 )"; 928 break; 929 } 930 931 $db->query($sql) or error('Impossible de créer la table '.$db_prefix.'search_cache. Veuillez vérifier vos réglages et essayer à nouveau.', __FILE__, __LINE__, $db->error()); 932 933 934 935 switch ($db_type) 936 { 937 case 'mysql': 938 case 'mysqli': 939 $sql = 'CREATE TABLE '.$db_prefix."search_matches ( 940 post_id INT(10) UNSIGNED NOT NULL DEFAULT 0, 941 word_id MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT 0, 942 subject_match TINYINT(1) NOT NULL DEFAULT 0 943 ) TYPE=MyISAM;"; 944 break; 945 946 case 'pgsql': 947 $sql = 'CREATE TABLE '.$db_prefix."search_matches ( 948 post_id INT NOT NULL DEFAULT 0, 949 word_id INT NOT NULL DEFAULT 0, 950 subject_match SMALLINT NOT NULL DEFAULT 0 951 )"; 952 break; 953 954 case 'sqlite': 955 $sql = 'CREATE TABLE '.$db_prefix."search_matches ( 956 post_id INTEGER NOT NULL DEFAULT 0, 957 word_id INTEGER NOT NULL DEFAULT 0, 958 subject_match INTEGER NOT NULL DEFAULT 0 959 )"; 960 break; 961 } 962 963 $db->query($sql) or error('Impossible de créer la table '.$db_prefix.'search_matches. Veuillez vérifier vos réglages et essayer à nouveau.', __FILE__, __LINE__, $db->error()); 964 965 966 967 switch ($db_type) 968 { 969 case 'mysql': 970 case 'mysqli': 971 $sql = 'CREATE TABLE '.$db_prefix."search_words ( 972 id MEDIUMINT(8) UNSIGNED NOT NULL AUTO_INCREMENT, 973 word VARCHAR(20) BINARY NOT NULL DEFAULT '', 974 PRIMARY KEY (word), 975 KEY ".$db_prefix."search_words_id_idx (id) 976 ) TYPE=MyISAM;"; 977 break; 978 979 case 'pgsql': 980 $sql = 'CREATE TABLE '.$db_prefix."search_words ( 981 id SERIAL, 982 word VARCHAR(20) NOT NULL DEFAULT '', 983 PRIMARY KEY (word) 984 )"; 985 break; 986 987 case 'sqlite': 988 $sql = 'CREATE TABLE '.$db_prefix."search_words ( 989 id INTEGER NOT NULL, 990 word VARCHAR(20) NOT NULL DEFAULT '', 991 PRIMARY KEY (id), 992 UNIQUE (word) 993 )"; 994 break; 995 } 996 997 $db->query($sql) or error('Impossible de créer la table '.$db_prefix.'search_words. Veuillez vérifier vos réglages et essayer à nouveau.', __FILE__, __LINE__, $db->error()); 998 999 1000 1001 switch ($db_type) 1002 { 1003 case 'mysql': 1004 case 'mysqli': 1005 $sql = 'CREATE TABLE '.$db_prefix."subscriptions ( 1006 user_id INT(10) UNSIGNED NOT NULL DEFAULT 0, 1007 topic_id INT(10) UNSIGNED NOT NULL DEFAULT 0, 1008 PRIMARY KEY (user_id, topic_id) 1009 ) TYPE=MyISAM;"; 1010 break; 1011 1012 case 'pgsql': 1013 $sql = 'CREATE TABLE '.$db_prefix."subscriptions ( 1014 user_id INT NOT NULL DEFAULT 0, 1015 topic_id INT NOT NULL DEFAULT 0, 1016 PRIMARY KEY (user_id, topic_id) 1017 )"; 1018 break; 1019 1020 case 'sqlite': 1021 $sql = 'CREATE TABLE '.$db_prefix."subscriptions ( 1022 user_id INTEGER NOT NULL DEFAULT 0, 1023 topic_id INTEGER NOT NULL DEFAULT 0, 1024 PRIMARY KEY (user_id, topic_id) 1025 )"; 1026 break; 1027 } 1028 1029 $db->query($sql) or error('Impossible de créer la table '.$db_prefix.'subscriptions. Veuillez vérifier vos réglages et essayer à nouveau.', __FILE__, __LINE__, $db->error()); 1030 1031 1032 1033 switch ($db_type) 1034 { 1035 case 'mysql': 1036 case 'mysqli': 1037 $sql = 'CREATE TABLE '.$db_prefix."topics ( 1038 id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, 1039 poster VARCHAR(200) NOT NULL DEFAULT '', 1040 subject VARCHAR(255) NOT NULL DEFAULT '', 1041 posted INT(10) UNSIGNED NOT NULL DEFAULT 0, 1042 last_post INT(10) UNSIGNED NOT NULL DEFAULT 0, 1043 last_post_id INT(10) UNSIGNED NOT NULL DEFAULT 0, 1044 last_poster VARCHAR(200), 1045 num_views MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT 0, 1046 num_replies MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT 0, 1047 closed TINYINT(1) NOT NULL DEFAULT 0, 1048 sticky TINYINT(1) NOT NULL DEFAULT 0, 1049 moved_to INT(10) UNSIGNED, 1050 forum_id INT(10) UNSIGNED NOT NULL DEFAULT 0, 1051 PRIMARY KEY (id) 1052 ) TYPE=MyISAM;"; 1053 break; 1054 1055 case 'pgsql': 1056 $sql = 'CREATE TABLE '.$db_prefix."topics ( 1057 id SERIAL, 1058 poster VARCHAR(200) NOT NULL DEFAULT '', 1059 subject VARCHAR(255) NOT NULL DEFAULT '', 1060 posted INT NOT NULL DEFAULT 0, 1061 last_post INT NOT NULL DEFAULT 0, 1062 last_post_id INT NOT NULL DEFAULT 0, 1063 last_poster VARCHAR(200), 1064 num_views INT NOT NULL DEFAULT 0, 1065 num_replies INT NOT NULL DEFAULT 0, 1066 closed SMALLINT NOT NULL DEFAULT 0, 1067 sticky SMALLINT NOT NULL DEFAULT 0, 1068 moved_to INT, 1069 forum_id INT NOT NULL DEFAULT 0, 1070 PRIMARY KEY (id) 1071 )"; 1072 break; 1073 1074 case 'sqlite': 1075 $sql = 'CREATE TABLE '.$db_prefix."topics ( 1076 id INTEGER NOT NULL, 1077 poster VARCHAR(200) NOT NULL DEFAULT '', 1078 subject VARCHAR(255) NOT NULL DEFAULT '', 1079 posted INTEGER NOT NULL DEFAULT 0, 1080 last_post INTEGER NOT NULL DEFAULT 0, 1081 last_post_id INTEGER NOT NULL DEFAULT 0, 1082 last_poster VARCHAR(200), 1083 num_views INTEGER NOT NULL DEFAULT 0, 1084 num_replies INTEGER NOT NULL DEFAULT 0, 1085 closed INTEGER NOT NULL DEFAULT 0, 1086 sticky INTEGER NOT NULL DEFAULT 0, 1087 moved_to INTEGER, 1088 forum_id INTEGER NOT NULL DEFAULT 0, 1089 PRIMARY KEY (id) 1090 )"; 1091 break; 1092 } 1093 1094 $db->query($sql) or error('Impossible de créer la table '.$db_prefix.'topics. Veuillez vérifier vos réglages et essayer à nouveau.', __FILE__, __LINE__, $db->error()); 1095 1096 1097 1098 switch ($db_type) 1099 { 1100 case 'mysql': 1101 case 'mysqli': 1102 $sql = 'CREATE TABLE '.$db_prefix."users ( 1103 id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, 1104 group_id INT(10) UNSIGNED NOT NULL DEFAULT 4, 1105 username VARCHAR(200) NOT NULL DEFAULT '', 1106 password VARCHAR(40) NOT NULL DEFAULT '', 1107 email VARCHAR(50) NOT NULL DEFAULT '', 1108 title VARCHAR(50), 1109 realname VARCHAR(40), 1110 url VARCHAR(100), 1111 jabber VARCHAR(75), 1112 icq VARCHAR(12), 1113 msn VARCHAR(50), 1114 aim VARCHAR(30), 1115 yahoo VARCHAR(30), 1116 location VARCHAR(30), 1117 use_avatar TINYINT(1) NOT NULL DEFAULT 0, 1118 signature TEXT, 1119 disp_topics TINYINT(3) UNSIGNED, 1120 disp_posts TINYINT(3) UNSIGNED, 1121 email_setting TINYINT(1) NOT NULL DEFAULT 1, 1122 save_pass TINYINT(1) NOT NULL DEFAULT 1, 1123 notify_with_post TINYINT(1) NOT NULL DEFAULT 0, 1124 show_smilies TINYINT(1) NOT NULL DEFAULT 1, 1125 show_img TINYINT(1) NOT NULL DEFAULT 1, 1126 show_img_sig TINYINT(1) NOT NULL DEFAULT 1, 1127 show_avatars TINYINT(1) NOT NULL DEFAULT 1, 1128 show_sig TINYINT(1) NOT NULL DEFAULT 1, 1129 timezone FLOAT NOT NULL DEFAULT 0, 1130 language VARCHAR(25) NOT NULL DEFAULT 'English', 1131 style VARCHAR(25) NOT NULL DEFAULT 'Oxygen', 1132 num_posts INT(10) UNSIGNED NOT NULL DEFAULT 0, 1133 last_post INT(10) UNSIGNED, 1134 registered INT(10) UNSIGNED NOT NULL DEFAULT 0, 1135 registration_ip VARCHAR(15) NOT NULL DEFAULT '0.0.0.0', 1136 last_visit INT(10) UNSIGNED NOT NULL DEFAULT 0, 1137 admin_note VARCHAR(30), 1138 activate_string VARCHAR(50), 1139 activate_key VARCHAR(8), 1140 PRIMARY KEY (id) 1141 ) TYPE=MyISAM;"; 1142 break; 1143 1144 case 'pgsql': 1145 $sql = 'CREATE TABLE '.$db_prefix."users ( 1146 id SERIAL, 1147 group_id INT NOT NULL DEFAULT 4, 1148 username VARCHAR(200) NOT NULL DEFAULT '', 1149 password VARCHAR(40) NOT NULL DEFAULT '', 1150 email VARCHAR(50) NOT NULL DEFAULT '', 1151 title VARCHAR(50), 1152 realname VARCHAR(40), 1153 url VARCHAR(100), 1154 jabber VARCHAR(75), 1155 icq VARCHAR(12), 1156 msn VARCHAR(50), 1157 aim VARCHAR(30), 1158 yahoo VARCHAR(30), 1159 location VARCHAR(30), 1160 use_avatar SMALLINT NOT NULL DEFAULT 0, 1161 signature TEXT, 1162 disp_topics SMALLINT, 1163 disp_posts SMALLINT, 1164 email_setting SMALLINT NOT NULL DEFAULT 1, 1165 save_pass SMALLINT NOT NULL DEFAULT 1, 1166 notify_with_post SMALLINT NOT NULL DEFAULT 0, 1167 show_smilies SMALLINT NOT NULL DEFAULT 1, 1168 show_img SMALLINT NOT NULL DEFAULT 1, 1169 show_img_sig SMALLINT NOT NULL DEFAULT 1, 1170 show_avatars SMALLINT NOT NULL DEFAULT 1, 1171 show_sig SMALLINT NOT NULL DEFAULT 1, 1172 timezone REAL NOT NULL DEFAULT 0, 1173 language VARCHAR(25) NOT NULL DEFAULT 'English', 1174 style VARCHAR(25) NOT NULL DEFAULT 'Oxygen', 1175 num_posts INT NOT NULL DEFAULT 0, 1176 last_post INT, 1177 registered INT NOT NULL DEFAULT 0, 1178 registration_ip VARCHAR(15) NOT NULL DEFAULT '0.0.0.0', 1179 last_visit INT NOT NULL DEFAULT 0, 1180 admin_note VARCHAR(30), 1181 activate_string VARCHAR(50), 1182 activate_key VARCHAR(8), 1183 PRIMARY KEY (id) 1184 )"; 1185 break; 1186 1187 case 'sqlite': 1188 $sql = 'CREATE TABLE '.$db_prefix."users ( 1189 id INTEGER NOT NULL, 1190 group_id INTEGER NOT NULL DEFAULT 4, 1191 username VARCHAR(200) NOT NULL DEFAULT '', 1192 password VARCHAR(40) NOT NULL DEFAULT '', 1193 email VARCHAR(50) NOT NULL DEFAULT '', 1194 title VARCHAR(50), 1195 realname VARCHAR(40), 1196 url VARCHAR(100), 1197 jabber VARCHAR(75), 1198 icq VARCHAR(12), 1199 msn VARCHAR(50), 1200 aim VARCHAR(30), 1201 yahoo VARCHAR(30), 1202 location VARCHAR(30), 1203 use_avatar INTEGER NOT NULL DEFAULT 0, 1204 signature TEXT, 1205 disp_topics INTEGER, 1206 disp_posts INTEGER, 1207 email_setting INTEGER NOT NULL DEFAULT 1, 1208 save_pass INTEGER NOT NULL DEFAULT 1, 1209 notify_with_post INTEGER NOT NULL DEFAULT 0, 1210 show_smilies INTEGER NOT NULL DEFAULT 1, 1211 show_img INTEGER NOT NULL DEFAULT 1, 1212 show_img_sig INTEGER NOT NULL DEFAULT 1, 1213 show_avatars INTEGER NOT NULL DEFAULT 1, 1214 show_sig INTEGER NOT NULL DEFAULT 1, 1215 timezone FLOAT NOT NULL DEFAULT 0, 1216 language VARCHAR(25) NOT NULL DEFAULT 'English', 1217 style VARCHAR(25) NOT NULL DEFAULT 'Oxygen', 1218 num_posts INTEGER NOT NULL DEFAULT 0, 1219 last_post INTEGER, 1220 registered INTEGER NOT NULL DEFAULT 0, 1221 registration_ip VARCHAR(15) NOT NULL DEFAULT '0.0.0.0', 1222 last_visit INTEGER NOT NULL DEFAULT 0, 1223 admin_note VARCHAR(30), 1224 activate_string VARCHAR(50), 1225 activate_key VARCHAR(8), 1226 PRIMARY KEY (id) 1227 )"; 1228 break; 1229 } 1230 1231 $db->query($sql) or error('Impossible de créer la table '.$db_prefix.'users. Veuillez vérifier vos réglages et essayer à nouveau.', __FILE__, __LINE__, $db->error()); 1232 1233 1234 // Add some indexes 1235 switch ($db_type) 1236 { 1237 case 'mysql': 1238 case 'mysqli': 1239 // We use MySQL's ALTER TABLE ... ADD INDEX syntax instead of CREATE INDEX to avoid problems with users lacking the INDEX privilege 1240 $queries[] = 'ALTER TABLE '.$db_prefix.'online ADD UNIQUE INDEX '.$db_prefix.'online_user_id_ident_idx(user_id,ident)'; 1241 $queries[] = 'ALTER TABLE '.$db_prefix.'online ADD INDEX '.$db_prefix.'online_user_id_idx(user_id)'; 1242 $queries[] = 'ALTER TABLE '.$db_prefix.'posts ADD INDEX '.$db_prefix.'posts_topic_id_idx(topic_id)'; 1243 $queries[] = 'ALTER TABLE '.$db_prefix.'posts ADD INDEX '.$db_prefix.'posts_multi_idx(poster_id, topic_id)'; 1244 $queries[] = 'ALTER TABLE '.$db_prefix.'reports ADD INDEX '.$db_prefix.'reports_zapped_idx(zapped)'; 1245 $queries[] = 'ALTER TABLE '.$db_prefix.'search_matches ADD INDEX '.$db_prefix.'search_matches_word_id_idx(word_id)'; 1246 $queries[] = 'ALTER TABLE '.$db_prefix.'search_matches ADD INDEX '.$db_prefix.'search_matches_post_id_idx(post_id)'; 1247 $queries[] = 'ALTER TABLE '.$db_prefix.'topics ADD INDEX '.$db_prefix.'topics_forum_id_idx(forum_id)'; 1248 $queries[] = 'ALTER TABLE '.$db_prefix.'topics ADD INDEX '.$db_prefix.'topics_moved_to_idx(moved_to)'; 1249 $queries[] = 'ALTER TABLE '.$db_prefix.'users ADD INDEX '.$db_prefix.'users_registered_idx(registered)'; 1250 $queries[] = 'ALTER TABLE '.$db_prefix.'search_cache ADD INDEX '.$db_prefix.'search_cache_ident_idx(ident(8))'; 1251 $queries[] = 'ALTER TABLE '.$db_prefix.'users ADD INDEX '.$db_prefix.'users_username_idx(username(8))'; 1252 break; 1253 1254 default: 1255 $queries[] = 'CREATE INDEX '.$db_prefix.'online_user_id_idx ON '.$db_prefix.'online(user_id)'; 1256 $queries[] = 'CREATE INDEX '.$db_prefix.'posts_topic_id_idx ON '.$db_prefix.'posts(topic_id)'; 1257 $queries[] = 'CREATE INDEX '.$db_prefix.'posts_multi_idx ON '.$db_prefix.'posts(poster_id, topic_id)'; 1258 $queries[] = 'CREATE INDEX '.$db_prefix.'reports_zapped_idx ON '.$db_prefix.'reports(zapped)'; 1259 $queries[] = 'CREATE INDEX '.$db_prefix.'search_matches_word_id_idx ON '.$db_prefix.'search_matches(word_id)'; 1260 $queries[] = 'CREATE INDEX '.$db_prefix.'search_matches_post_id_idx ON '.$db_prefix.'search_matches(post_id)'; 1261 $queries[] = 'CREATE INDEX '.$db_prefix.'topics_forum_id_idx ON '.$db_prefix.'topics(forum_id)'; 1262 $queries[] = 'CREATE INDEX '.$db_prefix.'topics_moved_to_idx ON '.$db_prefix.'topics(moved_to)'; 1263 $queries[] = 'CREATE INDEX '.$db_prefix.'users_registered_idx ON '.$db_prefix.'users(registered)'; 1264 $queries[] = 'CREATE INDEX '.$db_prefix.'users_username_idx ON '.$db_prefix.'users(username)'; 1265 $queries[] = 'CREATE INDEX '.$db_prefix.'search_cache_ident_idx ON '.$db_prefix.'search_cache(ident)'; 1266 $queries[] = 'CREATE INDEX '.$db_prefix.'search_words_id_idx ON '.$db_prefix.'search_words(id)'; 1267 break; 1268 } 1269 1270 @reset($queries); 1271 while (list(, $sql) = @each($queries)) 1272 $db->query($sql) or error('Impossible de créer les index. Veuillez vérifier vos réglages et essayer à nouveau.', __FILE__, __LINE__, $db->error()); 1273 1274 1275 1276 $now = time(); 1277 1278 // Insert the four preset groups 1279 $db->query('INSERT INTO '.$db->prefix."groups (g_title, g_user_title, g_read_board, g_post_replies, g_post_topics, g_post_polls, g_edit_posts, g_delete_posts, g_delete_topics, g_set_title, g_search, g_search_users, g_edit_subjects_interval, g_post_flood, g_search_flood) VALUES('Administrateurs', 'Administrateur', 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0)") or error('Impossible d\ajouter un groupe', __FILE__, __LINE__, $db->error()); 1280 $db->query('INSERT INTO '.$db->prefix."groups (g_title, g_user_title, g_read_board, g_post_replies, g_post_topics, g_post_polls, g_edit_posts, g_delete_posts, g_delete_topics, g_set_title, g_search, g_search_users, g_edit_subjects_interval, g_post_flood, g_search_flood) VALUES('Modérateurs', 'Modérateur', 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0)") or error('Impossible d\ajouter un groupe', __FILE__, __LINE__, $db->error()); 1281 $db->query('INSERT INTO '.$db->prefix."groups (g_title, g_user_title, g_read_board, g_post_replies, g_post_topics, g_post_polls, g_edit_posts, g_delete_posts, g_delete_topics, g_set_title, g_search, g_search_users, g_edit_subjects_interval, g_post_flood, g_search_flood) VALUES('Invités', NULL, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0)") or error('Impossible d\ajouter un groupe', __FILE__, __LINE__, $db->error()); 1282 $db->query('INSERT INTO '.$db->prefix."groups (g_title, g_user_title, g_read_board, g_post_replies, g_post_topics, g_post_polls, g_edit_posts, g_delete_posts, g_delete_topics, g_set_title, g_search, g_search_users, g_edit_subjects_interval, g_post_flood, g_search_flood) VALUES('Membres', NULL, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 300, 60, 30)") or error('Impossible d\ajouter un groupe', __FILE__, __LINE__, $db->error()); 1283 1284 // Insert guest and first admin user 1285 $db->query('INSERT INTO '.$db_prefix."users (group_id, username, password, email) VALUES(3, 'Invité', 'Invité', 'Invité')") 1286 or error('Impossible d\'ajouter l\'utilisateur "invité". Veuillez vérifier vos réglages et essayer à nouveau.'); 1287 1288 $db->query('INSERT INTO '.$db_prefix."users (group_id, username, password, email, num_posts, last_post, registered, registration_ip, last_visit, language) VALUES(1, '".$db->escape($username)."', '".pun_hash($password1)."', '$email', 1, ".$now.", ".$now.", '127.0.0.1', ".$now.", 'French')") 1289 or error('Impossible d\'ajouter le compte administrateur. Veuillez vérifier vos réglages et essayer à nouveau.'); 1290 1291 // Insert config data 1292 $config = array( 1293 'o_cur_version' => "'$punbb_version'", 1294 'o_cur_version_fr' => "'$punbb_version_fr'", 1295 'o_board_title' => "'Mon forum PunBB'", 1296 'o_board_desc' => "'Malheureusement personne ne peut vous dire ce que PunBB est - vous devez le voir par vous-même.'", 1297 'o_server_timezone' => "'0'", 1298 'o_time_format' => "'H:i:s'", 1299 'o_date_format' => "'d-m-Y'", 1300 'o_timeout_visit' => "'600'", 1301 'o_timeout_online' => "'300'", 1302 'o_redirect_delay' => "'1'", 1303 'o_show_version' => "'0'", 1304 'o_show_user_info' => "'1'", 1305 'o_show_post_count' => "'1'", 1306 'o_smilies' => "'1'", 1307 'o_smilies_sig' => "'1'", 1308 'o_make_links' => "'1'", 1309 'o_default_lang' => "'French'", 1310 'o_default_style' => "'Oxygen'", 1311 'o_default_user_group' => "'4'", 1312 'o_topic_review' => "'15'", 1313 'o_disp_topics_default' => "'30'", 1314 'o_disp_posts_default' => "'25'", 1315 'o_indent_num_spaces' => "'4'", 1316 'o_quickpost' => "'1'", 1317 'o_users_online' => "'1'", 1318 'o_censoring' => "'0'", 1319 'o_ranks' => "'1'", 1320 'o_show_dot' => "'0'", 1321 'o_quickjump' => "'1'", 1322 'o_gzip' => "'0'", 1323 'o_additional_navlinks' => "''", 1324 'o_report_method' => "'0'", 1325 'o_regs_report' => "'0'", 1326 'o_mailing_list' => "'$email'", 1327 'o_avatars' => "'1'", 1328 'o_avatars_dir' => "'img/avatars'", 1329 'o_avatars_width' => "'60'", 1330 'o_avatars_height' => "'60'", 1331 'o_avatars_size' => "'10240'", 1332 'o_search_all_forums' => "'1'", 1333 'o_base_url' => "'$base_url'", 1334 'o_admin_email' => "'$email'", 1335 'o_webmaster_email' => "'$email'", 1336 'o_subscriptions' => "'1'", 1337 'o_smtp_host' => "NULL", 1338 'o_smtp_user' => "NULL", 1339 'o_smtp_pass' => "NULL", 1340 'o_regs_allow' => "'1'", 1341 'o_regs_verify' => "'0'", 1342 'o_announcement' => "'0'", 1343 'o_announcement_message' => "'Saisissez votre annonce ici.'", 1344 'o_rules' => "'0'", 1345 'o_rules_message' => "'Saisissez vos règles ici.'", 1346 'o_maintenance' => "'0'", 1347 'o_maintenance_message' => "'Les forums sont temporairement fermés pour des raisons de maintenance. Veuillez essayer à nouveau dans quelques minutes.<br />\\n<br />\\n/Administrateur'", 1348 'p_mod_edit_users' => "'1'", 1349 'p_mod_rename_users' => "'0'", 1350 'p_mod_change_passwords' => "'0'", 1351 'p_mod_ban_users' => "'0'", 1352 'p_message_bbcode' => "'1'", 1353 'p_message_img_tag' => "'1'", 1354 'p_message_all_caps' => "'1'", 1355 'p_subject_all_caps' => "'1'", 1356 'p_sig_all_caps' => "'1'", 1357 'p_sig_bbcode' => "'1'", 1358 'p_sig_img_tag' => "'0'", 1359 'p_sig_length' => "'400'", 1360 'p_sig_lines' => "'4'", 1361 'p_allow_banned_email' => "'1'", 1362 'p_allow_dupe_email' => "'0'", 1363 'p_force_guest_email' => "'1'" 1364 ); 1365 1366 while (list($conf_name, $conf_value) = @each($config)) 1367 { 1368 $db->query('INSERT INTO '.$db_prefix."config (conf_name, conf_value) VALUES('$conf_name', $conf_value)") 1369 or error('Impossible d\'insérer dans la table '.$db_prefix.'config. Veuillez vérifier votre configuration et essayez à nouveau.'); 1370 } 1371 1372 // Insert some other default data 1373 $db->query('INSERT INTO '.$db_prefix."categories (cat_name, disp_position) VALUES('Catégorie test', 1)") 1374 or error('Impossible d\'insérer dans la table '.$db_prefix.'categories. Veuillez vérifier votre configuration et essayez à nouveau.'); 1375 1376 $db->query('INSERT INTO '.$db_prefix."forums (forum_name, forum_desc, num_topics, num_posts, last_post, last_post_id, last_poster, disp_position, cat_id) VALUES('Forum test', 'Ceci est juste un forum de test.', 1, 1, ".$now.", 1, '".$db->escape($username)."', 1, 1)") 1377 or error('Impossible d\'insérer dans la table '.$db_prefix.'forums. Veuillez vérifier votre configuration et essayez à nouveau.'); 1378 1379 $db->query('INSERT INTO '.$db_prefix."topics (poster, subject, posted, last_post, last_post_id, last_poster, forum_id) VALUES('".$db->escape($username)."', 'Message de test', ".$now.", ".$now.", 1, '".$db->escape($username)."', 1)") 1380 or error('Impossible d\'insérer dans la table '.$db_prefix.'topics. Veuillez vérifier votre configuration et essayez à nouveau.'); 1381 1382 $db->query('INSERT INTO '.$db_prefix."posts (poster, poster_id, poster_ip, message, posted, topic_id) VALUES('".$db->escape($username)."', 2, '127.0.0.1', 'Si vous lisez ceci (et je devine que vous êtes évidement en train de le faire), votre installation de PunBB semble avoir fonctionné ! Maintenant identifiez-vous et rendez-vous sur le panneau de contrôle administration pour configurer vos forums.', ".$now.", 1)") 1383 or error('Impossible d\'insérer dans la table '.$db_prefix.'posts. Veuillez vérifier votre configuration et essayez à nouveau.'); 1384 1385 $db->query('INSERT INTO '.$db_prefix."ranks (rank, min_posts) VALUES('Nouveau membre', 0)") 1386 or error('Impossible d\'insérer dans la table '.$db_prefix.'ranks. Veuillez vérifier votre configuration et essayez à nouveau.'); 1387 1388 $db->query('INSERT INTO '.$db_prefix."ranks (rank, min_posts) VALUES('Membre', 10)") 1389 or error('Impossible d\'insérer dans la table '.$db_prefix.'ranks. Veuillez vérifier votre configuration et essayez à nouveau.'); 1390 1391 1392 if ($db_type == 'pgsql' || $db_type == 'sqlite') 1393 $db->end_transaction(); 1394 1395 1396 1397 $alerts = ''; 1398 // Check if the cache directory is writable 1399 if (!@is_writable('./cache/')) 1400 $alerts .= '<p style="font-size: 1.1em"><span style="color: #C03000"><strong>Le répertoire du cache n\'est actuellement pas accessible en écriture !</strong></span> Afin que PunBB fonctionne corretement, le répertoire nommé <em>cache</em> doit être inscriptible par PHP. Effectuez un chmod pour régler les permissions appropriées à ce répertoire. Si vous avez un doute, chmod 0777.</p>'; 1401 1402 // Check if default avatar directory is writable 1403 if (!@is_writable('./img/avatars/')) 1404 $alerts .= '<p style="font-size: 1.1em"><span style="color: #C03000"><strong>Le répertoire des avatars n\'est actuellement pas accessible en écriture !</strong></span> Si vous voulez que les utilisateurs puissent envoyer sur le serveur leur propres avatars vous devez régler les permissions du dossier <em>img/avatars</em> pour que PHP puisse écrire dedans. Effectuez un chmod pour régler les permissions appropriées à ce répertoire. Si vous avez un doute, chmod 0777.</p>'; 1405 1406 1407 /// Display config.php and give further instructions 1408 $config = '<?php'."\n\n".'$db_type = \''.$db_type."';\n".'$db_host = \''.$db_host."';\n".'$db_name = \''.$db_name."';\n".'$db_username = \''.$db_username."';\n".'$db_password = \''.$db_password."';\n".'$db_prefix = \''.$db_prefix."';\n".'$p_connect = false;'."\n\n".'$cookie_name = '."'punbb_cookie';\n".'$cookie_domain = '."'';\n".'$cookie_path = '."'/';\n".'$cookie_secure = 0;'."\n".'$cookie_seed = \''.substr(md5(time()), -8)."';\n\ndefine('PUN', 1);"; 1409 1410 1411 ?> 1412 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 1413 1414 <html> 1415 <head> 1416 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 1417 <title>Installation de PunBB</title> 1418 <link rel="stylesheet" type="text/css" href="style/Oxygen.css" /> 1419 </head> 1420 <body> 1421 1422 <div id="puninstall" style="margin: auto 10% auto 10%"> 1423 <div class="pun"> 1424 1425 <div class="blockform"> 1426 <h2>Instructions finales</h2> 1427 <div class="box"> 1428 <div class="fakeform"> 1429 <div class="inform"> 1430 <div class="forminfo"> 1431 <p>Afin de terminer l'installation tout ce que vous avez à faire est de <strong>copier et coller le texte de la boite ci-dessous dans un fichier que vous nommerez <em>config.php</em> et qu'ensuite vous enverrez sur votre serveur dans le répertoire racine de votre installation de PunBB</strong>. Assurez-vous qu'il n'y a aucun saut de ligne ou d'espace avant <?php et après ?> dans ce fichier. Vous pourrez par la suite modifier config.php si vous reconfigurez votre installation (ex. modification du mot de passe base de donnés ... ).</p> 1432 <?php if ($alerts != ''): ?> <?php echo $alerts."\n" ?> 1433 <?php endif; ?> </div> 1434 <fieldset> 1435 <legend>Copiez ce contenu dans config.php</legend> 1436 <div class="infldset"> 1437 <textarea cols="80" rows="20"><?php echo htmlspecialchars($config) ?></textarea> 1438 </div> 1439 </fieldset> 1440 </div> 1441 <div class="inform"> 1442 <div class="forminfo"> 1443 <p>Une fois que vous aurez créé config.php avec le contenu ci-dessus, PunBB sera installé !</p> 1444 <p><a href="index.php">Aller à l'index des forums</a></p> 1445 </div> 1446 </div> 1447 </div> 1448 </div> 1449 </div> 1450 1451 </div> 1452 </div> 1453 1454 </body> 1455 </html> 1456 <?php 1457 1458 }
titre
Description
Corps
titre
Description
Corps
titre
Description
Corps
titre
Corps
Généré le : Sat Nov 24 22:44:38 2007 | par Balluche grâce à PHPXref 0.7 |
![]() |