Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

CRÉATION D'UN ESPACE MEMBRE AVEC MYSQL


Information sur la source

Catégorie :SQL Niveau : Débutant Date de création : 16/03/2004 Date de mise à jour : 20/04/2004 16:38:43 Vu / téléchargé: 14 656 / 1 981

Note :
7,36 / 10 - par 11 personnes
7,36 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (42)
Ajouter un commentaire et/ou une note

Description

C'est la création d'un espace membre avec gestion des logins des utilisateurs par une base SQL et ajout d'un nouvel utilisateur par lui-même.
 

Source

  • -----------------Création des tables sql--------------------------------
  • CREATE TABLE `login` (
  • `username` VARCHAR( 40 ) NOT NULL ,
  • `password` VARCHAR( 40 ) NOT NULL ,
  • PRIMARY KEY ( `username` )
  • );
  • CREATE TABLE `info` (
  • `username` VARCHAR( 40 ) NOT NULL ,
  • `prenom` VARCHAR( 40 ) NOT NULL ,
  • `nom` VARCHAR( 40 ) NOT NULL ,
  • `address` VARCHAR( 40 ) NOT NULL ,
  • `email` VARCHAR( 40 ) NOT NULL ,
  • `birth` VARCHAR( 10 ) NOT NULL ,
  • PRIMARY KEY ( `username` )
  • );
  • --------------------------Index.php-----------------------------------------
  • <html>
  • <?
  • include("./head.html");
  • //alors la j'insere la page head.html qui contient tous les metas et ma feuille de style style.css
  • include("./path.php");
  • //La c pour récupérer la fonction spath() qui me donne le chemin d'accés à ma page:" http://nomserveur/nomrepertoire/"
  • echo "<h1 class=txt>Welcome to The Holster Guild</h1>";
  • //"class= " viens de ma feuille de style
  • echo "<table align=left class=cell>";
  • echo "<form action=".spath()."/index_sc.php method=post>";
  • ?>
  • // je créé deux form: une pour se logger... je renvoi sur index_sc.php
  • <tr><td width=10>Username</td><td width=10><input type="text" name="user" maxlengh=20 size=10 class=txt></td></tr>
  • <tr><td>Password</td><td><input type="password" name="pass" maxlengh=20 size=10 class=txt></td></tr>
  • <tr><td colspan=2 align=center><input type="submit" value=": : Login : :" class=bouton>&nbsp;<input type="reset" value=": : Cancel : :" class=bouton></td></tr>
  • </form>
  • <?
  • // et un autre pour s'enregistrer... je renvoi sur register.php
  • echo "<form action=".spath()."/register.php method=post>";
  • ?>
  • <input type=hidden name=user_color value=black>
  • <input type=hidden name=pass_color value=black>
  • <input type=hidden name=fname_color value=black>
  • <input type=hidden name=lname_color value=black>
  • <input type=hidden name=mel_color value=black>
  • <input type=hidden name=add_color value=black>
  • <input type=hidden name=user value="">
  • <input type=hidden name=fname value="">
  • <input type=hidden name=lname value="">
  • <input type=hidden name=add value="">
  • <input type=hidden name=mel value="">
  • <input type=hidden name=bdate value="">
  • // la g plein de paramètres c pour que register.php recoive bien tout les paramètres qu'il va utiliser
  • <tr><td colspan=2><input type="submit" value=": : Not a member? : :" class=bouton></td></tr>
  • </form>
  • </table>
  • </html>
  • -------------------------------index_sc.php-------------------------------
  • //c ce script qui controle la validité du username et du password
  • <?
  • include('./head.html');
  • include('./admin.php');
  • //admin.php c le script qui va me permettre d'utliser la fonction admin()
  • // cette fonction va me renvoyer un tableau contenant l'hôte de mon serveur SQL, le nom d'utilisateur et le mot de passe du serveur SQL
  • $user=$_POST['user'];
  • $pass=$_POST['pass'];
  • //je récupère le nom d'utilisateur et le mot de passe
  • $pass=MD5($pass);
  • //tout les mot de passe que j'enregistre ds ma base sont codé par la fonction MD5 on compare les mot de passe codé par la suite
  • $admin=admin();
  • //je stock le resultat de admin() ds le tableau $admin
  • $db=mysql_connect($admin[0],$admin[1],$admin[2]);
  • //puis je me connect a mon serveur SQL
  • mysql_select_db($admin[1],$db);
  • //puis je selectionne ma base de donnée SQL
  • //sous free la base porte toujours le meme nom que l'utilisateur ($admin[1])
  • $table=mysql_query("SELECT password FROM log WHERE username=\"$user\"",$db);
  • //requete SQL qui me permet de selectionner le mot de passe stocké ds la base qui correspond au nom utilisateur récupéré plus haut
  • $result=mysql_fetch_row($table);
  • mysql_close($db);
  • if($result[0]==$pass)
  • //je compare les deux mots de passe
  • {
  • echo "<h1 class=txt>Bienvenue $user</h1>";
  • // si il le bon mot de passe, la vous rajouter un include('tapage.html')
  • exit;
  • }
  • echo "<h1 class=txt>Vous n'êtes pas correctement identifié.</h1>";
  • //si il a pas le bon mot de passe ou si la requet sql ne renvoie rien, i.e. si l'utilisateur n'existe pas
  • ?>
  • ---------------------------register.php--------------------
  • //ce script sert uniquement à l'affichage du formulaire d'enregistrement
  • //seulement on doit lui passer les paramètres de couleur au cas ou l'utilisateur oublie un champs et doit etre réafficher dans ce cas
  • //si c pas kler tester sur mon site en oubliant de remplir des champs obligatoire, vous verrez tout de suite +vite!! :)
  • <?
  • include("./head.html");
  • include("./path.php");
  • $user_color=$_POST['user_color'];
  • $pass_color=$_POST['pass_color'];
  • $fname_color=$_POST['fname_color'];
  • $lname_color=$_POST['lname_color'];
  • $mel_color=$_POST['mel_color'];
  • $add_color=$_POST['add_color'];
  • //la je recupere toute mes couleur pour chaque element de mon formulaire
  • $user=$_POST['user'];
  • $fname=$_POST['fname'];
  • $lname=$_POST['lname'];
  • $add=$_POST['add'];
  • $mel=$_POST['mel'];
  • $bdate=$_POST['bdate'];
  • //la je recupere les infos deja rentrer par l'utilisateur pour pas qu'il de retape tout à taper a chaque fois
  • echo "<form action=".spath()."/register_sc.php method=post>";
  • // je renvoie les donnée vers un formualire de control register_sc.php qui dira si les données sont correctement entrées
  • echo "<h1 class=txt>Please fill in the register form...</h1>";
  • echo "<table align=center>";
  • echo "<tr><td colspan=2 align=center>(the fields marked with a * are required)</td></tr>";
  • //ben la c bien bourin mais c pa trop chaud, c juste l'affichage des données et du formulaire
  • echo "<tr><td><font color=$user_color>Choose a username: </font></td><td><input type=text name=user value=$user><font color=$user_color>*</font></td></tr>";
  • echo "<tr><td><font color=$pass_color>Choose your password: </font></td><td><input type=password name=pass><font color=$pass_color>*</font></td></tr>";
  • echo "<tr><td><font color=$pass_color>Re-enter your password: </font></td><td><input type=password name=pass_check><font color=$pass_color>*</font></td></tr>";
  • echo "<tr><td><font color=$fname_color>First Name: </font></td><td><input type=text name=fname value=$fname><font color=$fname_color>*</font></td></tr>";
  • echo "<tr><td><font color=$lname_color>Last Name: </font></td><td><input type=text name=lname value=$lname><font color=$lname_color>*</font></td></tr>";
  • echo "<tr><td><font color=$add_color>Locality: </font></td><td><input type=text name=add value=$add><font color=$add_color>* (NYC, Paris...)</font></td></tr>";
  • echo "<tr><td><font color=$mel_color>email: </font></td><td><input type=text name=mel value=$mel><font color=$mel_color>* (dd/mm/yyyy)</font></td></tr>";
  • echo "<tr><td>Birth Date: </td><td><input type=text name=bdate value=$bdate></td></tr>";
  • echo "<tr><td align=right><input type=submit value=\": : Register : :\" name=submit class=bouton></td><td align=center><input type=reset value=\": : Cancel : :\" class=bouton></td></tr>";
  • echo "</table>";
  • echo "</form>";
  • ?>
  • ------------------register_sc.php----------------------------
  • //c ce script qui va controler les données et le cas bon va alors enregistrer l'utilisateur ds la base SQL
  • // sinon l'utilisateur est renvoyé sur register.php
  • <?
  • include("./head.html");
  • include("./admin.php");
  • include("./path.php");
  • $admin=admin();
  • $user=$_POST['user'];
  • $pass=$_POST['pass'];
  • $fname=$_POST['fname'];
  • $lname=$_POST['lname'];
  • $add=$_POST['add'];
  • $mel=$_POST['mel'];
  • $bdate=$_POST['bdate'];
  • //la je recupere tout les données necessaires à l'enregistrement ds la base
  • if(!$_POST['user'])
  • // je teste si on a bien fournit un nom d'utilisteur
  • {
  • echo "<form action=".spath()."/register.php method=post>";
  • echo "<h1 class=txt>Vous avez oublié votre nom d'utilisateur!!</h1>";
  • echo "<center>";
  • echo " <input type=hidden name=user_color value=red>";
  • // je met la couleur de user en rouge
  • echo " <input type=hidden name=pass_color value=black>";
  • echo " <input type=hidden name=fname_color value=black>";
  • echo " <input type=hidden name=lname_color value=black>";
  • echo " <input type=hidden name=mel_color value=black>";
  • echo " <input type=hidden name=add_color value=black>";
  • echo " <input type=hidden name=user value=\"\">";
  • // et je renvoie un champs vide pour user
  • echo " <input type=hidden name=fname value=$fname>";
  • echo " <input type=hidden name=lname value=$lname>";
  • echo " <input type=hidden name=add value=$add>";
  • echo " <input type=hidden name=mel value=$mel>";
  • echo " <input type=hidden name=bdate value=$bdate>";
  • echo " <input type=submit value=\": : Revenir : :\" class=bouton>";
  • echo "</center>";
  • echo "</form>";
  • }
  • elseif(!$_POST['pass']||!$_POST['pass_check']||$_POST['pass']!=$_POST['pass_check'])
  • //la je control si il a bien rempli les deux meme mot de passe
  • //apres c toujours la meme chose que pour user: en rouge puis champs vide
  • {
  • echo "<form action=".spath()."/register.php method=post>";
  • echo "<h1 class=txt>Vous avez mal tapé votre mot de passe!!</h1>";
  • echo "<center>";
  • echo " <input type=hidden name=user_color value=black>";
  • echo " <input type=hidden name=pass_color value=red>";
  • echo " <input type=hidden name=fname_color value=black>";
  • echo " <input type=hidden name=lname_color value=black>";
  • echo " <input type=hidden name=mel_color value=black>";
  • echo " <input type=hidden name=add_color value=black>";
  • echo " <input type=hidden name=user value=$user>";
  • echo " <input type=hidden name=fname value=$fname>";
  • echo " <input type=hidden name=lname value=$lname>";
  • echo " <input type=hidden name=add value=$add>";
  • echo " <input type=hidden name=mel value=$mel>";
  • echo " <input type=hidden name=bdate value=$bdate>";
  • echo " <input type=submit value=\": : Revenir : :\" class=bouton>";
  • echo "</center>";
  • echo "</form>";
  • }
  • elseif(!$_POST['fname'])
  • {
  • echo "<form action=".spath()."/register.php method=post>";
  • echo "<h1 class=txt>Vous avez oublié votre prénom!!</h1>";
  • echo "<center>";
  • echo "<input type=hidden name=user_color value=black>";
  • echo "<input type=hidden name=pass_color value=black>";
  • echo "<input type=hidden name=fname_color value=red>";
  • echo "<input type=hidden name=lname_color value=black>";
  • echo "<input type=hidden name=mel_color value=black>";
  • echo " <input type=hidden name=add_color value=black>";
  • echo "<input type=hidden name=user value=$user>";
  • echo "<input type=hidden name=fname value=\"\">";
  • echo "<input type=hidden name=lname value=$lname>";
  • echo "<input type=hidden name=add value=$add>";
  • echo "<input type=hidden name=mel value=$mel>";
  • echo "<input type=hidden name=bdate value=$bdate>";
  • echo "<input type=submit value=\": : Revenir : :\" class=bouton>";
  • echo "</center>";
  • echo "</form>";
  • }
  • elseif(!$_POST['lname'])
  • {
  • echo "<form action=".spath()."/register.php method=post>";
  • echo "<h1 class=txt>Vous avez oublié votre nom!!</h1>";
  • echo "<center>";
  • echo " <input type=hidden name=user_color value=black>";
  • echo " <input type=hidden name=pass_color value=black>";
  • echo " <input type=hidden name=fname_color value=black>";
  • echo " <input type=hidden name=lname_color value=red>";
  • echo " <input type=hidden name=mel_color value=black>";
  • echo " <input type=hidden name=add_color value=black>";
  • echo " <input type=hidden name=user value=$user>";
  • echo " <input type=hidden name=fname value=$fname>";
  • echo " <input type=hidden name=lname value=\"\">";
  • echo " <input type=hidden name=add value=$add>";
  • echo " <input type=hidden name=mel value=$mel>";
  • echo " <input type=hidden name=bdate value=$bdate>";
  • echo " <input type=submit value=\": : Revenir : :\" class=bouton>";
  • echo "</center>";
  • echo "</form>";
  • }
  • elseif(!$_POST['mel'])
  • {
  • echo "<form action=".spath()."/register.php method=post>";
  • echo "<h1 class=txt>Vous avez oublié votre email!!</h1>";
  • echo "<center>";
  • echo " <input type=hidden name=user_color value=black>";
  • echo " <input type=hidden name=pass_color value=black>";
  • echo " <input type=hidden name=fname_color value=black>";
  • echo " <input type=hidden name=lname_color value=black>";
  • echo " <input type=hidden name=mel_color value=red>";
  • echo " <input type=hidden name=add_color value=black>";
  • echo " <input type=hidden name=user value=$user>";
  • echo " <input type=hidden name=fname value=$fname>";
  • echo " <input type=hidden name=lname value=$lname>";
  • echo " <input type=hidden name=add value=$add>";
  • echo " <input type=hidden name=mel value=\"\">";
  • echo " <input type=hidden name=bdate value=$bdate>";
  • echo " <input type=submit value=\": : Revenir : :\" class=bouton>";
  • echo "</center>";
  • echo "</form>";
  • }
  • elseif(!$_POST['add'])
  • {
  • echo "<form action=".spath()."/register.php method=post>";
  • echo "<h1 class=txt>Vous avez oublié votre Localité!!</h1>";
  • echo "<center>";
  • echo " <input type=hidden name=user_color value=black>";
  • echo " <input type=hidden name=pass_color value=black>";
  • echo " <input type=hidden name=fname_color value=black>";
  • echo " <input type=hidden name=lname_color value=black>";
  • echo " <input type=hidden name=mel_color value=black>";
  • echo " <input type=hidden name=add_color value=red>";
  • echo " <input type=hidden name=user value=$user>";
  • echo " <input type=hidden name=fname value=$fname>";
  • echo " <input type=hidden name=lname value=$lname>";
  • echo " <input type=hidden name=add value=\"\">";
  • echo " <input type=hidden name=mel value=$mel>";
  • echo " <input type=hidden name=bdate value=$bdate>";
  • echo " <input type=submit value=\": : Revenir : :\" class=bouton>";
  • echo "</center>";
  • echo "</form>";
  • }
  • else
  • //si les teste du haut sont tous bon alors on enregsitre, MAIS il fo controler si l'utilisateur ne s'est pas deja enregister!!
  • {
  • $db=mysql_connect($admin[0],$admin[1],$admin[2]);
  • mysql_select_db($admin[1],$db);
  • $pass=MD5($pass);
  • $table=mysql_query("SELECT username FROM log",$db);
  • $result=mysql_fetch_row($table);
  • foreach($result as $ans)
  • {
  • if (strtolower($ans)==strtolower($user))
  • //la je compare les noms d'utilisateur
  • //je transforme les chaines en chaine minuscule pour ne pas prendre ne compte la casse
  • {
  • echo "<h1 class=txt>L'utilisateur existe déja!!</h1>";
  • mysql_close($db);
  • exit;
  • }
  • }
  • mysql_query("INSERT INTO `log` VALUES ('$user','$pass')",$db);
  • mysql_query("INSERT INTO `info` VALUES ('$user','$fname','$lname','$add','$mel','$bdate')",$db);
  • //si pas de meme utilisateur alors on ecrit dans la base les données récupérées plus haut!!
  • mysql_close($db);
  • echo "<h1 class=txt>Vous avez bien été enregistré $user</h1>";
  • }
  • ?>
  • ----------admin.php----------
  • //en fait cette fonction fait appel à un fichier, caché de préférence, qui contient le nom d'utilisateur et le mot de passe du serveur SQL qui contient la base de donnée
  • // ce fichier se nomme .htadmin, il commence par un point pour ne pas etre affiché par le serveur apache (pour ce cacher)
  • //ce fichier est stocké dans un repertoir log/
  • //Pour interdire l'acces de ce repertoir afin d'etre sûr que personne viendra regarder dans .htadmin, il faut definir un autre fichier: .htaccess
  • //( à ne pas mettre sur la racine de votre compte web sinon vous n'y aurait plus acces!! sauf si vous configurer .htaccess pour un acces restreint mais la c un autre problème!!)
  • <?
  • function admin()
  • {
  • $fpath="./log/.htadmin";
  • if(is_readable($fpath))
  • // je teste si le fichier est lisible
  • {
  • if(!$f=fopen($fpath,'r'))
  • //j'ouvre le fichier
  • {
  • echo "Erreur d'ouverture du fichier.";
  • exit;
  • }
  • else
  • {
  • $str=fgets($f);
  • //je lis la seule et unique ligne de mon fichier
  • list($user,$pass)=split(":",$str);
  • //je separe cette chaine en deux chaines $user et $pass par ":" car mes deux chamsp dans mon fichier sont séparer par un ":"
  • $host="sql.free.rr";
  • // je recupere l'adresse de mon hote qui contient ma bases de donnéé
  • return array($host,$user,$pass);
  • // je renvoie un tableau (array) qui en premier index aura l'hote en deuxiéme l'utlisateur et en 3eme le mot de passe
  • }
  • }
  • else
  • {
  • echo "Le fichier n'est pas lisible.";
  • exit;
  • }
  • }
  • ?>
  • --------------------------htacess--------------------------
  • //dans htaccess pour interdire l'acces au repertoire vous mettez seulement cette ligne
  • deny from all
  • -----------fin------
-----------------Création des tables sql--------------------------------
CREATE TABLE `login` (
`username` VARCHAR( 40 ) NOT NULL ,
`password` VARCHAR( 40 ) NOT NULL ,
PRIMARY KEY ( `username` )
);

CREATE TABLE `info` (
`username` VARCHAR( 40 ) NOT NULL ,
`prenom` VARCHAR( 40 ) NOT NULL ,
`nom` VARCHAR( 40 ) NOT NULL ,
`address` VARCHAR( 40 ) NOT NULL ,
`email` VARCHAR( 40 ) NOT NULL ,
`birth` VARCHAR( 10 ) NOT NULL ,
PRIMARY KEY ( `username` ) 
);
--------------------------Index.php-----------------------------------------
<html>
<?
	include("./head.html");

//alors la j'insere la page head.html qui contient tous les metas et ma feuille de style style.css

	include("./path.php");

//La c pour récupérer la fonction spath() qui me donne le chemin d'accés à ma page:" http://nomserveur/nomrepertoire/"

	echo "<h1 class=txt>Welcome to The Holster Guild</h1>";

//"class= " viens de ma feuille de style

	echo "<table align=left class=cell>";
	echo "<form action=".spath()."/index_sc.php method=post>";
?>

// je créé deux form: une pour se logger... je renvoi sur index_sc.php

	<tr><td width=10>Username</td><td width=10><input type="text" name="user" maxlengh=20 size=10 class=txt></td></tr>
	<tr><td>Password</td><td><input type="password" name="pass" maxlengh=20 size=10 class=txt></td></tr>
	<tr><td colspan=2 align=center><input type="submit" value=": : Login : :" class=bouton>&nbsp;<input type="reset" value=": : Cancel : :" class=bouton></td></tr>
</form>
<?

// et un autre pour s'enregistrer... je renvoi sur register.php

	echo "<form action=".spath()."/register.php method=post>";		
?>
		<input type=hidden name=user_color value=black>
		<input type=hidden name=pass_color value=black>
		<input type=hidden name=fname_color value=black>
		<input type=hidden name=lname_color value=black>
		<input type=hidden name=mel_color value=black>
		<input type=hidden name=add_color value=black>
		<input type=hidden name=user value="">
		<input type=hidden name=fname value="">
		<input type=hidden name=lname value="">
		<input type=hidden name=add value="">
		<input type=hidden name=mel value="">
		<input type=hidden name=bdate value="">

// la g plein de paramètres c pour que register.php recoive bien tout les paramètres qu'il va utiliser

		<tr><td colspan=2><input type="submit" value=": : Not a member? : :" class=bouton></td></tr>
	</form>
	</table>
</html>

-------------------------------index_sc.php-------------------------------

//c ce script qui controle la validité du username et du password
<?
	include('./head.html');
	include('./admin.php');

//admin.php c le script qui va me permettre d'utliser la fonction admin()
// cette fonction va me renvoyer un tableau contenant l'hôte de mon serveur SQL, le nom d'utilisateur et le mot de passe du serveur SQL

	$user=$_POST['user'];
	$pass=$_POST['pass'];

//je récupère le nom d'utilisateur et le mot de passe

	$pass=MD5($pass);

//tout les mot de passe que j'enregistre ds ma base sont codé par la fonction MD5 on compare les mot de passe codé par la suite

	$admin=admin(); 

//je stock le resultat de admin() ds le tableau $admin

	$db=mysql_connect($admin[0],$admin[1],$admin[2]);

//puis je me connect a mon serveur SQL

	mysql_select_db($admin[1],$db);

//puis je selectionne ma base de donnée SQL
//sous free la base porte toujours le meme nom que l'utilisateur ($admin[1])

	$table=mysql_query("SELECT password FROM log WHERE username=\"$user\"",$db);

//requete SQL qui me permet de selectionner le mot de passe stocké ds la base qui correspond au nom utilisateur récupéré plus haut

	$result=mysql_fetch_row($table);
	mysql_close($db);
	if($result[0]==$pass)

//je compare les deux mots de passe

	{
		echo "<h1 class=txt>Bienvenue $user</h1>";

// si il le bon mot de passe, la vous rajouter un include('tapage.html') 

		exit;
	}
	echo "<h1 class=txt>Vous n'êtes pas correctement identifié.</h1>";

//si il a pas le bon mot de passe ou si la requet sql ne renvoie rien, i.e. si l'utilisateur n'existe pas
?>

---------------------------register.php--------------------

//ce script sert uniquement à l'affichage du formulaire d'enregistrement
//seulement on doit lui passer les paramètres de couleur au cas ou l'utilisateur oublie un champs et doit etre réafficher dans ce cas
//si c pas kler tester sur mon site en oubliant de remplir des champs obligatoire, vous verrez tout de suite +vite!! :)
<?
	include("./head.html");
	include("./path.php");
	$user_color=$_POST['user_color'];
	$pass_color=$_POST['pass_color'];
	$fname_color=$_POST['fname_color'];
	$lname_color=$_POST['lname_color'];
	$mel_color=$_POST['mel_color'];
	$add_color=$_POST['add_color'];

//la je recupere toute mes couleur pour chaque element de mon formulaire

	$user=$_POST['user'];
	$fname=$_POST['fname'];
	$lname=$_POST['lname'];
	$add=$_POST['add'];
	$mel=$_POST['mel'];
	$bdate=$_POST['bdate'];

//la je recupere les infos deja rentrer par l'utilisateur pour pas qu'il de retape tout à taper a chaque fois

	echo "<form action=".spath()."/register_sc.php method=post>";

// je renvoie les donnée vers un formualire de control register_sc.php qui dira si les données sont correctement entrées

	echo "<h1 class=txt>Please fill in the register form...</h1>";
	echo "<table align=center>";
	echo "<tr><td colspan=2 align=center>(the fields marked with a * are required)</td></tr>";

//ben la c bien bourin mais c pa trop chaud, c juste l'affichage des données et du formulaire

	echo "<tr><td><font color=$user_color>Choose a username: </font></td><td><input type=text name=user value=$user><font color=$user_color>*</font></td></tr>";
	echo "<tr><td><font color=$pass_color>Choose your password: </font></td><td><input type=password name=pass><font color=$pass_color>*</font></td></tr>";
	echo "<tr><td><font color=$pass_color>Re-enter your password: </font></td><td><input type=password name=pass_check><font color=$pass_color>*</font></td></tr>";
	echo "<tr><td><font color=$fname_color>First Name: </font></td><td><input type=text name=fname value=$fname><font color=$fname_color>*</font></td></tr>";
	echo "<tr><td><font color=$lname_color>Last Name: </font></td><td><input type=text name=lname value=$lname><font color=$lname_color>*</font></td></tr>";
	echo "<tr><td><font color=$add_color>Locality: </font></td><td><input type=text name=add value=$add><font color=$add_color>* (NYC, Paris...)</font></td></tr>";
	echo "<tr><td><font color=$mel_color>email: </font></td><td><input type=text name=mel value=$mel><font color=$mel_color>* (dd/mm/yyyy)</font></td></tr>";
	echo "<tr><td>Birth Date: </td><td><input type=text name=bdate value=$bdate></td></tr>";
		
	echo "<tr><td align=right><input type=submit value=\": : Register : :\" name=submit class=bouton></td><td align=center><input type=reset value=\": : Cancel : :\" class=bouton></td></tr>";
	echo "</table>";
	echo "</form>";
?>


------------------register_sc.php----------------------------

//c ce script qui va controler les données et le cas bon va alors enregistrer l'utilisateur ds la base SQL
// sinon l'utilisateur est renvoyé sur register.php

<?
	include("./head.html");
	include("./admin.php");
	include("./path.php");
	$admin=admin();
	$user=$_POST['user'];
	$pass=$_POST['pass'];
	$fname=$_POST['fname'];
	$lname=$_POST['lname'];
	$add=$_POST['add'];
	$mel=$_POST['mel'];
	$bdate=$_POST['bdate'];

//la je recupere tout les données necessaires à l'enregistrement ds la base

	if(!$_POST['user'])

// je teste si on a bien fournit un nom d'utilisteur

	{
		echo "<form action=".spath()."/register.php method=post>";
		echo "<h1 class=txt>Vous avez oublié votre nom d'utilisateur!!</h1>";
		echo "<center>";
		echo "	<input type=hidden name=user_color value=red>";

// je met la couleur de user en rouge

		echo "	<input type=hidden name=pass_color value=black>";
		echo "	<input type=hidden name=fname_color value=black>";
		echo "	<input type=hidden name=lname_color value=black>";
		echo "	<input type=hidden name=mel_color value=black>";
		echo "	<input type=hidden name=add_color value=black>";
		echo "	<input type=hidden name=user value=\"\">";

// et je renvoie un champs vide pour user

		echo "	<input type=hidden name=fname value=$fname>";
		echo "	<input type=hidden name=lname value=$lname>";
		echo "	<input type=hidden name=add value=$add>";
		echo "	<input type=hidden name=mel value=$mel>";
		echo "	<input type=hidden name=bdate value=$bdate>";
		echo "	<input type=submit value=\": : Revenir : :\" class=bouton>";
		echo "</center>";
		echo "</form>";
	}
	elseif(!$_POST['pass']||!$_POST['pass_check']||$_POST['pass']!=$_POST['pass_check'])

//la je control si il a bien rempli les deux meme mot de passe
//apres c toujours la meme chose que pour user: en rouge puis champs vide

	{
		echo "<form action=".spath()."/register.php method=post>";
		echo "<h1 class=txt>Vous avez mal tapé votre mot de passe!!</h1>";
		echo "<center>";
		echo "	<input type=hidden name=user_color value=black>";
		echo "	<input type=hidden name=pass_color value=red>";
		echo "	<input type=hidden name=fname_color value=black>";
		echo "	<input type=hidden name=lname_color value=black>";
		echo "	<input type=hidden name=mel_color value=black>";
		echo "	<input type=hidden name=add_color value=black>";
		echo "	<input type=hidden name=user value=$user>";
		echo "	<input type=hidden name=fname value=$fname>";
		echo "	<input type=hidden name=lname value=$lname>";
		echo "	<input type=hidden name=add value=$add>";
		echo "	<input type=hidden name=mel value=$mel>";
		echo "	<input type=hidden name=bdate value=$bdate>";
		echo "	<input type=submit value=\": : Revenir : :\" class=bouton>";
		echo "</center>";
		echo "</form>";
	}
	elseif(!$_POST['fname'])
	{
		echo "<form action=".spath()."/register.php method=post>";
		echo "<h1 class=txt>Vous avez oublié votre prénom!!</h1>";
		echo "<center>";
		echo "<input type=hidden name=user_color value=black>";
		echo "<input type=hidden name=pass_color value=black>";
		echo "<input type=hidden name=fname_color value=red>";
		echo "<input type=hidden name=lname_color value=black>";
		echo "<input type=hidden name=mel_color value=black>";
		echo "	<input type=hidden name=add_color value=black>";
		echo "<input type=hidden name=user value=$user>";
		echo "<input type=hidden name=fname value=\"\">";
		echo "<input type=hidden name=lname value=$lname>";
		echo "<input type=hidden name=add value=$add>";
		echo "<input type=hidden name=mel value=$mel>";
		echo "<input type=hidden name=bdate value=$bdate>";
		echo "<input type=submit value=\": : Revenir : :\" class=bouton>";
		echo "</center>";
		echo "</form>";
	}
	elseif(!$_POST['lname'])
	{
		echo "<form action=".spath()."/register.php method=post>";
		echo "<h1 class=txt>Vous avez oublié votre nom!!</h1>";
		echo "<center>";
		echo "	<input type=hidden name=user_color value=black>";
		echo "	<input type=hidden name=pass_color value=black>";
		echo "	<input type=hidden name=fname_color value=black>";
		echo "	<input type=hidden name=lname_color value=red>";
		echo "	<input type=hidden name=mel_color value=black>";
		echo "	<input type=hidden name=add_color value=black>";
		echo "	<input type=hidden name=user value=$user>";
		echo "	<input type=hidden name=fname value=$fname>";
		echo "	<input type=hidden name=lname value=\"\">";
		echo "	<input type=hidden name=add value=$add>";
		echo "	<input type=hidden name=mel value=$mel>";
		echo "	<input type=hidden name=bdate value=$bdate>";
		echo "	<input type=submit value=\": : Revenir : :\" class=bouton>";
		echo "</center>";
		echo "</form>";
	}
	elseif(!$_POST['mel'])
	{
		echo "<form action=".spath()."/register.php method=post>";
		echo "<h1 class=txt>Vous avez oublié votre email!!</h1>";
		echo "<center>";
		echo "	<input type=hidden name=user_color value=black>";
		echo "	<input type=hidden name=pass_color value=black>";
		echo "	<input type=hidden name=fname_color value=black>";
		echo "	<input type=hidden name=lname_color value=black>";
		echo "	<input type=hidden name=mel_color value=red>";
		echo "	<input type=hidden name=add_color value=black>";
		echo "	<input type=hidden name=user value=$user>";
		echo "	<input type=hidden name=fname value=$fname>";
		echo "	<input type=hidden name=lname value=$lname>";
		echo "	<input type=hidden name=add value=$add>";
		echo "	<input type=hidden name=mel value=\"\">";
		echo "	<input type=hidden name=bdate value=$bdate>";
		echo "	<input type=submit value=\": : Revenir : :\" class=bouton>";
		echo "</center>";
		echo "</form>";
	}
	elseif(!$_POST['add'])
	{
		echo "<form action=".spath()."/register.php method=post>";
		echo "<h1 class=txt>Vous avez oublié votre Localité!!</h1>";
		echo "<center>";
		echo "	<input type=hidden name=user_color value=black>";
		echo "	<input type=hidden name=pass_color value=black>";
		echo "	<input type=hidden name=fname_color value=black>";
		echo "	<input type=hidden name=lname_color value=black>";
		echo "	<input type=hidden name=mel_color value=black>";
		echo "	<input type=hidden name=add_color value=red>";
		echo "	<input type=hidden name=user value=$user>";
		echo "	<input type=hidden name=fname value=$fname>";
		echo "	<input type=hidden name=lname value=$lname>";
		echo "	<input type=hidden name=add value=\"\">";
		echo "	<input type=hidden name=mel value=$mel>";
		echo "	<input type=hidden name=bdate value=$bdate>";
		echo "	<input type=submit value=\": : Revenir : :\" class=bouton>";
		echo "</center>";
		echo "</form>";
	}
	else

//si les teste du haut sont tous bon alors on enregsitre, MAIS il fo controler si l'utilisateur ne s'est pas deja enregister!!

	{
		$db=mysql_connect($admin[0],$admin[1],$admin[2]);
		mysql_select_db($admin[1],$db);
		$pass=MD5($pass);
		$table=mysql_query("SELECT username FROM log",$db);
		$result=mysql_fetch_row($table);
		foreach($result as $ans)
		{
			if (strtolower($ans)==strtolower($user))

//la je compare les noms d'utilisateur
//je transforme les chaines en chaine minuscule pour ne pas prendre ne compte la casse
			{
				echo "<h1 class=txt>L'utilisateur existe déja!!</h1>";
				mysql_close($db);
				exit;
			}
		}
		mysql_query("INSERT INTO `log` VALUES ('$user','$pass')",$db);
		mysql_query("INSERT INTO `info` VALUES ('$user','$fname','$lname','$add','$mel','$bdate')",$db);

//si pas de meme utilisateur alors on ecrit dans la base les données récupérées plus haut!!

		mysql_close($db);
		echo "<h1 class=txt>Vous avez bien été enregistré $user</h1>";
	}
?>


----------admin.php----------
//en fait cette fonction fait appel à un fichier, caché de préférence, qui contient le nom d'utilisateur et le mot de passe du serveur SQL qui contient la base de donnée
// ce fichier se nomme .htadmin, il commence par un point pour ne pas etre affiché par le serveur apache (pour ce cacher)

//ce fichier est stocké dans un repertoir log/ 
//Pour interdire l'acces  de ce repertoir afin d'etre sûr que personne viendra regarder dans .htadmin, il faut definir un autre fichier: .htaccess 
//( à ne pas mettre sur la racine de votre compte web sinon vous n'y aurait plus acces!! sauf si vous configurer .htaccess pour un acces restreint mais la c un autre problème!!)
<?
function admin()
{
	$fpath="./log/.htadmin";
	if(is_readable($fpath))

// je teste si le fichier est lisible

	{
		if(!$f=fopen($fpath,'r'))

//j'ouvre le fichier

		{
			echo "Erreur d'ouverture du fichier.";
			exit;
		}
		else
		{
			$str=fgets($f);

//je lis la seule et unique ligne de mon fichier

			list($user,$pass)=split(":",$str);

//je separe cette chaine en deux chaines $user et $pass par ":" car mes deux chamsp dans mon fichier sont séparer par un ":"

			$host="sql.free.rr"; 

// je recupere l'adresse de mon hote qui contient ma bases de donnéé

			return array($host,$user,$pass);

// je renvoie un tableau (array) qui en premier index aura l'hote en deuxiéme l'utlisateur et en 3eme le mot de passe

		}
	}
	else
	{
		echo "Le fichier n'est pas lisible.";
		exit;
	}
}
?>


--------------------------htacess--------------------------
//dans htaccess pour interdire l'acces au repertoire vous mettez seulement cette ligne

deny from all



-----------fin------

Conclusion

Bon suite aux mails reçu je v expliquer un peu plus en details (frbos c pour toa!!)


voila

apres y peut y avoir un complèment sur les feuilles de style
sinon fo connaitre un minimum les formulaires et php mais c pas dur et je peux vous expliquer mais cette fois en privée!! ;)

résultat sur http://nifhell.free.fre

si vous avez des suggestions et j'en suis avide => email!!


Alors c pour vous eMaylo et Julienmath:
Suite aux messages je précise la création des tables (c vraiment pour vous faire plaisir)...

 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Commentaires et avis

signaler à un administrateur
Commentaire de fabri62 le 24/03/2004 18:40:14

Salut,

Ca m'a pas l'air mal, mais je n'ai pas trouver ta table Sql ??

Fabrice.

signaler à un administrateur
Commentaire de Nifhell le 24/03/2004 19:34:41

salut,

je ne donne pas le code source dce création des tables sql car ils sont fournis à foison sur ce site... à toi de chercher un peu, c pas tres compliqué

c juste deux tables, une 'login' qui contient 2 champs de type VARCHAR un 'username' (c la clé primaire) l'autre 'password'
l'autre table s'appelle 'info' qui contient 5 champs de type VARCHAR 'username' (c la clé primaire), 'nom', 'prenom','ville','date de naissance'...


voilà voilà
@++

signaler à un administrateur
Commentaire de i0Lo le 24/03/2004 22:05:54

Simple et efficace :)
... et trés appreciable le petit md5() que l'on trouve trés rarement dans ce type de source
Un 8/10 et des applaudissements

signaler à un administrateur
Commentaire de BlasphM le 26/03/2004 22:43:11

Voila, le php je ne connai vraiment pas, et j'aimerai savoir si il est possible d'utiliser les code que vous avez écrit sans avoir a toucher quelque chose, j'ai déjà tenter quelque chose sur dreamweaver, mais j'ouvre l'index.php, j'ai donc les boutons login, cancel, not a member, seul login m'emmene a quelque chose, et ce quelque chose c'est Impossible d'afficher la page, je voudrais savoir si pour quelqu'un comme moi, sans bases php, il est possible de crée un espace login sur mon site?

signaler à un administrateur
Commentaire de Nifhell le 28/03/2004 15:39:13

BlasphM,

Xcuse moi de te dire ça mais il faut toujours y mettre un peu du sien!!

Les logiciels comme dreamweaver ne s'adresse pas a des novices de la programmation web bien au contraire!!! (même ci c ce qu'ils tentent de faire croire...)
Ce sont des logiciels qui necessitent la connaissance des bases de la programmation...

Il est toujours difficile de se lancer dans un nouveau language, mais dans tout les cas l'effort de compréhension existera toujours!! Alors bien sur que mon code n'est pas utilisable sans rien y modifier, car par exemple si tu ne publie pas ton site sur free tu devras y changer l'adresse du serveur sql... et ainsi de suite...

A contrario, je c que Adobe Golive permet de protéger l'accés à une page par mot de passe.. mais ce ne sera qu'une parade, car il ne s'agira jamais d'un vrai espace membre!!

Ainsi, il est toujours préférable de maitriser l'ensemble de son site, et le seul moyen et d'y connaitre son code source!!!

signaler à un administrateur
Commentaire de belgou le 28/03/2004 17:02:22

Merci beaucoup

signaler à un administrateur
Commentaire de BlasphM le 28/03/2004 18:29:44

Je suis d'accord avec toi sur Dreamweaver, je voulais juste savoir si il y avais juste moyen d'utiliser ton code sans pouvoir changer quelque chose, maintenant même si je ne programme pas, je m'en sert pour tout ce qui est application graphique web, sans rentrer dans les détail, je ne me sert pas de Dreamweaver comme d'un outil de programmation, html php ou java. Et sans programmer tu peut faire des choses intérassante, pas besoin d'être un expert. Bref merci pour ta réponse, je vais donc m'essayé au php.

signaler à un administrateur
Commentaire de createurtr le 09/04/2004 22:13:11

je ne comprend pas vous pourriez m aider pk moi j ai telecharger le zip et je ne comprend pas ou je doit placer les page ou qual page je doit mettre en ligne etc... pourriez vous m aider

signaler à un administrateur
Commentaire de julienmath le 16/04/2004 12:54:20

Sa serais bien si quelqu'un me disais ou se trouve la base SQL parce que je ne l'ai pas encore trouvée !


Merci !!

julien !

signaler à un administrateur
Commentaire de eMaylo le 19/04/2004 01:53:04

ba faut la créér nous même, alala....les flémard...

signaler à un administrateur
Commentaire de Nifhell le 19/04/2004 11:26:56

Lol
merci eMaylo!!

signaler à un administrateur
Commentaire de julienmath le 19/04/2004 12:00:22

AAAAA fallais le dire plus to !!!

signaler à un administrateur
Commentaire de eMaylo le 19/04/2004 22:34:15

Par contre, c'est vrai que si qq1 voudrai bien mettre la requête a executer pour creer les 2 table ca serai bien :p lol
Merci a la personne qui voudra bien le marqué......alala....et oui y a des fénéant....

signaler à un administrateur
Commentaire de Nifhell le 20/04/2004 16:40:18

Bon voilà vous avez gangé g mis la création des tables en début de code!!

fénéants va :)

@++

signaler à un administrateur
Commentaire de eMaylo le 20/04/2004 22:41:51

LoL, merci pour les autres :) Moi c'est bon jai déja creer les table pour essayer :)
Suis pas aussi fénéant que ca....:p

signaler à un administrateur
Commentaire de julienmath le 25/04/2004 11:38:50

Merci !!!!

signaler à un administrateur
Commentaire de grafitim le 30/04/2004 18:47:04

Salut. Tu parles de htaccess. C quoi ? C une page ? pas de .php ?
Merci

signaler à un administrateur
Commentaire de createurtr le 01/05/2004 10:08:56

il faut un logiciel pour le php ou on le met direct dans ma page pk moi c se que e fait pour le javascript

signaler à un administrateur
Commentaire de julienmath le 02/05/2004 11:32:58

C'est koi le code source de configuration.php ???

signaler à un administrateur
Commentaire de louismb91 le 29/05/2004 17:28:42

dans ton script, on rentre ou le nom de la base de donné ?

Merci d'avance

signaler à un administrateur
Commentaire de Nifhell le 30/05/2004 17:53:11

----------grafitim----------------------------

htaccess est un fichier caché par le serveur UNIX qui te permet de protéger l'accés d'un dossier.

Pour le créer, tu nomme un fichier ".htacces" (n'oublie pas le point car sinon il ne sera pas caché) où tu écrit "deny from all", et tu le met dans le dossier que tu veux protéger, c'est tout!!Il y a d'autres utilisations mais je ne les connais pas...

Ce fichier empechera à tous ceux qui tenterait de s'introduire autrement que par le compte admin dans tes dossiers...
@++

signaler à un administrateur
Commentaire de Nifhell le 30/05/2004 17:54:18

---------Julienmath--------
Qu'est ce que configuration.php??

signaler à un administrateur
Commentaire de Nifhell le 30/05/2004 17:57:47

---------createurtr----------

Pour dévelloper en PHP j'utilise EasyPHP, qui simule en fait un serveur UNIX possédant l'interpreteur PHP comme le PERL en fait...

Pour publier ton site en php, il te faut un hébergeur qui accepte le PHP (comme ifrance ou free)

signaler à un administrateur
Commentaire de Nifhell le 30/05/2004 18:00:38

------------louisbm--------------
Le nom de ma base de donnée est renvoyé par la fonction admin() qui renvoie un tableau contenant 3 éléments: le nom de la base de donnée, le login de connexion, le mot de passe de connexion à la base de donnée....
Cette fonction se situe dans le fichier admin.php

@++

signaler à un administrateur
Commentaire de elpenor le 31/05/2004 16:38:27

Mais ou marque t'on ladresse de notre base de donné ou son nom...
Question déja posé mais je ne comprend pas la réponce :-(

signaler à un administrateur
Commentaire de Nifhell le 03/06/2004 08:55:19

Bon les mecs je veux bien répondre aux questions mais bon faut pas abuser!!
Suffit de lire le code elpenor... c'est écrit dans le fichier admin.php:

Pour l'adresse de la BDD:
$host=sql.free.fr

et ça c'est écrit dans index_sc.php:
Pour séléctionner la BDD:
$admin=admin();

//je stock le resultat de admin() ds le tableau $admin

    $db=mysql_connect($admin[0],$admin[1],$admin[2]);

//puis je me connect a mon serveur SQL

    mysql_select_db($admin[1],$db);

//puis je selectionne ma base de donnée SQL
//sous free la base porte toujours le meme nom que l'utilisateur ($admin[1])

Si des gens ont encore des questions avant d'avoir lu ne serait ce que le code au moins une fois et les questions déja posées... merci de vous abstenir!!! Sinon je fais payer mes réponses comme prestations...
Apprenez à lire!!

signaler à un administrateur
Commentaire de antho11 le 05/07/2004 21:05:32

Bonjour,

J'ai testé ce script qui serai est très bien si il marchait

Je comprend pas voici le message d'erreur au moment de l'engistrement d'un membre

Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /var/www/free.fr/f/a/anthony.ducreux/membre/register_sc.php on line 145

Warning: Invalid argument supplied for foreach() in /var/www/free.fr/f/a/anthony.ducreux/membre/register_sc.php on line 146

Pouvez vous m'aider svp ?

signaler à un administrateur
Commentaire de antho11 le 06/07/2004 13:21:46

C'est encore moi j'ai réussi a regler le problème

Maintenant j'aimerais savoir comment on fait pour proteger d'autres pages ?? il faut inserer un code ???

Et d'ailleur dans index_sc.php quand on inserer du texte sur la page et bien sa l'affiche .... donc sa fait rien d'être identifier ?

Merci de me répondre au plus vite possible ..

signaler à un administrateur
Commentaire de SpEeDy_Fire le 26/08/2004 17:09:36

comment as-tu réussi à résoudre le problème ?
J'ai le même... bidouillé un peu mais me reste toujours l'erreur ligne 146 dans register_sc

signaler à un administrateur
Commentaire de xavierhaest le 09/10/2004 18:36:26

ton script a l'aire pas mal mais fodrai une version francaise!!!

signaler à un administrateur
Commentaire de xavierhaest le 09/10/2004 22:09:21

oui mais heu ou ilk est le fichier zip?

signaler à un administrateur
Commentaire de xavierhaest le 09/10/2004 22:11:47

haaaa voila lol j'ai trouver le zip

signaler à un administrateur
Commentaire de nawfel2 le 31/10/2004 16:01:03

Avant de poser toutes ces questions que je trouve idiotes de les poser si on connait quelques bases!
Ici c'est pas une communotée ou on vous apprend le php mais seulement pour exposer et diffuser ses sources!
Il y'a énomement de sites qui la programmation en php.
Vous ne comprenez pas quelque chose ? www.google.fr recherche: fichier .htaccess
Et hop vous avez un tats d'article dessu.

Ne soyez pas féneant, je plains Nifhell...
Prenez 5min pour examiner le code en entier, il ne peut pas tout vous faire!

Apprenez les bases d'abord pour vous lancer dans ce type de script.

Si non le script est pas mal, peut etre pas assez complet(oubli de passe) peut etre une messagerie interne et il sera au top Bravo!

Salutions

signaler à un administrateur
Commentaire de Nifhell le 02/11/2004 15:51:20

Merci nawfel2!!

dzl pour mon silence, mais g déja presque plus de temps pour dev....

bon sinon je fais une mise à jour de mon site en ce moment et  promis je la diffuserai commentée sur phpcs.com

pour la messagerie.... j'y avais pas pensé.... thx ;)

signaler à un administrateur
Commentaire de NutsGuy le 04/03/2005 13:59:41

Antho !! Quand tu corriges un éventuel beug, tu serais sympa pour les autres si tu mettais le code modifié dans ton post !! tout le monde n'a pas forcement de la chance de trouver.

Par avance, merci :)

signaler à un administrateur
Commentaire de NutsGuy le 04/03/2005 14:01:35

Antho !! Quand tu corriges un éventuel beug, tu serais sympa pour les autres si tu mettais le code modifié dans ton post !! tout le monde n'a pas forcement de la chance de trouver.

Par avance, merci :)

signaler à un administrateur
Commentaire de NutsGuy le 04/03/2005 14:02:10

Antho !! Quand tu corriges un éventuel beug, tu serais sympa pour les autres si tu mettais le code modifié dans ton post !! tout le monde n'a pas forcement la chance de trouver.

Par avance, merci :)

signaler à un administrateur
Commentaire de NutsGuy le 04/03/2005 14:03:01

Antho !! Quand tu corriges un éventuel beug, tu serais sympa pour les autres si tu mettais le code modifié dans ton post !! tout le monde n'a pas forcement la chance de trouver.

Par avance, merci :)

signaler à un administrateur
Commentaire de NutsGuy le 04/03/2005 14:41:05

Désolé pour les 4 messages identiques, mais c'est un beug de la page !!

En ce qui concerne l'erreur citées à la ligne 145, j'ai modifé comme suit :

$table=mysql_query("SELECT username FROM login",$db);

au lieu de :

$table=mysql_query("SELECT username FROM log",$db);

Par contre, je cherche encore pour la ligne 146. Apparement, la valueur $ans est utilisée, faut-il la déclarer quelque part ??

Je pense qu'il risque d'y avoir un problème avec les lignes 155 & 156, mais j'en suis pas encore là car je bloque à la ligne 146 loool

Lignes 155 & 156 :

mysql_query("INSERT INTO `log` VALUES ('$user','$pass')",$db);
mysql_query("INSERT INTO `info` VALUES ('$user','$fname','$lname','$add','$mel','$bdate')",$db);

Vais peut-être modifier 'log' en 'login' et 'info' en 'infos'. Mais ça je verrais plus tard.

signaler à un administrateur
Commentaire de NutsGuy le 04/03/2005 15:32:58

Ca y est, en cherchant un peu, j'ai fini par trouver pour l'erreur à la ligne 146.

ligne 145 : $result=mysql_fetch_row($table);
ligne 146 : foreach ($result as $ans)

Le problème, c'est que lors de la première inscription, les tables sont vides.
Donc $result reçoit la valeur NULL lors de l'appel de mysql_fetch_row au lieu d'un type 'array' , or, foreach ne peut pas boucler sur une valeur NULL.

La solution la plus simple que j'ai trouvé : créer un premier enregistrement par PhpMyAdmin. Et là, plus d'erreurs.

Pour les lignes 155 & 156, au départ, ma fiche n'a pas été enregistrée car ces 2 lignes pointent sur des tables inexistantes 'log' & 'info'. Il faut donc modifier 'log' & 'info' pour que ces tables portent le même nom que celles qui ont été déclarées en haut de cette page. C'est à dire 'login' & 'info'.

Pour ma part, ta source m'a très bien aidé.
Pourrais-tu faire les modifs de tes sources pour les personnes qui viendraient par la suite.

Amicalement, NutsGuy

signaler à un administrateur
Commentaire de lordskyser1 le 14/07/2005 15:58:15

Euhhh, si je choisi "_'"èé_è_çè"_'"'# comme login lors de mon inscription, çà marche non?

signaler à un administrateur
Commentaire de tonio345 le 20/07/2008 16:52:24

Tres tres bonne source:
tout est nikel.
Un pti genie en php ce Nifhell

Ajouter un commentaire



Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,624 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.