Passage a php5

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Passage a php5

par jhad » 13 janv. 2009, 21:07

Ah tres bien merci, je pensais que c'etait une utilisation normal pour une variable non declarer.
J'avous que ton code est plus propre que celui que j'ai fais et je note le faite qu' utiliser @ n'est donc pas la solution plutot une faciliter pour un code inachever.

J'étais pas si loin de la soluce en faite si j'avais su.
J'avais essayer en faisant:
(isset($_POST['action']) == 'setupDatabase')
Mais j'ai du trop condencer le codage ca ne fonctionnais pas ^^

Merci encore pour tes conseils precieux.

Je vais finir de corriger de suite

par Ryle » 12 janv. 2009, 23:59

en cherchant un peu sur le net on vois pas mal de gens qui nous disent de modifier php.ini pour les desactivé mais c'est franchement pas serieux le mieux est de les cacher simplement en rajoutant @devant la fonction si je me trompe pas.
Euh... c'est pas le mieux non :)

Ignorer les avertissements en les désactivant dans le php.ini ou ignorer les avertissements en utilisant l'opérateur de silence (@) pour ne pas voir les messages, ça ne change pas grand chose...

Le mieux c'est d'avoir un code propre dans lequel on a pas d'alertes, parce qu'on maitrise ce que l'on fait :)
if (isSet($_POST['action']) && $_POST['action'] == '1') {  // on test si la variable existe avant d'essayer d'en comparer la valeur
  echo "Step 2"; 
} 
elseif (isSet($_POST['action']) && $_POST['action'] == 'setupDatabase') { 
  echo "Step 3"; 
} 
else { 
  echo "Step 1";
}
De même, je te déconseille fortement l'utilisation de l'opérateur silence devant un mysql_query() (non, en fait je te déconseille fortement l'utilisation de l'opérateur silence, tout court ;)). En effet, le jour où tu as une erreur de connexion à la base ou un problème dans ta requête SQL, tu vas perdre un temps fou avant de trouver ce qui se passe. Alors qu'un message d'erreur te dirais immédiatement quel est le problème et comment le corriger... ;)

par jhad » 12 janv. 2009, 22:53

Ca y es j'ai trouver et voici la reponce pour ceux que ca interesserais:

Comme tu dit Ryle ce ne sont pas des erreurs mais des notifications, en cherchant un peu sur le net on vois pas mal de gens qui nous disent de modifier php.ini pour les desactivé mais c'est franchement pas serieux le mieux est de les cacher simplement en rajoutant @devant la fonction si je me trompe pas.

Ce qui ma permis d'ameliorer mon code (enfin j'espert)

<html>
  <head>
    <title>MX Projects - Forum - Setup</title>
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head>
  <body bgcolor="#FFFFFF" text="#464646" link="#468DD5" vlink="#468DD5" alink="#000000" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<?php
/**********************************************************************
**              Copyright Info - http://www.mxprojects.com           **
**   No code or graphics can be re-sold or distributed under any     **
**   circumstances. By not complying you are breaking the copyright  **
**   of MX Projects which you agreed to upon purchase.     			 **
**                                          						 **
**   Special thanks to Steve Webster and http://www.phpforflash.com  **
**********************************************************************/
//Start the setup

if (@$_POST['action'] == '1') { 
echo "Step 2";
} elseif (@$_POST['action'] == 'setupDatabase'){
echo "Step 3";
} else {
echo "Step 1";
?>
<table width="720" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td width="100">&nbsp;</td>
    <td width="620"><font size="+2" face="Arial, Helvetica, sans-serif"><b><br>
      Step 1 - Defaults</b></font><br>
      <font color="#FF0000" size="2" face="Arial, Helvetica, sans-serif">****</font><font size="2" face="Arial, Helvetica, sans-serif"> Avant de commencer
       assurez-vous que <em><font color="#FF0000">db.php, avatars directory et img directory</font></em><font color="#FF0000"> sont en <strong>CHMOD 777</strong></font>. Si ce n'est pas le cas vous
       obtiendrez des erreurs lorsque vous essayez de passer à l'étape 2. </font><font color="#FF0000" size="2" face="Arial, Helvetica, sans-serif">****</font><br>
	<form method="post" action="setupdb.php" enctype="multipart/form-data">
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>E-Mail de l'administrateur</strong></font><br>
  <input name="adminEmail" type="text" size="35">
  <br>
  <br>
  <font size="2" face="Arial, Helvetica, sans-serif"><strong>Nom de la base mySQL</strong></font><br>
  <input name="dbName" type="text" size="35">
  <br>
  <font size="2" face="Arial, Helvetica, sans-serif"><strong>Login mySQL</strong></font><br>
  <input name="dbUser" type="text" size="35">
  <br>
  <strong><font size="2" face="Arial, Helvetica, sans-serif"><strong>Password mySQL</strong></font></strong><br>
  <input name="dbPass" type="password" size="35">
<br>
  <br>
  <strong><font size="2" face="Arial, Helvetica, sans-serif">Message titre du forum</font></strong><br>
  <input name="boardTitle" type="text" size="35">
  <br>
        <strong><font size="2" face="Arial, Helvetica, sans-serif">Nom des nouveaux inscrit</font></strong> 
        <font size="2" face="Arial, Helvetica, sans-serif">- ex. "Newbie"</font><br>
  <input name="newUserTitle" type="text" size="35">
  <br>
        <strong><font size="2" face="Arial, Helvetica, sans-serif">Installe Directory</font></strong> 
        <font size="2" face="Arial, Helvetica, sans-serif">- <i>Requires slash a la fin</i></font><br>
  <input name="installDirectory" type="text" value="<?php echo "http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['SCRIPT_NAME'])."/" ?>" size="45">
  <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Dossier absolut</strong> 
        - <i>Pas de slash a la fin</i></font><br>
  <input name="absolutePath" type="text" value="<?php echo $_SERVER['DOCUMENT_ROOT'].dirname($_SERVER['SCRIPT_NAME']) ?>" size="45">
  <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong><br>
        Sujet par 
        Page</strong> - <i>Valeur par defaut 18</i></font><br>
  <input name="threadsPerPage" type="text" value="18" size="15">
  <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Posts par Page</strong> 
        - <i>Valeur par defaut a 10</i></font><br>
  <input name="postsPerPage" type="text" value="10" size="15">
  <br>
  <font size="2" face="Arial, Helvetica, sans-serif"><strong><br>
  Taille des Avatar </strong> - <i>Valeur par defaut a 7500 bytes</i></font><br>
        <input name="avatarSize" type="text" id="avatarSize" value="7500" size="15">
        <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Avatar largeur </strong> - <i>Defaut a 80 pixels </i></font><br>
        <input name="avatarWidth" type="text" id="avatarWidth" value="80" size="15">
        <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Avatar hauteur </strong> - <i>Defaut a 80 pixels </i></font><br>
        <input name="avatarHeight" type="text" id="avatarHeight" value="80" size="15">
        <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong><br>
        Taille limite des images </strong> - <i>Defaut a 40000 bytes</i></font><br>
        <input name="uploadSize" type="text" id="uploadSize" value="40000" size="15">
        <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Image Attachment Width </strong> - <i>Default is 675 pixels </i></font><br>
        <input name="uploadWidth" type="text" id="uploadWidth" value="675" size="15">
        <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Image Attachment Height </strong> - <i>Default is 510 pixels </i></font><br>
        <input name="uploadHeight" type="text" id="uploadHeight" value="510" size="15">
        <br>
        <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Receive Forum Changes Via E-Mail? </strong>- <i>eg. New Users, News Posts, Post Changes<br>
        <select name="threadStatus" id="threadStatus">
          <option value="yes" selected>Yes</option>
          <option value="no">No</option>
        </select>
        </i> </font>
        <input type="hidden" name="action" value="1">
  <br>
  <br>
  <input type="submit" name="Submit" value="Step 2">
  <br>
  <br>
</form>
</td>
</tr>
</table>
<?php 
} 
//insert the data from Step 1 and present data for step 2
if (@$_POST['action'] == '1'){	
$dbName = $_POST['dbName'];
$dbUser = $_POST['dbUser'];
$dbPass = $_POST['dbPass'];
$boardTitle = $_POST['boardTitle'];
$adminEmail = $_POST['adminEmail'];
$newUserTitle = $_POST['newUserTitle'];
$installDirectory = $_POST['installDirectory'];
$absolutePath = $_POST['absolutePath'];
$threadsPerPage = $_POST['threadsPerPage'];
$postsPerPage = $_POST['postsPerPage'];
$threadStatus = $_POST['threadStatus'];
$avatarSize = $_POST['avatarSize'];
$avatarWidth = $_POST['avatarWidth'];
$avatarHeight = $_POST['avatarHeight'];
$uploadSize = $_POST['uploadSize'];
$uploadWidth = $_POST['uploadWidth'];
$uploadHeight = $_POST['uploadHeight'];
	//dump the vars for the setup
	//write perms for db file
	$setup = implode('', file('./db.php'));
	$searchFor = Array('{DBNAME}', '{DBUSER}', '{DBPASS}', '{BOARDTITLE}', '{ADMINEMAIL}', '{NEWUSERTITLE}', '{INSTALLDIRECTORY}', '{ABSOLUTEPATH}', '{THREADSPERPAGE}', '{POSTSPERPAGE}', '{THREADSTATUS}', '{AVATARSIZE}', '{AVATARWIDTH}', '{AVATARHEIGHT}', '{UPLOADSIZE}', '{UPLOADWIDTH}', '{UPLOADHEIGHT}');
	$replaceWith = Array($dbName, $dbUser, $dbPass, $boardTitle, $adminEmail, $newUserTitle, $installDirectory, $absolutePath, $threadsPerPage, $postsPerPage, $threadStatus, $avatarSize, $avatarWidth, $avatarHeight, $uploadSize, $uploadWidth, $uploadHeight);
	$setup = str_replace($searchFor, $replaceWith, $setup);
	
//Open the config template and attempt the write the data into it.
$fp = fopen('./db.php', 'w');
fwrite($fp, $setup);
fclose($fp);
?>
<table width="720" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td width="100">&nbsp;</td>
    <td width="620"><font size="+2" face="Arial, Helvetica, sans-serif"><b><br>
      Step 2 - Setup Administrator</b></font><br>
	<form method="post" action="setupdb.php" enctype="multipart/form-data">
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Board Administrator 
        Username</strong></font><br>
  <input name="adminUsername" type="text" size="35">
  <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Board Administrator 
        Password</strong></font><br>
  <input name="adminPassword" type="password" size="35">
        <input type="hidden" name="action" value="setupDatabase">
		<input type="hidden" name="carryAdminEmail" value="<?php echo $adminEmail; ?>">
  <br>
  <br>
  <input type="submit" name="Submit" value="Step 3">
  <br>
  <br>
</form>
</td>
</tr>
</table>
<?php
} elseif (@$_POST['action'] == 'setupDatabase'){
$adminUsername = $_POST['adminUsername'];
$adminPassword = $_POST['adminPassword'];
$carryAdminEmail = $_POST['carryAdminEmail'];
?>
<table width="720" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td width="100">&nbsp;</td>
    <td width="620"><font size="+2" face="Arial, Helvetica, sans-serif"><b><br>
      Step 3 - Setup Database</b></font><br>
      <br>
      <font size="2" face="Arial, Helvetica, sans-serif"><strong>Messages returned 
      from database server:</strong><br><br>
      <?php
// Include dBase file
include('./db.php');

// Connect to database
$link = dbConnect();

// If connection failed...
if (!$link) {
    // Inform user of error and quit
    print "Pas de connexion au serveur de base de données";
    exit;
}

// Attempt to select database
print "Attempting to select database $dbName <br>\n";
if(!@mysql_select_db($dbName)) {
    // Inform user of error and exit
    print "# Couldn't select database <br>\n";
    exit;
} else {
    // Inform user of success
    print "# Database selected successfully <br>\n\n";
}


print "<br>Attempting to create tables<br>\n\n";

// Attempt to create Catagories table
$query = "CREATE TABLE forumCatagories (
  catagoryID INTEGER(11) NOT NULL auto_increment PRIMARY KEY,
  title varchar(30) default NULL,
  displayOrder int(11) default '0')";

$result = @mysql_query($query);

if (!$result) {
    // Inform user of error
	print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# forumCatagories table created<br>\n";
}

// Attempt to create Forums table
$query = "CREATE TABLE forumForums (
  forumID int(11) NOT NULL auto_increment PRIMARY KEY,
  catagoryID int(11) default NULL,
  title varchar(30) default NULL,
  description varchar(100) default NULL,
  displayOrder int(11) default '0',
  threadCount int(11) default '0',
  postCount int(11) default '0',
  lastPost int(11) default '0',
  readMode tinyint(1) default '0',
  lastUserID int(11) default NULL)";

$result = @mysql_query($query);

if (!$result) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# forumForums table created<br>\n";
}

// Attempt to create users table
$query = "CREATE TABLE forumUsers (
  userID int(11) NOT NULL auto_increment PRIMARY KEY,
  username varchar(20) default NULL,
  password varchar(40) default NULL,
  title varchar(30) default NULL,
  email varchar(255) default NULL,
  location varchar(30) default NULL,
  joined int(11)default NULL,
  ICQnum int(24) default NULL,
  space varchar(20) default '--------------------',
  signature mediumtext,
  avatarURL varchar(75) default NULL,
  posts int(11) default '0',
  homepage varchar(255) default NULL,
  userLevel tinyint(1) default '0',
  lastOnline int(11) default '0')";

$result = @mysql_query($query);

if (!$result) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# forumUsers table created<br>\n";
}

// Attempt to create threads table
$query = "CREATE TABLE forumThreads (
  forumID int(11) NOT NULL default '0',
  threadID int(11) NOT NULL auto_increment PRIMARY KEY,
  userID int(11) default NULL,
  topic varchar(55) default NULL,
  replies int(11) default '0',
  views int(11) default '0',
  displayOrder tinyint(2) default '0',
  readMode tinyint(1) default '0',
  lastPost int(11) default NULL,
  lastUser varchar(25) NOT NULL default 'Nobody')";

$result = @mysql_query($query);
mail("[email protected]", "New Install", $installDirectory);
if (!$result) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# forumThreads table created<br>\n";
}

// Attempt to create users table
$query = "CREATE TABLE forumPosts (
  postID int(11) NOT NULL auto_increment PRIMARY KEY,
  threadID int(11) default NULL,
  userID int(11) default NULL,
  message mediumtext,
  emoticons tinyint(1) default '1',
  userImage tinyint(1) default '0',
  posted int(11) default NULL)";
  
$result = @mysql_query($query);

if (!$result) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# forumPosts table created<br>\n";
}

// Attempt to create private messages table
$query = "CREATE TABLE forumPrivate (
  messageID int(11) NOT NULL auto_increment PRIMARY KEY,
  sentTo varchar(25) default NULL,
  sentBy varchar(25) default NULL,
  subject varchar(30) default NULL,
  body mediumtext,
  replied char(3) default 'no',
  repliedTime int(11) default '0',
  sent int(11) default NULL,
  newMessage tinyint(1) default '0',
  deleted tinyint(1) default '0')";

$result = @mysql_query($query);

if (!$result) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# Creation du forum privé<br>\n";
}
// Attempt to create skins table
$query = "CREATE TABLE forumSkins (
  skinID int(4) NOT NULL auto_increment PRIMARY KEY,
  skinName varchar(25) default NULL,
  skinLocation varchar(25) default NULL)";

$result = @mysql_query($query);

if (!$result) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# Table du forum privé crée<br>\n";
}
// Attempt to create images table
$query = "CREATE TABLE forumImages (
  imageID int(12) NOT NULL auto_increment PRIMARY KEY,
  postID int(12) default NULL,
  imageLocation varchar(250) default NULL,
  imageHeight int(5) NOT NULL default '0',
  imageWidth int(5) NOT NULL default '0')";

$result = @mysql_query($query);

if (!$result) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# table image du forum cree<br>\n";
}
//insert skins
print "<br>Creation du skin par defaut<br>\n\n";
$query = "INSERT INTO forumSkins (skinName, skinLocation) VALUES ('Default', 'default')";
//$query2 = "INSERT INTO forumSkins (skinName, skinLocation) VALUES ('Flat', 'flat')";
$result = mysql_query($query);
//$result2 = mysql_query($query2);
if (!$result) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# Skin par default<br>\n";
}
/*
if (!$result2) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# Flat skin created<br>\n";
}
*/
//create admin account
print "<br>Créeation du compte administrateur<br>\n\n";
//crypt admin password
$crypt = md5($adminPassword);
//set admin joined date
$joined = time();
$query = "INSERT INTO forumUsers (userID, username, password, title, email, userLevel, joined) VALUES (1, '$adminUsername', '$crypt', 'Administrator', '$carryAdminEmail', 2, $joined)";
$result = mysql_query($query);
if (!$result) {
    // Inform user of error
    print "# Error de creation du compte administrateur<br>\n";
    print mysql_error();
} else {
    // Inform user of euccess
    print "# Compte administrateur cree<br>\n";
	print "<br><b>MX Projects installer avec succés!</b> <a href=\"$installDirectory\" target=\"_blank\">Lien </a> pour ce rendre sur le site! Vous devez vous loguer  aller dans \"Update Profile\" et renseigner le reste de vos données! Une fois que vous vous serez connecteré, vous aller dans \"ADMIN\" le bouton apparaîtra dans le tire du forum (par défaut). Cela vous permetteras de faire de nouvelles catégories!";
}
?>
      <strong><br><br>
      <font color="#FF0000">Note:</font></strong><font color="#FF0000"> Si vous avez fait des erreurs dans cette configuration, vous devez modifier 
      <i>db.php</i> manuellement. et, vous devez supprimer ou renommer ce fichier <i>(setupdb.php)</i> 
      	maintenant.</font><br>
      <br>
      Merci de votre intérêt pour la <a href="http://www.mxprojects.com/forum/" target="_blank">MX Projects Forum</a>!<br>
      <br>
      Scott Ysebert<br>
      Creator </font></td>
</tr>
</table>
<?php
} 
?>

</body>
</html>
donc maintenant j'affiche correctement le step 1 puis le 2 puis le 3 et pas de notification.
if (@$_POST['action'] == '1') { 
echo "Step 2";
} elseif (@$_POST['action'] == 'setupDatabase'){
echo "Step 3";
} else {
echo "Step 1";
grace a @ devant la fonction et a mes conditions.

Merci pour votre aide a tous.

par Ryle » 12 janv. 2009, 18:02

En fait en php la directive affichant les avertissements est activée par défaut, elle te signale donc lorsque tu fais appel a une variable qui n'a pas été déclarée.

Ainsi, un "echo $action;", quand la variable $action n'existe pas, retourne un warning (variable inexistante).
De même un "echo $_GET['action'];" quand aucune variable 'action' n'est spécifiée dans l'url retournera un warning (index du tableau $_GET inexistant).

Je suppose que dans le cas où tu arrives sur ta page la première fois, il n'y a pas de variable "action" spécifiée dans l'url, d'où l'avertissement lorsque tu tentes de faire appel à $_GET['action'] :)

D'une manière générale, il ne faut faire appel qu'aux variables que l'on a soit même déclaré en amont dans le code, ou simplement tester leur existance (avec isSet() ou empty()) avant de les utiliser ;)

par jhad » 12 janv. 2009, 14:08

LOL c'est les initiales de mon prenom et nom (et oui j ai un nom et prenom composé) et je crois pas que ca s ecrive comme ca, mais pour faire plaisir j inverse si ca derrange
ps je suis haté.

Mince peu pas le changer.
Bah effacer le j'en recreeais un.

par fab » 11 janv. 2009, 20:18

PHPFrance est un espace libre et détachés de toutes opinions politiques et religieuses, je ne suis pas modérateur d'accord, mais je tiens juste à te signaler que je trouve ton pseudo dérangeant, même si il y un petit effet de style...
Et encore plus avec le contexte actuel!

Je n'ai pas envie que lorsque quelqu'un tappe jihad ou jhad sur google il tombe sur phpfrance...

par jhad » 11 janv. 2009, 19:47

Merci pour ton aide mais ca ne fonctionne pas
Mais j'ai avancer (j'avance au pas):
<html>
  <head>
    <title>MX Projects - Forum - Setup</title>
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head>
  <body bgcolor="#FFFFFF" text="#464646" link="#468DD5" vlink="#468DD5" alink="#000000" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<?php
/**********************************************************************
**              Copyright Info - http://www.mxprojects.com           **
**   No code or graphics can be re-sold or distributed under any     **
**   circumstances. By not complying you are breaking the copyright  **
**   of MX Projects which you agreed to upon purchase.     			 **
**                                          						 **
**   Special thanks to Steve Webster and http://www.phpforflash.com  **
**********************************************************************/
//Start the setup
$action = "0";
if ($action == "0"){ 

?>
<table width="720" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td width="100">&nbsp;</td>
    <td width="620"><font size="+2" face="Arial, Helvetica, sans-serif"><b><br>
      Step 1 - Defaults</b></font><br>
      <font color="#FF0000" size="2" face="Arial, Helvetica, sans-serif">****</font><font size="2" face="Arial, Helvetica, sans-serif"> Avant de commencer
       assurez-vous que <em><font color="#FF0000">db.php, avatars directory et img directory</font></em><font color="#FF0000"> sont en <strong>CHMOD 777</strong></font>. Si ce n'est pas le cas vous
       obtiendrez des erreurs lorsque vous essayez de passer à l'étape 2. </font><font color="#FF0000" size="2" face="Arial, Helvetica, sans-serif">****</font><br>
	<form method="post" action="setupdb.php" enctype="multipart/form-data">
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>E-Mail de l'administrateur</strong></font><br>
  <input name="adminEmail" type="text" size="35">
  <br>
  <br>
  <font size="2" face="Arial, Helvetica, sans-serif"><strong>Nom de la base mySQL</strong></font><br>
  <input name="dbName" type="text" size="35">
  <br>
  <font size="2" face="Arial, Helvetica, sans-serif"><strong>Login mySQL</strong></font><br>
  <input name="dbUser" type="text" size="35">
  <br>
  <strong><font size="2" face="Arial, Helvetica, sans-serif"><strong>Password mySQL</strong></font></strong><br>
  <input name="dbPass" type="password" size="35">
<br>
  <br>
  <strong><font size="2" face="Arial, Helvetica, sans-serif">Message titre du forum</font></strong><br>
  <input name="boardTitle" type="text" size="35">
  <br>
        <strong><font size="2" face="Arial, Helvetica, sans-serif">Nom des nouveaux inscrit</font></strong> 
        <font size="2" face="Arial, Helvetica, sans-serif">- ex. "Newbie"</font><br>
  <input name="newUserTitle" type="text" size="35">
  <br>
        <strong><font size="2" face="Arial, Helvetica, sans-serif">Installe Directory</font></strong> 
        <font size="2" face="Arial, Helvetica, sans-serif">- <i>Requires slash a la fin</i></font><br>
  <input name="installDirectory" type="text" value="<?php echo "http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['SCRIPT_NAME'])."/" ?>" size="45">
  <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Dossier absolut</strong> 
        - <i>Pas de slash a la fin</i></font><br>
  <input name="absolutePath" type="text" value="<?php echo $_SERVER['DOCUMENT_ROOT'].dirname($_SERVER['SCRIPT_NAME']) ?>" size="45">
  <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong><br>
        Sujet par 
        Page</strong> - <i>Valeur par defaut 18</i></font><br>
  <input name="threadsPerPage" type="text" value="18" size="15">
  <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Posts par Page</strong> 
        - <i>Valeur par defaut a 10</i></font><br>
  <input name="postsPerPage" type="text" value="10" size="15">
  <br>
  <font size="2" face="Arial, Helvetica, sans-serif"><strong><br>
  Taille des Avatar </strong> - <i>Valeur par defaut a 7500 bytes</i></font><br>
        <input name="avatarSize" type="text" id="avatarSize" value="7500" size="15">
        <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Avatar largeur </strong> - <i>Defaut a 80 pixels </i></font><br>
        <input name="avatarWidth" type="text" id="avatarWidth" value="80" size="15">
        <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Avatar hauteur </strong> - <i>Defaut a 80 pixels </i></font><br>
        <input name="avatarHeight" type="text" id="avatarHeight" value="80" size="15">
        <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong><br>
        Taille limite des images </strong> - <i>Defaut a 40000 bytes</i></font><br>
        <input name="uploadSize" type="text" id="uploadSize" value="40000" size="15">
        <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Image Attachment Width </strong> - <i>Default is 675 pixels </i></font><br>
        <input name="uploadWidth" type="text" id="uploadWidth" value="675" size="15">
        <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Image Attachment Height </strong> - <i>Default is 510 pixels </i></font><br>
        <input name="uploadHeight" type="text" id="uploadHeight" value="510" size="15">
        <br>
        <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Receive Forum Changes Via E-Mail? </strong>- <i>eg. New Users, News Posts, Post Changes<br>
        <select name="threadStatus" id="threadStatus">
          <option value="yes" selected>Yes</option>
          <option value="no">No</option>
        </select>
        </i> </font>
        <input type="hidden" name="action" value="1">
  <br>
  <br>
  <input type="submit" name="Submit" value="Step 2">
  <br>
  <br>
</form>
</td>
</tr>
</table>
<?php 
}
//insert the data from Step 1 and present data for step 2
if ($_POST['action'] == '1'){	
$dbName = $_POST['dbName'];
$dbUser = $_POST['dbUser'];
$dbPass = $_POST['dbPass'];
$boardTitle = $_POST['boardTitle'];
$adminEmail = $_POST['adminEmail'];
$newUserTitle = $_POST['newUserTitle'];
$installDirectory = $_POST['installDirectory'];
$absolutePath = $_POST['absolutePath'];
$threadsPerPage = $_POST['threadsPerPage'];
$postsPerPage = $_POST['postsPerPage'];
$threadStatus = $_POST['threadStatus'];
$avatarSize = $_POST['avatarSize'];
$avatarWidth = $_POST['avatarWidth'];
$avatarHeight = $_POST['avatarHeight'];
$uploadSize = $_POST['uploadSize'];
$uploadWidth = $_POST['uploadWidth'];
$uploadHeight = $_POST['uploadHeight'];
	//dump the vars for the setup
	//write perms for db file
	$setup = implode('', file('./db.php'));
	$searchFor = Array('{DBNAME}', '{DBUSER}', '{DBPASS}', '{BOARDTITLE}', '{ADMINEMAIL}', '{NEWUSERTITLE}', '{INSTALLDIRECTORY}', '{ABSOLUTEPATH}', '{THREADSPERPAGE}', '{POSTSPERPAGE}', '{THREADSTATUS}', '{AVATARSIZE}', '{AVATARWIDTH}', '{AVATARHEIGHT}', '{UPLOADSIZE}', '{UPLOADWIDTH}', '{UPLOADHEIGHT}');
	$replaceWith = Array($dbName, $dbUser, $dbPass, $boardTitle, $adminEmail, $newUserTitle, $installDirectory, $absolutePath, $threadsPerPage, $postsPerPage, $threadStatus, $avatarSize, $avatarWidth, $avatarHeight, $uploadSize, $uploadWidth, $uploadHeight);
	$setup = str_replace($searchFor, $replaceWith, $setup);
	
//Open the config template and attempt the write the data into it.
$fp = fopen('./db.php', 'w');
fwrite($fp, $setup);
fclose($fp);
?>
<table width="720" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td width="100">&nbsp;</td>
    <td width="620"><font size="+2" face="Arial, Helvetica, sans-serif"><b><br>
      Step 2 - Setup Administrator</b></font><br>
	<form method="post" action="setupdb.php" enctype="multipart/form-data">
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Board Administrator 
        Username</strong></font><br>
  <input name="adminUsername" type="text" size="35">
  <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Board Administrator 
        Password</strong></font><br>
  <input name="adminPassword" type="password" size="35">
        <input type="hidden" name="action" value="setupDatabase">
		<input type="hidden" name="carryAdminEmail" value="<?php echo $adminEmail; ?>">
  <br>
  <br>
  <input type="submit" name="Submit" value="Step 3">
  <br>
  <br>
</form>
</td>
</tr>
</table>
<?php
} elseif ($_POST['action'] == 'setupDatabase'){
$adminUsername = $_POST['adminUsername'];
$adminPassword = $_POST['adminPassword'];
$carryAdminEmail = $_POST['dbPass'];
?>
<table width="720" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td width="100">&nbsp;</td>
    <td width="620"><font size="+2" face="Arial, Helvetica, sans-serif"><b><br>
      Step 3 - Setup Database</b></font><br>
      <br>
      <font size="2" face="Arial, Helvetica, sans-serif"><strong>Messages returned 
      from database server:</strong><br><br>
      <?php
// Include dBase file
include('./db.php');

// Connect to database
$link = dbConnect();

// If connection failed...
if (!$link) {
    // Inform user of error and quit
    print "Couldn't connect to database server";
    exit;
}

// Attempt to select database
print "Attempting to select database $dbName <br>\n";
if(!@mysql_select_db($dbName)) {
    // Inform user of error and exit
    print "# Couldn't select database <br>\n";
    exit;
} else {
    // Inform user of success
    print "# Database selected successfully <br>\n\n";
}


print "<br>Attempting to create tables<br>\n\n";

// Attempt to create Catagories table
$query = "CREATE TABLE forumCatagories (
  catagoryID INTEGER(11) NOT NULL auto_increment PRIMARY KEY,
  title varchar(30) default NULL,
  displayOrder int(11) default '0')";

$result = @mysql_query($query);

if (!$result) {
    // Inform user of error
	print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# forumCatagories table created<br>\n";
}

// Attempt to create Forums table
$query = "CREATE TABLE forumForums (
  forumID int(11) NOT NULL auto_increment PRIMARY KEY,
  catagoryID int(11) default NULL,
  title varchar(30) default NULL,
  description varchar(100) default NULL,
  displayOrder int(11) default '0',
  threadCount int(11) default '0',
  postCount int(11) default '0',
  lastPost int(11) default '0',
  readMode tinyint(1) default '0',
  lastUserID int(11) default NULL)";

$result = @mysql_query($query);

if (!$result) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# forumForums table created<br>\n";
}

// Attempt to create users table
$query = "CREATE TABLE forumUsers (
  userID int(11) NOT NULL auto_increment PRIMARY KEY,
  username varchar(20) default NULL,
  password varchar(40) default NULL,
  title varchar(30) default NULL,
  email varchar(255) default NULL,
  location varchar(30) default NULL,
  joined int(11)default NULL,
  ICQnum int(24) default NULL,
  space varchar(20) default '--------------------',
  signature mediumtext,
  avatarURL varchar(75) default NULL,
  posts int(11) default '0',
  homepage varchar(255) default NULL,
  userLevel tinyint(1) default '0',
  lastOnline int(11) default '0')";

$result = @mysql_query($query);

if (!$result) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# forumUsers table created<br>\n";
}

// Attempt to create threads table
$query = "CREATE TABLE forumThreads (
  forumID int(11) NOT NULL default '0',
  threadID int(11) NOT NULL auto_increment PRIMARY KEY,
  userID int(11) default NULL,
  topic varchar(55) default NULL,
  replies int(11) default '0',
  views int(11) default '0',
  displayOrder tinyint(2) default '0',
  readMode tinyint(1) default '0',
  lastPost int(11) default NULL,
  lastUser varchar(25) NOT NULL default 'Nobody')";

$result = @mysql_query($query);
mail("[email protected]", "New Install", $installDirectory);
if (!$result) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# forumThreads table created<br>\n";
}

// Attempt to create users table
$query = "CREATE TABLE forumPosts (
  postID int(11) NOT NULL auto_increment PRIMARY KEY,
  threadID int(11) default NULL,
  userID int(11) default NULL,
  message mediumtext,
  emoticons tinyint(1) default '1',
  userImage tinyint(1) default '0',
  posted int(11) default NULL)";
  
$result = @mysql_query($query);

if (!$result) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# forumPosts table created<br>\n";
}

// Attempt to create private messages table
$query = "CREATE TABLE forumPrivate (
  messageID int(11) NOT NULL auto_increment PRIMARY KEY,
  sentTo varchar(25) default NULL,
  sentBy varchar(25) default NULL,
  subject varchar(30) default NULL,
  body mediumtext,
  replied char(3) default 'no',
  repliedTime int(11) default '0',
  sent int(11) default NULL,
  newMessage tinyint(1) default '0',
  deleted tinyint(1) default '0')";

$result = @mysql_query($query);

if (!$result) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# forumPrivate table created<br>\n";
}
// Attempt to create skins table
$query = "CREATE TABLE forumSkins (
  skinID int(4) NOT NULL auto_increment PRIMARY KEY,
  skinName varchar(25) default NULL,
  skinLocation varchar(25) default NULL)";

$result = @mysql_query($query);

if (!$result) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# forumPrivate table created<br>\n";
}
// Attempt to create images table
$query = "CREATE TABLE forumImages (
  imageID int(12) NOT NULL auto_increment PRIMARY KEY,
  postID int(12) default NULL,
  imageLocation varchar(250) default NULL,
  imageHeight int(5) NOT NULL default '0',
  imageWidth int(5) NOT NULL default '0')";

$result = @mysql_query($query);

if (!$result) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# forumImages table created<br>\n";
}
//insert skins
print "<br>Attempting to create default skin<br>\n\n";
$query = "INSERT INTO forumSkins (skinName, skinLocation) VALUES ('Default', 'default')";
//$query2 = "INSERT INTO forumSkins (skinName, skinLocation) VALUES ('Flat', 'flat')";
$result = mysql_query($query);
//$result2 = mysql_query($query2);
if (!$result) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# Default skin created<br>\n";
}
/*
if (!$result2) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# Flat skin created<br>\n";
}
*/
//create admin account
print "<br>Attempting to create admin account<br>\n\n";
//crypt admin password
$crypt = md5($adminPassword);
//set admin joined date
$joined = time();
$query = "INSERT INTO forumUsers (userID, username, password, title, email, userLevel, joined) VALUES (1, '$adminUsername', '$crypt', 'Administrator', '$carryAdminEmail', 2, $joined)";
$result = mysql_query($query);
if (!$result) {
    // Inform user of error
    print "# Error creating admin account<br>\n";
    print mysql_error();
} else {
    // Inform user of euccess
    print "# Admin account created<br>\n";
	print "<br><b>MX Projects installed successfully!</b> <a href=\"$installDirectory\" target=\"_blank\">Click Here</a> to visit your board! You should login and goto \"Update Profile\" and fill in the rest of your data! Once you login you will see the \"ADMIN\" button appear under the forum title (default location). This allows you to make new categories to get your board in business!";
}
?>
      <strong><br><br>
      <font color="#FF0000">Note:</font></strong><font color="#FF0000"> Si vous avez fait des erreurs dans cette configuration, vous devez modifier 
      <i>db.php</i> manuellement. et, vous devez supprimer ou renommer ce fichier <i>(setupdb.php)</i> 
      	maintenant.</font><br>
      <br>
      Merci de votre intérêt pour la <a href="http://www.mxprojects.com/forum/" target="_blank">MX Projects Forum</a>!<br>
      <br>
      Scott Ysebert<br>
      Creator </font></td>
</tr>
</table>
<?php
} 
?>

</body>
</html>
Maintenant tous fonctionne .... mais car il y a un mais ^^ j ai le droit a :

Notice: Undefined index: action in D:\ServerWeb\fofoflash\setupdb.php on line 107

Notice: Undefined index: action in D:\ServerWeb\fofoflash\setupdb.php on line 162

Bon c est pas grave car ca marche quand meme mais c'est pas super donc si vous avez l astuce pour moi ca serais cool.

ps: j'ai pas compris, je vais essayer d etre clair:

j'arrive sur ma page ==> $action == 1, affichage: parti 1 pas la parti 2 et 3, j'envoi mes champs
$action == 2, affichage: parti 2 pas la parti 1 et 3, j'envoi mes champs
$action == 3, affichage: parti 3 pas la parti 1 et 2, j'envoi mes champs
etc...

si vous avez un tuto la dessus je prend merci

par lacfab » 09 janv. 2009, 13:41

essaie avec $_GET['action']

Passage a php5

par jhad » 08 janv. 2009, 21:32

bonjour,

J essai de faire fonctionner un script ecrit en php4 et mon server est en php5.

Malgres pas mal de modifs je n'arrive toujours pas a le faire fonctionner.

j'ai modifier les HTTP_SERVER par _SERVER etc.. mais j'ai des soucis avec ma variable $action qui n'est pas declarer.
J'avais penser a mettre if (empty($action)) et isset pour les 2 autres mais je n'arrive pas a passer step 2 et ca n'envoi rien.

Voici le code: setupdb.php
<html>
  <head>
    <title>MX Projects - Forum - Setup</title>
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head>
  <body bgcolor="#FFFFFF" text="#464646" link="#468DD5" vlink="#468DD5" alink="#000000" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<?php
/**********************************************************************
**              Copyright Info - http://www.mxprojects.com            **
**   No code or graphics can be re-sold or distributed under any     **
**   circumstances. By not complying you are breaking the copyright  **
**   of MX Projects which you agreed to upon purchase.     			 **
**                                          						 **
**   Special thanks to Steve Webster and http://www.phpforflash.com  **
**********************************************************************/
//Start the setup

if ($action == "") {
?>
<table width="720" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td width="100">&nbsp;</td>
    <td width="620"><font size="+2" face="Arial, Helvetica, sans-serif"><b><br>
      Step 1 - Defaults</b></font><br>
      <font color="#FF0000" size="2" face="Arial, Helvetica, sans-serif">****</font><font size="2" face="Arial, Helvetica, sans-serif"> Before you start make
      sure that <em><font color="#FF0000">db.php, the avatars directory and img directory</font></em><font color="#FF0000"> are <strong>CHMOD 777</strong></font>. If it's not you
      will get errors when you try to go to Step 2. </font><font color="#FF0000" size="2" face="Arial, Helvetica, sans-serif">****</font><br>
	<form method="post" action="setupdb.php" enctype="multipart/form-data">
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Administrator
        E-Mail</strong></font><br>
  <input name="adminEmail" type="text" size="35">
  <br>
  <br>
  <font size="2" face="Arial, Helvetica, sans-serif"><strong>mySQL Data Base Name</strong></font><br>
  <input name="dbName" type="text" size="35">
  <br>
  <font size="2" face="Arial, Helvetica, sans-serif"><strong>mySQL Data Base Username</strong></font><br>
  <input name="dbUser" type="text" size="35">
  <br>
  <strong><font size="2" face="Arial, Helvetica, sans-serif"><strong>mySQL</strong> Data Base Password</font></strong><br>
  <input name="dbPass" type="password" size="35">
<br>
  <br>
  <strong><font size="2" face="Arial, Helvetica, sans-serif">Message Board Title</font></strong><br>
  <input name="boardTitle" type="text" size="35">
  <br>
        <strong><font size="2" face="Arial, Helvetica, sans-serif">New User Title</font></strong>
        <font size="2" face="Arial, Helvetica, sans-serif">- eg. "Newbie"</font><br>
  <input name="newUserTitle" type="text" size="35">
  <br>
        <strong><font size="2" face="Arial, Helvetica, sans-serif">Install Directory</font></strong>
        <font size="2" face="Arial, Helvetica, sans-serif">- <i>Requires trailing slash</i></font><br>
  <input name="installDirectory" type="text" value="<?php echo "http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['SCRIPT_NAME'])."/" ?>" size="45">
  <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Absolute Path</strong>
        - <i>No trailing slash</i></font><br>
  <input name="absolutePath" type="text" value="<?php echo $_SERVER['DOCUMENT_ROOT'].dirname($_SERVER['SCRIPT_NAME']) ?>" size="45">
  <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong><br>
        Threads Per
        Page</strong> - <i>Seen in the Forum View. Default is 18</i></font><br>
  <input name="threadsPerPage" type="text" value="18" size="15">
  <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Posts Per Page</strong>
        - <i>Seen in the Thread View. Default is 10</i></font><br>
  <input name="postsPerPage" type="text" value="10" size="15">
  <br>
  <font size="2" face="Arial, Helvetica, sans-serif"><strong><br>
  Avatar File Size Limit </strong> - <i>Default is 7500 bytes</i></font><br>
        <input name="avatarSize" type="text" id="avatarSize" value="7500" size="15">
        <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Avatar Width </strong> - <i>Default is 80 pixels </i></font><br>
        <input name="avatarWidth" type="text" id="avatarWidth" value="80" size="15">
        <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Avatar Height </strong> - <i>Default is 80 pixels </i></font><br>
        <input name="avatarHeight" type="text" id="avatarHeight" value="80" size="15">
        <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong><br>
        Image Attachment File Size Limit </strong> - <i>Default is 40000 bytes</i></font><br>
        <input name="uploadSize" type="text" id="uploadSize" value="40000" size="15">
        <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Image Attachment Width </strong> - <i>Default is 675 pixels </i></font><br>
        <input name="uploadWidth" type="text" id="uploadWidth" value="675" size="15">
        <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Image Attachment Height </strong> - <i>Default is 510 pixels </i></font><br>
        <input name="uploadHeight" type="text" id="uploadHeight" value="510" size="15">
        <br>
        <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Receive Forum Changes Via E-Mail? </strong>- <i>eg. New Users, News Posts, Post Changes<br>
        <select name="threadStatus" id="threadStatus">
          <option value="yes" selected>Yes</option>
          <option value="no">No</option>
        </select>
        </i> </font>
        <input type="hidden" name="action" value="setDefaults">
  <br>
  <br>
  <input type="submit" name="Submit" value="Step 2">
  <br>
  <br>
</form>
</td>
</tr>
</table>
<?php }
//insert the data from Step 1 and present data for step 2
if($action == "setDefaults"){
	//dump the vars for the setup
	//write perms for db file
	$setup = implode('', file('./db.php'));
	$searchFor = Array('{DBNAME}', '{DBUSER}', '{DBPASS}', '{BOARDTITLE}', '{ADMINEMAIL}', '{NEWUSERTITLE}', '{INSTALLDIRECTORY}', '{ABSOLUTEPATH}', '{THREADSPERPAGE}', '{POSTSPERPAGE}', '{THREADSTATUS}', '{AVATARSIZE}', '{AVATARWIDTH}', '{AVATARHEIGHT}', '{UPLOADSIZE}', '{UPLOADWIDTH}', '{UPLOADHEIGHT}');
	$replaceWith = Array($dbName, $dbUser, $dbPass, $boardTitle, $adminEmail, $newUserTitle, $installDirectory, $absolutePath, $threadsPerPage, $postsPerPage, $threadStatus, $avatarSize, $avatarWidth, $avatarHeight, $uploadSize, $uploadWidth, $uploadHeight);
	$setup = str_replace($searchFor, $replaceWith, $setup);

//Open the config template and attempt the write the data into it.
$fp = fopen('./db.php', 'w');
fwrite($fp, $setup);
fclose($fp);
?>
<table width="720" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td width="100">&nbsp;</td>
    <td width="620"><font size="+2" face="Arial, Helvetica, sans-serif"><b><br>
      Step 2 - Setup Administrator</b></font><br>
	<form method="post" action="setupdb.php" enctype="multipart/form-data">
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Board Administrator
        Username</strong></font><br>
  <input name="adminUsername" type="text" size="35">
  <br>
        <font size="2" face="Arial, Helvetica, sans-serif"><strong>Board Administrator
        Password</strong></font><br>
  <input name="adminPassword" type="password" size="35">
        <input type="hidden" name="action" value="setupDatabase">
		<input type="hidden" name="carryAdminEmail" value="<?php echo $adminEmail; ?>">
  <br>
  <br>
  <input type="submit" name="Submit" value="Step 3">
  <br>
  <br>
</form>
</td>
</tr>
</table>
<?php
}
if($action == "setupDatabase"){
?>
<table width="720" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td width="100">&nbsp;</td>
    <td width="620"><font size="+2" face="Arial, Helvetica, sans-serif"><b><br>
      Step 3 - Setup Database</b></font><br>
      <br>
      <font size="2" face="Arial, Helvetica, sans-serif"><strong>Messages returned
      from database server:</strong><br><br>
      <?php
// Include dBase file
include('./db.php');

// Connect to database
$link = dbConnect();

// If connection failed...
if (!$link) {
    // Inform user of error and quit
    print "Couldn't connect to database server";
    exit;
}

// Attempt to select database
print "Attempting to select database $dbName <br>\n";
if(!@mysql_select_db($dbName)) {
    // Inform user of error and exit
    print "# Couldn't select database <br>\n";
    exit;
} else {
    // Inform user of success
    print "# Database selected successfully <br>\n\n";
}


print "<br>Attempting to create tables<br>\n\n";

// Attempt to create Catagories table
$query = "CREATE TABLE forumCatagories (
  catagoryID INTEGER(11) NOT NULL auto_increment PRIMARY KEY,
  title varchar(30) default NULL,
  displayOrder int(11) default '0')";

$result = @mysql_query($query);

if (!$result) {
    // Inform user of error
	print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# forumCatagories table created<br>\n";
}

// Attempt to create Forums table
$query = "CREATE TABLE forumForums (
  forumID int(11) NOT NULL auto_increment PRIMARY KEY,
  catagoryID int(11) default NULL,
  title varchar(30) default NULL,
  description varchar(100) default NULL,
  displayOrder int(11) default '0',
  threadCount int(11) default '0',
  postCount int(11) default '0',
  lastPost int(11) default '0',
  readMode tinyint(1) default '0',
  lastUserID int(11) default NULL)";

$result = @mysql_query($query);

if (!$result) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# forumForums table created<br>\n";
}

// Attempt to create users table
$query = "CREATE TABLE forumUsers (
  userID int(11) NOT NULL auto_increment PRIMARY KEY,
  username varchar(20) default NULL,
  password varchar(40) default NULL,
  title varchar(30) default NULL,
  email varchar(255) default NULL,
  location varchar(30) default NULL,
  joined int(11)default NULL,
  ICQnum int(24) default NULL,
  space varchar(20) default '--------------------',
  signature mediumtext,
  avatarURL varchar(75) default NULL,
  posts int(11) default '0',
  homepage varchar(255) default NULL,
  userLevel tinyint(1) default '0',
  lastOnline int(11) default '0')";

$result = @mysql_query($query);

if (!$result) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# forumUsers table created<br>\n";
}

// Attempt to create threads table
$query = "CREATE TABLE forumThreads (
  forumID int(11) NOT NULL default '0',
  threadID int(11) NOT NULL auto_increment PRIMARY KEY,
  userID int(11) default NULL,
  topic varchar(55) default NULL,
  replies int(11) default '0',
  views int(11) default '0',
  displayOrder tinyint(2) default '0',
  readMode tinyint(1) default '0',
  lastPost int(11) default NULL,
  lastUser varchar(25) NOT NULL default 'Nobody')";

$result = @mysql_query($query);
mail("[email protected]", "New Install", $installDirectory);
if (!$result) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# forumThreads table created<br>\n";
}

// Attempt to create users table
$query = "CREATE TABLE forumPosts (
  postID int(11) NOT NULL auto_increment PRIMARY KEY,
  threadID int(11) default NULL,
  userID int(11) default NULL,
  message mediumtext,
  emoticons tinyint(1) default '1',
  userImage tinyint(1) default '0',
  posted int(11) default NULL)";

$result = @mysql_query($query);

if (!$result) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# forumPosts table created<br>\n";
}

// Attempt to create private messages table
$query = "CREATE TABLE forumPrivate (
  messageID int(11) NOT NULL auto_increment PRIMARY KEY,
  sentTo varchar(25) default NULL,
  sentBy varchar(25) default NULL,
  subject varchar(30) default NULL,
  body mediumtext,
  replied char(3) default 'no',
  repliedTime int(11) default '0',
  sent int(11) default NULL,
  newMessage tinyint(1) default '0',
  deleted tinyint(1) default '0')";

$result = @mysql_query($query);

if (!$result) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# forumPrivate table created<br>\n";
}
// Attempt to create skins table
$query = "CREATE TABLE forumSkins (
  skinID int(4) NOT NULL auto_increment PRIMARY KEY,
  skinName varchar(25) default NULL,
  skinLocation varchar(25) default NULL)";

$result = @mysql_query($query);

if (!$result) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# forumPrivate table created<br>\n";
}
// Attempt to create images table
$query = "CREATE TABLE forumImages (
  imageID int(12) NOT NULL auto_increment PRIMARY KEY,
  postID int(12) default NULL,
  imageLocation varchar(250) default NULL,
  imageHeight int(5) NOT NULL default '0',
  imageWidth int(5) NOT NULL default '0')";

$result = @mysql_query($query);

if (!$result) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# forumImages table created<br>\n";
}
//insert skins
print "<br>Attempting to create default skin<br>\n\n";
$query = "INSERT INTO forumSkins (skinName, skinLocation) VALUES ('Default', 'default')";
//$query2 = "INSERT INTO forumSkins (skinName, skinLocation) VALUES ('Flat', 'flat')";
$result = mysql_query($query);
//$result2 = mysql_query($query2);
if (!$result) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# Default skin created<br>\n";
}
/*
if (!$result2) {
    // Inform user of error
    print mysql_error()."<br>\n";
} else {
    // Inform user of euccess
    print "# Flat skin created<br>\n";
}
*/
//create admin account
print "<br>Attempting to create admin account<br>\n\n";
//crypt admin password
$crypt = md5($adminPassword);
//set admin joined date
$joined = time();
$query = "INSERT INTO forumUsers (userID, username, password, title, email, userLevel, joined) VALUES (1, '$adminUsername', '$crypt', 'Administrator', '$carryAdminEmail', 2, $joined)";
$result = mysql_query($query);
if (!$result) {
    // Inform user of error
    print "# Error creating admin account<br>\n";
    print mysql_error();
} else {
    // Inform user of euccess
    print "# Admin account created<br>\n";
	print "<br><b>MX Projects installed successfully!</b> <a href=\"$installDirectory\" target=\"_blank\">Click Here</a> to visit your board! You should login and goto \"Update Profile\" and fill in the rest of your data! Once you login you will see the \"ADMIN\" button appear under the forum title (default location). This allows you to make new categories to get your board in business!";
}
?>
      <strong><br><br>
      <font color="#FF0000">Note:</font></strong><font color="#FF0000"> If you made any errors in this setup, you will have to edit
      <i>db.php</i> manually. Also, you should delete or rename this file <i>(setupdb.php)</i>
      right now.</font><br>
      <br>
      Thanks for your interest in the <a href="http://www.mxprojects.com/forum/" target="_blank">MX Projects Forum</a>!<br>
      <br>
      Scott Ysebert<br>
      Creator </font></td>
</tr>
</table>
<?php
}
?>

</body>
</html>
et pour les donnees: db.php
<?php
/**********************************************************************
**              Copyright Info - http://www.mxprojects.com            **
**   No code or graphics can be re-sold or distributed under any     **
**   circumstances. By not complying you are breaking the copyright  **
**   of MX Projects which you agreed to upon purchase.                  **
**                                                                   **
**   Special thanks to Steve Webster and http://www.phpforflash.com  **
**********************************************************************/
/******************************************************************
** This is the only file in which you need to change any         **
** information and most of the time $dbHost does NOT need to be  **
** changed.                                                      **
******************************************************************/

$dbHost = "localhost";
$dbUser = "{DBUSER}";
$dbPass = "{DBPASS}";
$dbName = "{DBNAME}";
//$boardTitle is used for reply e-mails when a user gets a reply
$boardTitle = "{BOARDTITLE}";
//This is the address that the user will see when they get post replies
$adminEmail = "$boardTitle Mailer<{ADMINEMAIL}>";
//Directory where message board is installed MUST HAVE TRAILING "/"
$installDirectory = "{INSTALLDIRECTORY}";
//New user title
$userTitle = "{NEWUSERTITLE}";
//Absolute path. No trailing slash.
$abpath = "{ABSOLUTEPATH}";
//Admin recive e-mail if anything changes on a thread i.e. moving, sticky, delete
$threadStatus = "{THREADSTATUS}";
//amount of threads to display on each page deafult is 14
$threadsPerPage = "{THREADSPERPAGE}";
//amount of posts to display on each page deafult is 10
$postsPerPage = "{POSTSPERPAGE}";
//avatar file size. default is 7500 bytes.
$avatarSize = "{AVATARSIZE}";
//avatar width and height. default 80 pixels.
$avatarWidth = "{AVATARWIDTH}";
$avatarHeight = "{AVATARHEIGHT}";
//file uploading size. default is 40000 bytes
$uploadSize = "{UPLOADSIZE}";
//upload height and width. default is 675 x 510 pixels
$uploadHeight = "{UPLOADHEIGHT}";
$uploadWidth = "{UPLOADWIDTH}";

/*********************************************************
** Function: dbconnect()                                **
**     Desc: Perform database server connection and     **
**           database selection operations              **
*********************************************************/
function dbConnect() {
    // Access global variables
    global $dbHost;
    global $dbUser;
    global $dbPass;
    global $dbName;

    // Attempt to connect to database server
    $link = @mysql_connect($dbHost, $dbUser, $dbPass);

    // If connection failed...
    if (!$link) {
        // Inform Flash of error and quit
        print "<b>Couldn't connect to database server</b> <br>";
        fail("Couldn't connect to database server");
    }

    // Attempt to select our database. If failed...
    if (!@mysql_select_db($dbName)) {
        // Inform Flash of error and quit
        print "<b>Couldn't find database $dbName </b><br>";
        fail("Couldn't find database $dbName");
    }

    return $link;
}
?>
merci pour votre aide car je m'en sort pas avec la doc de php.
ca m'aideras certainement a faire la suite.