Problème espace membre PHP

Résolu/Fermé
Messages postés
83
Date d'inscription
vendredi 22 juin 2012
Statut
Membre
Dernière intervention
24 juillet 2015
-
Messages postés
564
Date d'inscription
mardi 3 mars 2009
Statut
Membre
Dernière intervention
25 novembre 2015
-
Bonjour,


Je m'exerce actuellement à faire un formulaire d'inscription pour un espace membres,mais
lorsque j'entre les informations dans celui-ci mon programme me retourne l'erreur suivante:

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\Program Files (x86)\EasyPHP-5.3.9\www\espace2\inscription.php on line 43

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\Program Files (x86)\EasyPHP-5.3.9\www\espace2\inscription.php on line 47


Voici le code de mon programme inscription.php :

<?php
include('config.php');
?>

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<link rel="stylesheet" href="css/style.css" />
<title>Inscription</title>
</head>

<body>
<div class="header">
<a href="<?php echo $url_home; ?>"><img src="<?php echo $design; ?>logo.png" alt="Espace Membre" /></a>
</div>

<?php
//On verifie que le formulaire a été envoyé
if(isset($_POST['username'], $_POST['password'], $_POST['passverif'], $_POST['email'], $_POST['avatar'])
and $_POST['username']!='')
{
//On enleve lechappement si get_magic_quotes_gpc est active
if(get_magic_quotes_gpc())
{
$_POST['username'] = stripslashes($_POST['username']);
$_POST['password'] = stripslashes($_POST['password']);
$_POST['passverif'] = stripslashes($_POST['passverif']);
$_POST['email'] = stripslashes($_POST['email']);
$_POST['avatar'] = stripslashes($_POST['avatar']);
}

//On verifie si le mot de passe et celui de la verification sont identiques
if($_POST['password']==$_POST['passverif'])
{
//On verifie si le mot de passe a 6 caracteres ou plus
if(strlen($_POST['password'])>=6)
{
//On verifie si lemail est valide
if(preg_match("^([a-zA-Z0-9]+(([\.\-\_]?[a-zA-Z0-9]+)+)?)\@(([a-zA-Z0-9]+[\.\-\_])+[a-zA-Z]{2,4})$",$_POST['email']))
{
//On echappe les variables pour pouvoir les mettre dans une requette SQL
$username = mysql_real_escape_string($_POST['username']);
$password = mysql_real_escape_string($_POST['password']);
$email = mysql_real_escape_string($_POST['email']);
$avatar = mysql_real_escape_string($_POST['avatar']);
//On verifie sil ny a pas deja un utilisateur inscrit avec le pseudo choisis
$dn = mysql_num_rows(mysql_query('select id from users where username="'.$username.'"'));
if($dn==0)
{
//On recupere le nombre dutilisateurs pour donner un identifiant a lutilisateur actuel
$dn2 = mysql_num_rows(mysql_query('select id from users'));
$id = $dn2+1;
//On enregistre les informations dans la base de donnee
if(mysql_query('insert into users(id, username, password, email, avatar, signup_date) values ('.$id.', "'.$username.'", "'.$password.'", "'.$email.'", "'.$avatar.'", "'.time().'")'))
{
//Si ca a fonctionne, on naffiche pas le formulaire
$form = false;
?>
<div class="message">Vous avez bien été inscrit. Vous pouvez dorénavant vous connecter.<br />
<a href="connexion.php">Se connecter</a></div>
<?php
}
else
{
//Sinon on dit quil y a eu une erreur
$form = true;
$message = 'Une erreur est survenue lors de l\'inscription.';
}
}
else
{
//Sinon, on dit que le pseudo voulu est deja pris
$form = true;
$message = 'Un autre utilisateur utilise déjà le nom d\'utilisateur que vous désirez utiliser.';
}
}
else
{
//Sinon, on dit que lemail nest pas valide
$form = true;
$message = 'L\'email que vous avez entré n\'est pas valide.';
}
}
else
{
//Sinon, on dit que le mot de passe nest pas assez long
$form = true;
$message = 'Le mot de passe que vous avez entré contien moins de 6 caractères.';
}
}
else
{
//Sinon, on dit que les mots de passes ne sont pas identiques
$form = true;
$message = 'Les mots de passe que vous avez entré ne sont pas identiques.';
}
}
else
{
$form = true;
}
if($form)
{
//On affiche un message sil y a lieu
if(isset($message))
{
echo '<div class="message">'.$message.'</div>';
}
//On affiche le formulaire
?>
<div class="content">
<form action="sign_up.php" method="post">
Veuillez remplir ce formulaire pour vous inscrire:<br />
<div class="center">
<label for="username">Nom d'utilisateur</label><input type="text" name="username" value="<?php if(isset($_POST['username'])){echo htmlentities($_POST['username'], ENT_QUOTES, 'UTF-8');} ?>" /><br />
<label for="password">Mot de passe<span class="small">(6 caractères min.)</span></label><input type="password" name="password" /><br />
<label for="passverif">Mot de passe<span class="small">(vérification)</span></label><input type="password" name="passverif" /><br />
<label for="email">Email</label><input type="text" name="email" value="<?php if(isset($_POST['email'])){echo htmlentities($_POST['email'], ENT_QUOTES, 'UTF-8');} ?>" /><br />
<label for="avatar">Image perso<span class="small">(facultatif)</span></label><input type="text" name="avatar" value="<?php if(isset($_POST['avatar'])){echo htmlentities($_POST['avatar'], ENT_QUOTES, 'UTF-8');} ?>" /><br />
<input type="submit" value="Envoyer" />
</div>
</form>
</div>
<?php
}
?>
<div class="foot"><a href="<?php echo $url_home; ?>">Retour à l'accueil</a> - <a href="http://www.lesiteduzero.com/">Support du Web</a></div>
</body>
</html>



Et voici celui de mon programme config.php

<?php
//On demarre les sessions
session_start();



//On se connecte a la base de donnee
mysql_connect('localhost', 'root', '');
mysql_select_db('users');

//Email du webmaster
$mail_webmaster = 'example@example.com';

//Adresse du dossier de la top site
$url_root = 'http://www.example.com/';



//Nom du fichier de laccueil
$url_home = 'index.php';

//Nom du design
$design = 'default';
?>


Je n'arrive absolument pas à trouver la solution
Pourriez-vous m'aider svp?













9 réponses

Messages postés
122
Date d'inscription
jeudi 5 février 2009
Statut
Membre
Dernière intervention
3 août 2018
14
Le mieux est de séparer ton mysql_query() et ton mysql_num_rows(). Tu peux avoir une erreur dans ta requête SQL, qui peut entrainer ce genre d'erreur. Et si le but de ton SELECT et d'avoir le nombre d'enregistrements, autant faire directement un SELECT COUNT()
Messages postés
83
Date d'inscription
vendredi 22 juin 2012
Statut
Membre
Dernière intervention
24 juillet 2015

Merci de ta réponse, mais pourrez tu m'indiquer comment procéder stp? car je ne voit pas du tout
Messages postés
564
Date d'inscription
mardi 3 mars 2009
Statut
Membre
Dernière intervention
25 novembre 2015
12
Alors, ta connexion :
//On se connecte a la base de donnee
mysql_connect('localhost', 'root', '');
mysql_select_db('users'); 

devrait plutôt être comme ceci :
//On se connecte a la base de donnee
$connect=mysql_connect('localhost', 'root', '');
mysql_select_db('users',$db);


deuxième point tes requêtes:
//On verifie sil ny a pas deja un utilisateur inscrit avec le pseudo choisis
$dn = mysql_num_rows(mysql_query('select id from users where username="'.$username.'"'));
if($dn==0)
{
//On recupere le nombre dutilisateurs pour donner un identifiant a lutilisateur actuel
$dn2 = mysql_num_rows(mysql_query('select id from users'));
$id = $dn2+1; 

pour être complet (mais ce n'est pas obligatoire) tu devrais écrire :
//On verifie sil ny a pas deja un utilisateur inscrit avec le pseudo choisis
$dn = mysql_num_rows(mysql_query('select id from users where username="'.$username.'"',$connect));
if($dn==0)
{
//On recupere le nombre dutilisateurs pour donner un identifiant a lutilisateur actuel
$dn2 = mysql_num_rows(mysql_query('select id from users',$connect));
$id = $dn2+1; 


Essaye déjà ceci, et si ça ne fonctionne pas on rajoutera quelque lignes pour avoir un message d'erreur plus intéressant...

P.S. : quand tu postes un code pour obtenir de l'aide il est bon d'identifier les lignes concernées par le message d'erreur, ça évite aux helpeurs de les rechercher.
Messages postés
83
Date d'inscription
vendredi 22 juin 2012
Statut
Membre
Dernière intervention
24 juillet 2015

Merci pour ta réponse,
Maintenant j'ai ces deux erreur avant que je click sur le lien contenant le formulaire:

Notice: Undefined variable: db in C:\Program Files (x86)\EasyPHP-5.3.9\www\espace2\config.php on line 14

Warning: mysql_select_db() expects parameter 2 to be resource, null given in C:\Program Files (x86)\EasyPHP-5.3.9\www\espace2\config.php on line 14

et j'ai encore les erreurs du début,

Je te montre les 2 programmes:
config.php

//On se connecte a la base de donnee

$connect=mysql_connect('localhost', 'root', '');
ligne14-->mysql_select_db('users',$db);


//Email du webmaster
$mail_webmaster = 'example@example.com';

//Adresse du dossier de la top site
$url_root = 'http://www.example.com/';

et inscription.php


<?php
include('config.php');
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link href="<?php echo $design; ?>/style.css" rel="stylesheet" title="Style" />
<title>Inscription</title>
</head>
<body>
<div class="header">
<a href="<?php echo $url_home; ?>"><img src="<?php echo $design; ?>/images/logo.png" alt="Espace Membre" /></a>
</div>
<?php
//On verifie que le formulaire a ete envoye
if(isset($_POST['username'], $_POST['password'], $_POST['passverif'], $_POST['email'], $_POST['avatar']) and $_POST['username']!='')
{
//On enleve lechappement si get_magic_quotes_gpc est active
if(get_magic_quotes_gpc())
{
$_POST['username'] = stripslashes($_POST['username']);
$_POST['password'] = stripslashes($_POST['password']);
$_POST['passverif'] = stripslashes($_POST['passverif']);
$_POST['email'] = stripslashes($_POST['email']);
$_POST['avatar'] = stripslashes($_POST['avatar']);
}
//On verifie si le mot de passe et celui de la verification sont identiques
if($_POST['password']==$_POST['passverif'])
{
//On verifie si le mot de passe a 6 caracteres ou plus
if(strlen($_POST['password'])>=6)
{
//On verifie si lemail est valide
if(preg_match('#^(([a-z0-9!\#$%&\\\'*+/=?^_'{|}~-]+\.?)*[a-z0-9!\#$%&\\\'*+/=?^_'{|}~-]+)@(([a-z0-9-_]+\.?)*[a-z0-9-_]+)\.[a-z]{2,}$#i',$_POST['email']))
{
//On echape les variables pour pouvoir les mettre dans une requette SQL
$username = mysql_real_escape_string($_POST['username']);
$password = mysql_real_escape_string($_POST['password']);
$email = mysql_real_escape_string($_POST['email']);
$avatar = mysql_real_escape_string($_POST['avatar']);
//On verifie sil ny a pas deja un utilisateur inscrit avec le pseudo choisis
*ligne43--> $dn = mysql_num_rows(mysql_query('select id from users where username="'.$username.'"',$connect));
if($dn==0)
{
//On recupere le nombre dutilisateurs pour donner un identifiant a lutilisateur actuel
*ligne47--> $dn2 = mysql_num_rows(mysql_query('select id from users',$connect));
$id = $dn2+1;
//On enregistre les informations dans la base de donnee
if(mysql_query('insert into users(id, username, password, email, avatar, signup_date) values ('.$id.', "'.$username.'", "'.$password.'", "'.$email.'", "'.$avatar.'", "'.time().'")'))
{
//Si ca a fonctionne, on naffiche pas le formulaire
$form = false;
?>
<div class="message">Vous avez bien été inscrit. Vous pouvez dorénavant vous connecter.<br />
<a href="connexion.php">Se connecter</a></div>
<?php
}
else
{
//Sinon on dit quil y a eu une erreur
$form = true;
$message = 'Une erreur est survenue lors de l\'inscription.';
}
}
else
{
//Sinon, on dit que le pseudo voulu est deja pris
$form = true;
$message = 'Un autre utilisateur utilise déjà le nom d\'utilisateur que vous désirez utiliser.';
}
}
else
{
//Sinon, on dit que lemail nest pas valide
$form = true;
$message = 'L\'email que vous avez entré n\'est pas valide.';
}
}
else
{
//Sinon, on dit que le mot de passe nest pas assez long
$form = true;
$message = 'Le mot de passe que vous avez entré contien moins de 6 caractères.';
}
}
else
{
//Sinon, on dit que les mots de passes ne sont pas identiques
$form = true;
$message = 'Les mots de passe que vous avez entré ne sont pas identiques.';
}
}
else
{
$form = true;
}
if($form)
{
//On affiche un message sil y a lieu
if(isset($message))
{
echo '<div class="message">'.$message.'</div>';
}
//On affiche le formulaire
?>
<div class="content">
<form action="sign_up.php" method="post">
Veuillez remplir ce formulaire pour vous inscrire:<br />
<div class="center">
<label for="username">Nom d'utilisateur</label><input type="text" name="username" value="<?php if(isset($_POST['username'])){echo htmlentities($_POST['username'], ENT_QUOTES, 'UTF-8');} ?>" /><br />
<label for="password">Mot de passe<span class="small">(6 caractères min.)</span></label><input type="password" name="password" /><br />
<label for="passverif">Mot de passe<span class="small">(vérification)</span></label><input type="password" name="passverif" /><br />
<label for="email">Email</label><input type="text" name="email" value="<?php if(isset($_POST['email'])){echo htmlentities($_POST['email'], ENT_QUOTES, 'UTF-8');} ?>" /><br />
<label for="avatar">Image perso<span class="small">(facultatif)</span></label><input type="text" name="avatar" value="<?php if(isset($_POST['avatar'])){echo htmlentities($_POST['avatar'], ENT_QUOTES, 'UTF-8');} ?>" /><br />
<input type="submit" value="Envoyer" />
</div>
</form>
</div>
<?php
}
?>
<div class="foot"><a href="<?php echo $url_home; ?>">Retour à l'accueil</a> - <a href="http://www.supportduweb.com/">Support du Web</a></div>
</body>
</html>


Je ne comprend vraiment pas ce que ces erreurs veulent dire
Messages postés
564
Date d'inscription
mardi 3 mars 2009
Statut
Membre
Dernière intervention
25 novembre 2015
12
Mea culpa !
config.php :
//On se connecte a la base de donnee

$connect=mysql_connect('localhost', 'root', '');
ligne14-->mysql_select_db('users',$connect);

En effet, tu dois remettre le nom de la variable qui correspond à la connexion...
Messages postés
83
Date d'inscription
vendredi 22 juin 2012
Statut
Membre
Dernière intervention
24 juillet 2015

Oups bien vue ;-)

Mais j'ai toujours ces 2 erreurs :

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\Program Files (x86)\EasyPHP-5.3.9\www\espace2\sign_up.php on line 43

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\Program Files (x86)\EasyPHP-5.3.9\www\espace2\sign_up.php on line 47



inscription.php


<?php
include('config.php');
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link href="<?php echo $design; ?>/style.css" rel="stylesheet" title="Style" />
<title>Inscription</title>
</head>
<body>
<div class="header">
<a href="<?php echo $url_home; ?>"><img src="<?php echo $design; ?>/images/logo.png" alt="Espace Membre" /></a>
</div>
<?php
//On verifie que le formulaire a ete envoye
if(isset($_POST['username'], $_POST['password'], $_POST['passverif'], $_POST['email'], $_POST['avatar']) and $_POST['username']!='')
{
//On enleve lechappement si get_magic_quotes_gpc est active
if(get_magic_quotes_gpc())
{
$_POST['username'] = stripslashes($_POST['username']);
$_POST['password'] = stripslashes($_POST['password']);
$_POST['passverif'] = stripslashes($_POST['passverif']);
$_POST['email'] = stripslashes($_POST['email']);
$_POST['avatar'] = stripslashes($_POST['avatar']);
}
//On verifie si le mot de passe et celui de la verification sont identiques
if($_POST['password']==$_POST['passverif'])
{
//On verifie si le mot de passe a 6 caracteres ou plus
if(strlen($_POST['password'])>=6)
{
//On verifie si lemail est valide
if(preg_match('#^(([a-z0-9!\#$%&\\\'*+/=?^_'{|}~-]+\.?)*[a-z0-9!\#$%&\\\'*+/=?^_'{|}~-]+)@(([a-z0-9-_]+\.?)*[a-z0-9-_]+)\.[a-z]{2,}$#i',$_POST['email']))
{
//On echape les variables pour pouvoir les mettre dans une requette SQL
$username = mysql_real_escape_string($_POST['username']);
$password = mysql_real_escape_string($_POST['password']);
$email = mysql_real_escape_string($_POST['email']);
$avatar = mysql_real_escape_string($_POST['avatar']);
//On verifie sil ny a pas deja un utilisateur inscrit avec le pseudo choisis
*ligne43--> $dn = mysql_num_rows(mysql_query('select id from users where username="'.$username.'"',$connect));
if($dn==0)
{
//On recupere le nombre dutilisateurs pour donner un identifiant a lutilisateur actuel
*ligne47--> $dn2 = mysql_num_rows(mysql_query('select id from users',$connect));
$id = $dn2+1;
//On enregistre les informations dans la base de donnee
if(mysql_query('insert into users(id, username, password, email, avatar, signup_date) values ('.$id.', "'.$username.'", "'.$password.'", "'.$email.'", "'.$avatar.'", "'.time().'")'))
{
//Si ca a fonctionne, on naffiche pas le formulaire
$form = false;
?>
<div class="message">Vous avez bien été inscrit. Vous pouvez dorénavant vous connecter.<br />
<a href="connexion.php">Se connecter</a></div>
<?php
}
else
{
//Sinon on dit quil y a eu une erreur
$form = true;
$message = 'Une erreur est survenue lors de l\'inscription.';
}
}
else
{
//Sinon, on dit que le pseudo voulu est deja pris
$form = true;
$message = 'Un autre utilisateur utilise déjà le nom d\'utilisateur que vous désirez utiliser.';
}
}
else
{
//Sinon, on dit que lemail nest pas valide
$form = true;
$message = 'L\'email que vous avez entré n\'est pas valide.';
}
}
else
{
//Sinon, on dit que le mot de passe nest pas assez long
$form = true;
$message = 'Le mot de passe que vous avez entré contien moins de 6 caractères.';
}
}
else
{
//Sinon, on dit que les mots de passes ne sont pas identiques
$form = true;
$message = 'Les mots de passe que vous avez entré ne sont pas identiques.';
}
}
else
{
$form = true;
}
if($form)
{
//On affiche un message sil y a lieu
if(isset($message))
{
echo '<div class="message">'.$message.'</div>';
}
//On affiche le formulaire
?>
<div class="content">
<form action="sign_up.php" method="post">
Veuillez remplir ce formulaire pour vous inscrire:<br />
<div class="center">
<label for="username">Nom d'utilisateur</label><input type="text" name="username" value="<?php if(isset($_POST['username'])){echo htmlentities($_POST['username'], ENT_QUOTES, 'UTF-8');} ?>" /><br />
<label for="password">Mot de passe<span class="small">(6 caractères min.)</span></label><input type="password" name="password" /><br />
<label for="passverif">Mot de passe<span class="small">(vérification)</span></label><input type="password" name="passverif" /><br />
<label for="email">Email</label><input type="text" name="email" value="<?php if(isset($_POST['email'])){echo htmlentities($_POST['email'], ENT_QUOTES, 'UTF-8');} ?>" /><br />
<label for="avatar">Image perso<span class="small">(facultatif)</span></label><input type="text" name="avatar" value="<?php if(isset($_POST['avatar'])){echo htmlentities($_POST['avatar'], ENT_QUOTES, 'UTF-8');} ?>" /><br />
<input type="submit" value="Envoyer" />
</div>
</form>
</div>
<?php
}
?>
<div class="foot"><a href="<?php echo $url_home; ?>">Retour à l'accueil</a> - <a href="http://www.supportduweb.com/">Support du Web</a></div>
</body>
</html>

J'ai indiqué sur le code le numéro des lignes où le problème se pose
Messages postés
564
Date d'inscription
mardi 3 mars 2009
Statut
Membre
Dernière intervention
25 novembre 2015
12
Ok, donc comme te disais slackeruser un peu plus haut, il faut séparer ton select de ton mysql_num_rows pour savoir d'où viens ton erreur :
//On verifie sil ny a pas deja un utilisateur inscrit avec le pseudo choisis 
$result = mysql_query("select id from users where username='".$username."'",$connect); 
$dn = mysql_num_rows($result); 
{ 
//On recupere le nombre dutilisateurs pour donner un identifiant a lutilisateur actuel 
$result2 = mysql_query("select id from users",$connect); 
$dn2=mysql_num_rows($result2); 
$id = $dn2+1; 

Essaye ça et dis moi quels sont les messages d'erreur (pas besoin de redonner tout le code).
Messages postés
83
Date d'inscription
vendredi 22 juin 2012
Statut
Membre
Dernière intervention
24 juillet 2015

J'ai maintenant une erreur à la ligne 74 dès que je click sur le lien menant au formulaire:

Parse error: syntax error, unexpected T_ELSE in C:\Program Files (x86)\EasyPHP-5.3.9\www\espace2\sign_up.php on line 74 :

else
{
//Sinon, on dit que le pseudo voulu est deja pris
$form = true;
$message = 'Un autre utilisateur utilise déjà le nom d\'utilisateur que vous désirez utiliser.';
}

j'ai essayé d'enlever le else puisque je pensé que cela provenait du fait que l'on est supprimé le if mais cela me donne ensuite une erreur à la ligne 81

Parse error: syntax error, unexpected T_ELSE in C:\Program Files (x86)\EasyPHP-5.3.9\www\espace2\sign_up.php on line 81
Messages postés
564
Date d'inscription
mardi 3 mars 2009
Statut
Membre
Dernière intervention
25 novembre 2015
12
Tu as supprimé le if ?
Seules les commandes SQL étaient à modifier, excuse moi de ne pas avoir repris le if, je me suis concentré sur le problème de requête sans faire attention à sa présence...
Messages postés
83
Date d'inscription
vendredi 22 juin 2012
Statut
Membre
Dernière intervention
24 juillet 2015

Ok voici la modification que j'ai apporté à la partie du code :

//On echape les variables pour pouvoir les mettre dans une requette SQL
$username = mysql_real_escape_string($_POST['username']);
$password = mysql_real_escape_string($_POST['password']);
$email = mysql_real_escape_string($_POST['email']);
$avatar = mysql_real_escape_string($_POST['avatar']);
//On verifie sil ny a pas deja un utilisateur inscrit avec le pseudo choisis
$result = mysql_query("select id from users where username='".$username."'",$connect);
ligne44-->$dn = mysql_num_rows($result);
if($dn==0)
{
//On recupere le nombre dutilisateurs pour donner un identifiant a lutilisateur actuel

$result2 = mysql_query("select id from users",$connect);
ligne50-->$dn2=mysql_num_rows($result2);
$id = $dn2+1;
//On enregistre les informations dans la base de donnee


Mais j'ai les erreurs suivantes :


Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\Program Files (x86)\EasyPHP-5.3.9\www\espace2\sign_up.php on line 44

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\Program Files (x86)\EasyPHP-5.3.9\www\espace2\sign_up.php on line 50

C'est vraiment troublant...
Messages postés
564
Date d'inscription
mardi 3 mars 2009
Statut
Membre
Dernière intervention
25 novembre 2015
12
Peux-tu essayer ceci :
$result = mysql_query("select id from users where username='".$username."'",$connect) or die(mysql_error());
ligne44-->$dn = mysql_num_rows($result);
if($dn==0)
{
//On recupere le nombre dutilisateurs pour donner un identifiant a lutilisateur actuel

$result2 = mysql_query("select id from users",$connect) or die(mysql_error());
ligne50-->$dn2=mysql_num_rows($result2);
$id = $dn2+1; 

Cela nous permettra d'écarter le risque d'erreur dans la requête.
Messages postés
83
Date d'inscription
vendredi 22 juin 2012
Statut
Membre
Dernière intervention
24 juillet 2015

Ah voilà cette erreur est enfin supprimer :-)

Mais j'ai maintenant la réponse suivante :

Aucune base n'a été sélectionnée

Pourtant par la commande :
//On se connecte a la base de donnee
$connect=mysql_connect('localhost', 'root', '');
mysql_select_db('users',$connect);

J'appelle bien ma base de données appellée users,
Comment cela ce fait t'il?
Messages postés
564
Date d'inscription
mardi 3 mars 2009
Statut
Membre
Dernière intervention
25 novembre 2015
12
On va modifier là aussi :
 
//On se connecte a la base de donnee 
$connect=mysql_connect('localhost', 'root', '') or die('Impossible de se connecter : ' . mysql_error()); 
mysql_select_db('users',$connect) or die ('Impossible de sélectionner la base de données : ' . mysql_error());
Messages postés
83
Date d'inscription
vendredi 22 juin 2012
Statut
Membre
Dernière intervention
24 juillet 2015

Ah désolé c'est ok j'ai rectifié

Vraiment merci pour ton aide c'est vraiment sympa sa faisais depuis ce matin que je planché dessus

Merci ;-)