Voilà je suis en train de créer un script d'install automatique d'un de mes scripts.
Et la c'est le bug il se connect bien à ma base de donnée mais il n'arrive pas a créer les tables.
Voici mon script:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
<head>
<title>Installation du script.</title>
<meta http-equiv="Content-Type" content="text/xhtml; charset=iso-8859-1" />
<meta name="robots" content="no" />
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="corps" align="center">
<table border="0" align="center" width="100%">
<tr>
<td><h3>Installation du script</h3></td>
</tr>
</table>
<table border="0" align="center" width="100%">
<tr>
<td>
<?php
if( isset($_POST['envoi'])) {
extract ($_POST);
///////////////////////////////////////////// Sécurisation des données /////////////////////////////////////////
$serveur = (!get_magic_quotes_gpc()) ? addslashes($serveur) : $serveur;
$utilisateur = (!get_magic_quotes_gpc()) ? addslashes($utilisateur) : $utilisateur;
$passe = (!get_magic_quotes_gpc()) ? addslashes($passe) : $passe;
$base = (!get_magic_quotes_gpc()) ? addslashes($base) : $base;
$prefix = (!get_magic_quotes_gpc()) ? addslashes($prefix) : $prefix;
$email = (!get_magic_quotes_gpc()) ? addslashes($email) : $email;
$nom = (!get_magic_quotes_gpc()) ? addslashes($nom) : $nom;
$adresse = (!get_magic_quotes_gpc()) ? addslashes($adresse) : $adresse;
$description = (!get_magic_quotes_gpc()) ? addslashes($description) : $description;
$cles = (!get_magic_quotes_gpc()) ? addslashes($cles) : $cles;
$date = date("Y-m-d"); //Date du jour
$heure = date("H:i"); //Date du jour
///////////////////////////////////////////// Connection à la base /////////////////////////////////////////
if(!mysql_connect($serveur, $utilisateur, $passe)) {
echo'<span style="color:#d00000">Impossible de se connecter la base.</span>';
exit;
}
elseif(mysql_connect($serveur, $utilisateur, $passe))
echo'<span style="color:#009800">Connexion la base de données réussie.</span><br />';
if(!mysql_select_db($base, mysql_connect($serveur, $utilisateur, $passe))) {
if(mysql_query("CREATE DATABASE $base"))
echo'<span style="color:#009800">La base ', $base ,' n\'existait pas, elle à été crée.</span><br />';
else {
echo'<span style="color:#d00000">La base ', $base ,' n\'existe pas et elle n\'a pas pu être crée.</span>';
exit;
}
}
///////////////////////////////////////////// Création des tables /////////////////////////////////////////
if(mysql_select_db($base, mysql_connect($serveur, $utilisateur, $passe)))
echo'<span style="color:#009800">Connexion la base ', $base ,' tablie.</span><br />';
//
/// Création de la table blog
//
if(!mysql_query("
CREATE TABLE `". $prefix ."_blog` (
`id` int(11) NOT NULL auto_increment,
`titre` vachar(255) NOT NULL,
`texte` text NOT NULL,
`date` date NOT NULL default '0000-00-00',
`heure` time NOT NULL default '00:00:00',
PRIMARY KEY (`id`)
) TYPE=MyISAM ;
")) {
echo'<span style="color:#d00000">La table ', $prefix ,'_blog n\'a pas put être crée.</span>';
exit;
}
else
echo'<span style="color:#009800">La table ', $prefix ,'_blog à été crée.</span><br />';
//
/// Création de la table comment
//
if(!mysql_query("
CREATE TABLE `". $prefix ."_comment` (
`id` int(11) NOT NULL auto_increment,
`id_blog` varchar(11) NOT NULL default '',
`pseudo` varchar(255) NOT NULL default '',
`email` varchar(255) NOT NULL default '',
`titre` vachar(255) NOT NULL,
`texte` text NOT NULL,
`date` date NOT NULL default '0000-00-00',
`heure` time NOT NULL default '00:00:00',
PRIMARY KEY (`id`)
) TYPE=MyISAM ;
")) {
echo'<span style="color:#d00000">La table ', $prefix ,'_comment n\'a pas put être crée.</span>';
exit;
}
else
echo'<span style="color:#009800">La table ', $prefix ,'_comment à été crée.</span><br />';
//
/// Création de la table admin
//
if(!mysql_query("
CREATE TABLE `". $prefix ."_admin` (
`id` int(11) NOT NULL auto_increment,
`pseudo` vachar(255) NOT NULL,
`mdp` vachar(255) NOT NULL,
`mail` vachar(255) NOT NULL,
PRIMARY KEY (`id`)
) TYPE=MyISAM ;
")) {
echo'<span style="color:#d00000">La table ', $prefix ,'_admin n\'a pas put être crée.</span>';
exit;
}
else
echo'<span style="color:#009800">La table ', $prefix ,'_admin à été crée.</span><br />';
//
/// Création de la table guestbook
//
if(!mysql_query("
CREATE TABLE `". $prefix ."_guestbook` (
`id` int(11) NOT NULL auto_increment,
`pseudo` varchar(255) NOT NULL default '',
`email` varchar(255) NOT NULL default '',
`titre` vachar(255) NOT NULL,
`texte` text NOT NULL,
`date` date NOT NULL default '0000-00-00',
`heure` time NOT NULL default '00:00:00',
PRIMARY KEY (`id`)
) TYPE=MyISAM ;
")) {
echo'<span style="color:#d00000">La table ', $prefix ,'_guestbook n\'a pas put être crée.</span>';
exit;
}
else
echo'<span style="color:#009800">La table ', $prefix ,'_guestbook à été crée.</span><br />';
//
/// Création de la table config
//
if(!mysql_query("
CREATE TABLE `". $prefix ."_config` (
`titlesite` varchar(255) NOT NULL default '',
`linksite` varchar(255) NOT NULL default '',
`keyworks` text NOT NULL default '',
`desc` text NOT NULL,
`mailwebmaster` varchar(255) NOT NULL default '',
`activecomment` varchar(11) NOT NULL default '',
`activeflag` varchar(11) NOT NULL default '',
`activewebsite` varchar(11) NOT NULL default '',
) TYPE=MyISAM ;
")) {
echo'<span style="color:#d00000">La table ', $prefix ,'_config n\'a pas put être crée.</span>';
exit;
}
else
echo'<span style="color:#009800">La table ', $prefix ,'_config à été crée.</span><br />';
///////////////////////////////////////////// Insertion dans les tables /////////////////////////////////////////
if(
//
/// Insertion dans la table config
//
!mysql_query("INSERT INTO ". $prefix ."_config VALUES('titlesite', $nom)") ||
!mysql_query("INSERT INTO ". $prefix ."_config VALUES('kelinksite', '$adresse')") ||
!mysql_query("INSERT INTO ". $prefix ."_config VALUES('keyworks', '$cles')") ||
!mysql_query("INSERT INTO ". $prefix ."_config VALUES('desc', '$description')") ||
!mysql_query("INSERT INTO ". $prefix ."_config VALUES('mailwebmaster', '$email')") ||
!mysql_query("INSERT INTO ". $prefix ."_config VALUES('activecomment', '1')") ||
!mysql_query("INSERT INTO ". $prefix ."_config VALUES('activeflag', '1')") ||
!mysql_query("INSERT INTO ". $prefix ."_config VALUES('activewebsite', '1')") ||
//
/// Insertion dans la table blog
//
!mysql_query("INSERT INTO ". $prefix ."_blog VALUES('id', '1')") ||
!mysql_query("INSERT INTO ". $prefix ."_blog VALUES('titre', 'Bienvenue')") ||
!mysql_query("INSERT INTO ". $prefix ."_blog VALUES('texte', 'Bonjour,<br>Si vous voyez se message c\'est que le script à été correctement installé.<br><br>Dès maintenant vous pouvez éditer ce message et en ajouter d'autre en accédant à votre espace d\'administration en [url=admin/]cliquant ici[/url].<br><br>Pour toute autre information consultez le manuel qui se trouve dans l\'interface d\'administration, celui-ci vous guidera et vous expliquera comment faire fonctionner le script.<br><br>Vous pouvez aussi ajouter d'autre administrateur si vous le dédirez par l\'interface d\'administration.')") ||
!mysql_query("INSERT INTO ". $prefix ."_blog VALUES('date', '".$date."')") ||
!mysql_query("INSERT INTO ". $prefix ."_blog VALUES('heure', '".$heure."')"))
{
echo'<span style="color:#d00000">La configuration du script ne s\'est pas éffectuée correctement.</span><br />';
exit;
}
else
echo'<span style="color:#009800">La configuration du script s\'est éffectuée correctement.</span>';
///////////////////////////////////////////// Création des données du config.php /////////////////////////////////////////
if(mysql_select_db($base, mysql_connect($serveur, $utilisateur, $passe)))
echo'<br /><br />Modifiez le fichier <b>config.php</b> avec un diteur de texte (genre bloc note) qui est dans le dossier <b>inc</b> avant de continuer l\'installation en y ajoutant le code ci-dessous (n\'oubliez pas de le retransfréer sur le serveur si vous n\'êtes pas en local) : <br />
<textarea rows="6" cols="50"><?php
define(SERVEUR, "', $serveur ,'");
define(UTILISATEUR, "', $utilisateur ,'");
define(PASSE, "', $passe ,'");
define(BASE, "', $base ,'");
define(PREFIX, "', $prefix ,'");
?></textarea>';
echo'<br /><br /><a href="ajout_admin.php">Ajouter un administrateur</a>';
}
else {
?>
</td>
</tr>
</table>
<table border="0" align="center" width="100%">
<tr>
<td>
<form action="" method="post">
<fieldset>
<dl>
<dt><label>Serveur de la base de donnes (MySql):</label></dt>
<dd><input type="text" name="serveur" id="serveur" value="localhost" size="40" /></dd>
</dl>
<dl>
<dt><label>Nom d'utilisateur de la base de donnes (MySql):</label></dt>
<dd><input type="text" name="utilisateur" id="utilisateur" size="40" /></dd>
</dl>
<dl>
<dt><label>Mot de passe de la base de donnes (MySql):</label></dt>
<dd><input type="text" name="passe" id="passe" size="40" /></dd>
</dl>
<dl>
<dt><label>Nom de la base de donnes (MySql):</label></dt>
<dd><input type="text" name="base" id="base" size="40" /></dd>
</dl>
<dl>
<dt><label>Préfix des tables de la base (MySql):</label></dt>
<dd><input type="text" name="prefix" id="prefix" value="sg_" size="40" /></dd>
</dl>
</fieldset>
<fieldset>
<dl>
<dt><label>Nom du site:</label></dt>
<dd><input type="text" name="nom" id="nom" size="40" /></dd>
</dl>
<dl>
<dt><label>Votre adresse e-mail:</label></dt>
<dd><input type="text" name="email" id="email" size="40" /></dd>
</dl>
<dl>
<dt><label>L'adresse de votre site (doit se terminer par "/"):</label></dt>
<dd><input type="text" name="adresse" id="adresse" value="http://" size="40" /></dd>
</dl>
<dl>
<dt><label>Description du site:</label></dt>
<dd><input type="text" name="description" id="description" size="40" /></dd>
</dl>
<dl>
<dt><label>Mots clés du site:</label></dt>
<dd><input type="text" name="cles" id="cles" size="40" /></dd>
</dl>
</fieldset>
<fieldset class="submit-buttons">
<legend>Valider</legend>
<input class="button1" type="submit" name="envoi" value="Valider" />
<input class="button2" type="reset" id="reset" name="reset" value="Effacer" />
<input type="hidden" name="id" value="1" />
</fieldset>
</form>
</td>
</tr>
</table>
<?php
}
?>
</div>
</body>
</html>
Il plante dès la création de la première table.Sa me dit "La table test__blog n'a pas put être crée."
Et je vois pas d'ou se problème pourrait venir.
J'espère que quelqu'un pourra m'aider.
Merci d'avance.