webmaster@70: Get('postBack', 'POST', false); webmaster@70: $canWrite = is_writable('includes'); webmaster@70: if(file_exists('includes/config.php')) webmaster@70: { webmaster@70: $tpl = '

Un fichier de configuration a déja été crée. Par mesure webmaster@70: de sécurité, il est necessaire de supprimer manuellement ce fichier webmaster@70: avant de pouvoir tenter une nouvelle installation

'; webmaster@70: } webmaster@70: else if($pB) webmaster@70: { webmaster@70: // 1. Vérification des identifiants MySQL, création des tables webmaster@70: $db_host = $req->Get('db_host'); webmaster@70: $db_user = $req->Get('db_user'); webmaster@70: $db_pass = $req->Get('db_pass'); webmaster@70: $db_db = $req->Get('db_db'); webmaster@70: $myDB = new DataAccess($db_host, $db_user, $db_pass, $db_db); webmaster@70: if($myDB->isInError()) webmaster@70: { webmaster@70: if($myDB->link === false) webmaster@70: $erreur = "Le triplet (hôte, identifiant, mot de passe) est erroné)"; webmaster@70: else webmaster@70: $erreur = "La base de données mentionné n'existe pas"; webmaster@70: webmaster@70: $tpl = $erreur; webmaster@70: } webmaster@70: else webmaster@70: { webmaster@70: // Requete de créations des 5 tables. webmaster@70: $myDB->Query("CREATE TABLE Brouillons( webmaster@70: id_brouillon INTEGER NOT NULL auto_increment, webmaster@70: Titre VARCHAR(70), webmaster@70: Contenu TEXT, webmaster@70: PRIMARY KEY (id_brouillon) webmaster@70: )"); webmaster@70: $myDB->Query("CREATE TABLE `Commentaires` ( webmaster@70: `num_comm` int(11) NOT NULL auto_increment, webmaster@70: `MessId` int(11) NOT NULL default '0', webmaster@70: `Auteur` varchar(60) NOT NULL default '', webmaster@70: `Adresse` varchar(150) NOT NULL default '', webmaster@70: `AdresseMail` varchar(60) default NULL, webmaster@70: `Comment` mediumtext NOT NULL, webmaster@70: `DateComment` datetime default '0000-00-00 00:00:00', webmaster@70: `isTrackback` tinyint(4) NOT NULL default '0', webmaster@70: `ip` varchar(25) NOT NULL default '', webmaster@70: `Visible` tinyint(4) NOT NULL default '1', webmaster@70: PRIMARY KEY (`num_comm`), webmaster@70: KEY `Visible` (`Visible`), webmaster@70: KEY `Parent` (`MessId`) webmaster@70: )"); webmaster@70: $myDB->Query("CREATE TABLE `Mess` ( webmaster@70: `num_mess` int(11) NOT NULL auto_increment, webmaster@70: `Titre` varchar(70) NOT NULL default '', webmaster@70: `DatePost` datetime NOT NULL default '0000-00-00 00:00:00', webmaster@70: `num_version` varchar(30) NOT NULL default '0', webmaster@70: `NbCommentaires` smallint(6) NOT NULL default '0', webmaster@70: `Message` longtext NOT NULL, webmaster@70: `CommentOpen` tinyint(1) NOT NULL default '0', webmaster@70: `Emot` varchar(20) default NULL, webmaster@70: PRIMARY KEY (`num_mess`) webmaster@70: )"); webmaster@70: $myDB->Query("CREATE TABLE `Tags` ( webmaster@70: `idTag` int(11) NOT NULL auto_increment, webmaster@70: `Tag` varchar(25) NOT NULL default '', webmaster@70: PRIMARY KEY (`idTag`), webmaster@70: KEY `Tag` (`Tag`) webmaster@70: )"); webmaster@70: $myDB->Query("CREATE TABLE `Lien_Tags_Posts` ( webmaster@70: `idLien` int(11) NOT NULL auto_increment, webmaster@70: `idTag` int(11) NOT NULL default '0', webmaster@70: `idMess` int(11) NOT NULL default '0', webmaster@70: PRIMARY KEY (`idLien`), webmaster@70: KEY `idTag` (`idTag`), webmaster@70: KEY `idMess` (`idMess`) webmaster@70: )"); webmaster@70: $tpl = "Yoopii tout bon au niveau de la base de données :-)"; webmaster@70: webmaster@70: // On va maintenant obtenir quelques renseignements supplémentaires webmaster@70: // pour finaliser le fichier de configuration webmaster@70: $akismet = $req->Get('akismet'); webmaster@70: $mail = $req->Get('mail'); webmaster@70: $dg = $req->Get('default_gravatar'); webmaster@70: $blog_url = $req->Get('blog_url'); webmaster@70: $conf = webmaster@70: " webmaster@70: "; webmaster@70: } webmaster@70: webmaster@70: if(!isset($erreur)) webmaster@70: { webmaster@70: if($canWrite) webmaster@70: { webmaster@70: file_put_contents('includes/config.php', $conf); webmaster@70: } webmaster@70: else webmaster@70: { webmaster@70: $tpl = " webmaster@70:

Ce script ne peut pas écrire dans votre dossier includes/. webmaster@70: Par conséquent, il vous faudra de vous même y créer un fichier webmaster@70: nommé config.php et y copier les lignes webmaster@70: suivantes:

webmaster@70:
" . $conf . "
"; webmaster@70: } webmaster@70: } webmaster@70: webmaster@70: //3. Génération du fichier .htpass webmaster@70: $login = $req->Get('login'); webmaster@70: $password = $req->Get('password'); webmaster@70: system("htpasswd -cbm .htpass '$login' '$password'"); webmaster@70: } webmaster@70: else webmaster@70: { webmaster@70: $url = "http://" . $_SERVER['SERVER_NAME'] . dirname($_SERVER['REQUEST_URI']); webmaster@70: $tpl = new Template('install_form.xml'); webmaster@70: $tpl->setParams(array('#url@value' => $url)); webmaster@70: } webmaster@70: header('Content-Type: text/html; charset=utf-8'); webmaster@70: ?> webmaster@70: webmaster@70: webmaster@70: webmaster@70: Installation webmaster@70: webmaster@70: webmaster@70: webmaster@70:

Installation de votre weblog

webmaster@70: webmaster@70: webmaster@70: