Probleme mysql

Vous avez un soucis de développement et ce n'est pas du ressort de notre support ? N'hésitez pas à soumettre vos petits soucis de développement et à vous entre aider par la même occasion.
Inconnu
Cet utilisateur a supprimé son compte et n’existe plus.
Messages : 6340
Inscription : 29 décembre 2010 à 18:15

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in /home/httpd/k/e/v/kevin91/anim.franceserv.com/sign_up.php on line 43

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in /home/httpd/k/e/v/kevin91/anim.franceserv.com/sign_up.php on line 47

Bonsoir j'ai ce probleme la svp aider moi et voici le code de sign_up.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>
\t<div class="header">
\t<a href="<?php echo $url_home; ?>"><img src="<?php echo $design; ?>/images/logo.png" alt="Espace Membre" /></a>
\t </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']!='')
{
\t//On enleve lechappement si get_magic_quotes_gpc est active
\tif(get_magic_quotes_gpc())
\t{
\t\t$_POST['username'] = stripslashes($_POST['username']);
\t\t$_POST['password'] = stripslashes($_POST['password']);
\t\t$_POST['passverif'] = stripslashes($_POST['passverif']);
\t\t$_POST['email'] = stripslashes($_POST['email']);
\t\t$_POST['avatar'] = stripslashes($_POST['avatar']);
\t}
\t//On verifie si le mot de passe et celui de la verification sont identiques
\tif($_POST['password']==$_POST['passverif'])
\t{
\t\t//On verifie si le mot de passe a 6 caracteres ou plus
\t\tif(strlen($_POST['password'])>=6)
\t\t{
\t\t\t//On verifie si lemail est valide
\t\t\tif(preg_match('#^(([a-z0-9!\#$%&\\\'*+/=?^_`{|}~-]+\.?)*[a-z0-9!\#$%&\\\'*+/=?^_`{|}~-]+)@(([a-z0-9-_]+\.?)*[a-z0-9-_]+)\.[a-z]{2,}$#i',$_POST['email']))
\t\t\t{
\t\t\t\t//On echape les variables pour pouvoir les mettre dans une requette SQL
\t\t\t\t$username = mysql_real_escape_string($_POST['username']);
\t\t\t\t$password = mysql_real_escape_string($_POST['password']);
\t\t\t\t$email = mysql_real_escape_string($_POST['email']);
\t\t\t\t$avatar = mysql_real_escape_string($_POST['avatar']);
\t\t\t\t//On verifie sil ny a pas deja un utilisateur inscrit avec le pseudo choisis
\t\t\t\t$dn = mysql_num_rows(mysql_query('select id from users where username="'.$username.'"'));
\t\t\t\tif($dn==0)
\t\t\t\t{
\t\t\t\t\t//On recupere le nombre dutilisateurs pour donner un identifiant a lutilisateur actuel
\t\t\t\t\t$dn2 = mysql_num_rows(mysql_query('select id from users'));
\t\t\t\t\t$id = $dn2+1;
\t\t\t\t\t//On enregistre les informations dans la base de donnee
\t\t\t\t\tif(mysql_query('insert into users(id, username, password, email, avatar, signup_date) values ('.$id.', "'.$username.'", "'.$password.'", "'.$email.'", "'.$avatar.'", "'.time().'")'))
\t\t\t\t\t{
\t\t\t\t\t\t//Si ca a fonctionne, on naffiche pas le formulaire
\t\t\t\t\t\t$form = false;
?>
<div class="message">Vous avez bien &eacute;t&eacute; inscrit. Vous pouvez dor&eacute;navant vous connecter.<br />
<a href="connexion.php">Se connecter</a></div>
<?php
\t\t\t\t\t}
\t\t\t\t\telse
\t\t\t\t\t{
\t\t\t\t\t\t//Sinon on dit quil y a eu une erreur
\t\t\t\t\t\t$form = true;
\t\t\t\t\t\t$message = 'Une erreur est survenue lors de l\'inscription.';
\t\t\t\t\t}
\t\t\t\t}
\t\t\t\telse
\t\t\t\t{
\t\t\t\t\t//Sinon, on dit que le pseudo voulu est deja pris
\t\t\t\t\t$form = true;
\t\t\t\t\t$message = 'Un autre utilisateur utilise d&eacute;j&agrave; le nom d\'utilisateur que vous d&eacute;sirez utiliser.';
\t\t\t\t}
\t\t\t}
\t\t\telse
\t\t\t{
\t\t\t\t//Sinon, on dit que lemail nest pas valide
\t\t\t\t$form = true;
\t\t\t\t$message = 'L\'email que vous avez entr&eacute; n\'est pas valide.';
\t\t\t}
\t\t}
\t\telse
\t\t{
\t\t\t//Sinon, on dit que le mot de passe nest pas assez long
\t\t\t$form = true;
\t\t\t$message = 'Le mot de passe que vous avez entr&eacute; contien moins de 6 caract&egrave;res.';
\t\t}
\t}
\telse
\t{
\t\t//Sinon, on dit que les mots de passes ne sont pas identiques
\t\t$form = true;
\t\t$message = 'Les mots de passe que vous avez entr&eacute; ne sont pas identiques.';
\t}
}
else
{
\t$form = true;
}
if($form)
{
\t//On affiche un message sil y a lieu
\tif(isset($message))
\t{
\t\techo '<div class="message">'.$message.'</div>';
\t}
\t//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&egrave;res min.)</span></label><input type="password" name="password" /><br />
<label for="passverif">Mot de passe<span class="small">(v&eacute;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" />
\t\t</div>
</form>
</div>
<?php
}
?>
\t\t<div class="foot"><a href="<?php echo $url_home; ?>">Retour &agrave; l'accueil</a> - <a href="http://www.supportduweb.com/">Support du Web</a></div>
\t</body>
</html>

Et le code de config.php
<?php
//On demarre les sessions
session_start();

/******************************************************
----------------Configuration Obligatoire--------------
Veuillez modifier les variables ci-dessous pour que l'
espace membre puisse fonctionner correctement.
******************************************************/

//On se connecte a la base de donnee
mysql_connect('sql.franceserv.fr', 'kevin91', '******');
mysql_select_db('kevin-db1');

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

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

/******************************************************
----------------Configuration Optionelle---------------
******************************************************/

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

//Nom du design
$design = 'default';
?>
Merci d'avance
Avatar de l’utilisateur
Elodie
Fondatrice / Responsable
Fondatrice / Responsable
Messages : 7941
Inscription : 2 avril 2010 à 20:14

Je déplace la discussion dans la partie développement comme ça ne concerne pas le support technique.

Sinon pour répondre à la question, il faut afficher les messages d'erreurs de MySQL pour en savoir plus. Il faut mettre après le mysql_querry() un OR die(mysql_error());
Vous avez une question ? Posez-la de préférence sur le forum et si ça demande un contact plus instantané, n'hésitez pas à vous rendre sur le t'chat IRC. Si votre question est personnelle, contactez-nous directement.
Inconnu
Cet utilisateur a supprimé son compte et n’existe plus.
Messages : 6340
Inscription : 29 décembre 2010 à 18:15

Re j'ai fait ce que vous avez dit voila :
Parse error: syntax error, unexpected '(' in /home/httpd/k/e/v/kevin91/anim.franceserv.com/fitna/sign_up.php on line 43
Code de signup
<?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>
\t<div class="header">
\t<a href="<?php echo $url_home; ?>"><img src="<?php echo $design; ?>/images/logo.png" alt="Espace Membre" /></a>
\t </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']!='')
{
\t//On enleve lechappement si get_magic_quotes_gpc est active
\tif(get_magic_quotes_gpc())
\t{
\t\t$_POST['username'] = stripslashes($_POST['username']);
\t\t$_POST['password'] = stripslashes($_POST['password']);
\t\t$_POST['passverif'] = stripslashes($_POST['passverif']);
\t\t$_POST['email'] = stripslashes($_POST['email']);
\t\t$_POST['avatar'] = stripslashes($_POST['avatar']);
\t}
\t//On verifie si le mot de passe et celui de la verification sont identiques
\tif($_POST['password']==$_POST['passverif'])
\t{
\t\t//On verifie si le mot de passe a 6 caracteres ou plus
\t\tif(strlen($_POST['password'])>=6)
\t\t{
\t\t\t//On verifie si lemail est valide
\t\t\tif(preg_match('#^(([a-z0-9!\#$%&\\\'*+/=?^_`{|}~-]+\.?)*[a-z0-9!\#$%&\\\'*+/=?^_`{|}~-]+)@(([a-z0-9-_]+\.?)*[a-z0-9-_]+)\.[a-z]{2,}$#i',$_POST['email']))
\t\t\t{
\t\t\t\t//On echape les variables pour pouvoir les mettre dans une requette SQL
\t\t\t\t$username = mysql_real_escape_string($_POST['username']);
\t\t\t\t$password = mysql_real_escape_string($_POST['password']);
\t\t\t\t$email = mysql_real_escape_string($_POST['email']);
\t\t\t\t$avatar = mysql_real_escape_string($_POST['avatar']);
\t\t\t\t//On verifie sil ny a pas deja un utilisateur inscrit avec le pseudo choisis
\t\t\t\t$dn = mysql_num_rows(mysql_query OR die(mysql_error())('select id from users where username="'.$username.'"'));
\t\t\t\tif($dn==0)
\t\t\t\t{
\t\t\t\t\t//On recupere le nombre dutilisateurs pour donner un identifiant a lutilisateur actuel
\t\t\t\t\t$dn2 = mysql_num_rows(mysql_query OR die(mysql_error())('select id from users'));
\t\t\t\t\t$id = $dn2+1;
\t\t\t\t\t//On enregistre les informations dans la base de donnee
\t\t\t\t\tif(mysql_query('insert into users(id, username, password, email, avatar, signup_date) values ('.$id.', "'.$username.'", "'.$password.'", "'.$email.'", "'.$avatar.'", "'.time().'")'))
\t\t\t\t\t{
\t\t\t\t\t\t//Si ca a fonctionne, on naffiche pas le formulaire
\t\t\t\t\t\t$form = false;
?>
<div class="message">Vous avez bien &eacute;t&eacute; inscrit. Vous pouvez dor&eacute;navant vous connecter.<br />
<a href="connexion.php">Se connecter</a></div>
<?php
\t\t\t\t\t}
\t\t\t\t\telse
\t\t\t\t\t{
\t\t\t\t\t\t//Sinon on dit quil y a eu une erreur
\t\t\t\t\t\t$form = true;
\t\t\t\t\t\t$message = 'Une erreur est survenue lors de l\'inscription.';
\t\t\t\t\t}
\t\t\t\t}
\t\t\t\telse
\t\t\t\t{
\t\t\t\t\t//Sinon, on dit que le pseudo voulu est deja pris
\t\t\t\t\t$form = true;
\t\t\t\t\t$message = 'Un autre utilisateur utilise d&eacute;j&agrave; le nom d\'utilisateur que vous d&eacute;sirez utiliser.';
\t\t\t\t}
\t\t\t}
\t\t\telse
\t\t\t{
\t\t\t\t//Sinon, on dit que lemail nest pas valide
\t\t\t\t$form = true;
\t\t\t\t$message = 'L\'email que vous avez entr&eacute; n\'est pas valide.';
\t\t\t}
\t\t}
\t\telse
\t\t{
\t\t\t//Sinon, on dit que le mot de passe nest pas assez long
\t\t\t$form = true;
\t\t\t$message = 'Le mot de passe que vous avez entr&eacute; contien moins de 6 caract&egrave;res.';
\t\t}
\t}
\telse
\t{
\t\t//Sinon, on dit que les mots de passes ne sont pas identiques
\t\t$form = true;
\t\t$message = 'Les mots de passe que vous avez entr&eacute; ne sont pas identiques.';
\t}
}
else
{
\t$form = true;
}
if($form)
{
\t//On affiche un message sil y a lieu
\tif(isset($message))
\t{
\t\techo '<div class="message">'.$message.'</div>';
\t}
\t//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&egrave;res min.)</span></label><input type="password" name="password" /><br />
<label for="passverif">Mot de passe<span class="small">(v&eacute;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" />
\t\t</div>
</form>
</div>
<?php
}
?>
\t\t<div class="foot"><a href="<a href="h/"></a></div>
\t</body>
</html>
Avatar de l’utilisateur
Elodie
Fondatrice / Responsable
Fondatrice / Responsable
Messages : 7941
Inscription : 2 avril 2010 à 20:14

J'ai une sensation de déjà vu ...

C'est exactement le même code source qu'ici :
viewtopic.php?pid=3567#p3567

...
Vous avez une question ? Posez-la de préférence sur le forum et si ça demande un contact plus instantané, n'hésitez pas à vous rendre sur le t'chat IRC. Si votre question est personnelle, contactez-nous directement.
Avatar de l’utilisateur
Elodie
Fondatrice / Responsable
Fondatrice / Responsable
Messages : 7941
Inscription : 2 avril 2010 à 20:14

C'est bien ce que je pensai, c'est exactement le même code source d'un autre utilisateur déjà suspendu pour phishing.

Mais arrêtez de vous moquer de moi !

Votre précédent compte a déjà été suspendu pour coordonnées invalides puis après pour phishing et cette fois vous recréez de nouveau un compte où vous dites habiter sur Paris, je le suspend à nouveau et à votre demande pour vouloir vous corriger, je lève la suspension et vous me dites maintenant habiter à Strasbourg mais bon sang quoi !

C'est définitif, le Maroc est maintenant suspendu des inscriptions et le restera !
Vous avez une question ? Posez-la de préférence sur le forum et si ça demande un contact plus instantané, n'hésitez pas à vous rendre sur le t'chat IRC. Si votre question est personnelle, contactez-nous directement.
Répondre