Probleme php mysql_num_rows

[Fermé]
Signaler
-
Messages postés
1669
Date d'inscription
vendredi 11 mai 2007
Statut
Contributeur
Dernière intervention
21 mai 2012
-
Bonjour, je fait un site d'inscription très complet mais j'ai un problème que je n'arrive pas a resoudre voici la parti de code ou j'ai l'erreur:

$UserCheck = mysql_query("SELECT login FROM accounts WHERE login = '$Username'");
if (mysql_num_rows($UserCheck) > 0)
{
$HTML .= "<br /><b> This username is already registered, please select another</b>";
$Continue = false;
}
// Check if this IP has more than the accounts per IP limit
$UserCheck = mysql_query("SELECT login FROM accounts WHERE lastip = '$ip'");
if (mysql_num_rows($UserCheck) > $AccsPerIP)
{
$HTML .= "<br /><b> You have reached your maximum amount of accounts, which is currently: $AccsPerIP </b>";
$Continue = false;
}


si quelqu'un pourrais m'aider je lui serais vraiment reconnaissant



10 réponses

Messages postés
1669
Date d'inscription
vendredi 11 mai 2007
Statut
Contributeur
Dernière intervention
21 mai 2012
181
Bonjour,

Quel numrow ne fonctionne pas ?? celui qui vérifie le login, ou celui qui vérifie l ip ?? ou ptetre les deux :(
Messages postés
1405
Date d'inscription
vendredi 28 novembre 2008
Statut
Membre
Dernière intervention
18 mars 2013
78
Bonjour
Peut être essaye la requête comme ca :
$UserCheck = mysql_query("SELECT login FROM accounts WHERE login = '".$Username."');   
Messages postés
121
Date d'inscription
jeudi 20 février 2003
Statut
Membre
Dernière intervention
29 avril 2013
17
C'est quoi l'erreur exacte ?
Sinon pense à proteger ta base ... utilise mysql_real_escape_string ...
les deux ne marche pas et melooo jai asseyer ton code et sa ne fonctionne pas plus
voici l'erreur:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\Trinitycore1\Server\htdocs\game_acc.php on line 132

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\Trinitycore1\Server\htdocs\game_acc.php on line 139
Messages postés
121
Date d'inscription
jeudi 20 février 2003
Statut
Membre
Dernière intervention
29 avril 2013
17
Tu as pensé à vérifier si tu es bien connecté au serveur avant de faire tes requêtes ?
Messages postés
1405
Date d'inscription
vendredi 28 novembre 2008
Statut
Membre
Dernière intervention
18 mars 2013
78
vérifie également que tes requêtes soient justes
ma requête est juste et oui je suis connecté au serveur ne t'inquiète pas.
Messages postés
1405
Date d'inscription
vendredi 28 novembre 2008
Statut
Membre
Dernière intervention
18 mars 2013
78
L'as tu testé sous PHPmyadmin ?
J'ai tout tester meme avec wamp (qui utilise phpmyadmin) et je lai avec apache aussi
Messages postés
1669
Date d'inscription
vendredi 11 mai 2007
Statut
Contributeur
Dernière intervention
21 mai 2012
181
Bonjour,

Au lieu de
$UserCheck = mysql_query("SELECT login FROM accounts WHERE login = '$Username'");
if (mysql_num_rows($UserCheck) > 0)
{
$HTML .= "<br /><b> This username is already registered, please select another</b>";
$Continue = false;
}


moi je mettrais :
$result= mysql_query("SELECT * from 'accounts' WHERE 'login' = '".$Username."'");
$UserCheck= mysql_fetch_array($result);
if(isset($UserCheck["login"])){
{
$HTML .= "<br /><b> This username is already registered, please select another</b>";
$Continue = false;
}


Je sais que les requêtes SQL préfèrent avoir le nom des tables entre ' .. qui n est ni " ni ' .. c'est ce symbole que tu peut trouver lorsque tu fait des requêtes directement dans mysql ;)