Problème avec mysql_num_rows

Moderator: Mod

Problème avec mysql_num_rows

Postby SHEPSHEP » Fri Feb 03, 2012 12:01 pm

Bonjour,

Tout d'abord ça marchait avant et aujourd'hui on me remonte un problème alors qu'il n'y a pas eu de modif de code.

En faire je requête ma BD et récupère environ 132000 lignes, la requête est simplissime :

SELECT * FROM commandes

Lorsque je j'utilise mysql_num_rows pour compter le nombre de lignes, j'ai un "Warning mysql_num_rows() ...."

Pour l'instant j'ai fait une seconde requête pour récupérer le nombre de ligne.
SELECT COUNT(*) FROM commandes

Quelqu'un aurait une idée parce la c'est bizarre que même.

En plus j'ai l'impression que PMA perd les pédales aussi, plus de pagination, plus affichage nombre de ligne (pour cette table). Surement lié car c'est deux outils/infos utilisent surement mysql_num_rows()

++
2ShEp
SHEPSHEP
Projets
 
Posts: 268
Joined: Wed Apr 08, 2009 11:14 am
Location: /dev/null

Postby TorTukiTu » Fri Feb 03, 2012 12:07 pm

Est-ce que tu peux donner l'erreur complète ?

Quand tu fais ton select *, il est possible que tu remplisses un array de 13.000 éléments...

C'est moche.

Tu as essayé d'augmenter la mémoire maximum disponible dans ton php.ini ?

Tortue 974.
User avatar
TorTukiTu
Site Admin
 
Posts: 1960
Joined: Thu Feb 07, 2008 10:24 pm
Location: Devant son pc durant la redaction de ce message

Postby SHEPSHEP » Fri Feb 03, 2012 4:36 pm

Merci Tortu

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /blabla/blabla/blabla/html/commandes.php on line 98

Non quand même pas ^^ (et c'est pas 13.000, c'est 132.000)
La requête sert uniquement à connaitre le nombre d'entrée et faisant un mysql_num_rows() sur le résultat (oui c'est idiot, c'est pas de moi je précise).

Pour la mémoire, j'ai vérifié, je suis bien en dessous de la limite.

Comprend pas ...
SHEPSHEP
Projets
 
Posts: 268
Joined: Wed Apr 08, 2009 11:14 am
Location: /dev/null

Postby Sliim » Fri Feb 03, 2012 8:15 pm

Salut,

d'après le message l'erreur se situe plus haut, lors du mysql_query("SELECT * FROM commands"); probablement.

Test la valeur de retour de mysql_query();

++
[u:9c0ae7aaf8]Sliim[/u:9c0ae7aaf8]
User avatar
Sliim
Site Admin
 
Posts: 1177
Joined: Fri May 16, 2008 12:53 pm

Postby TorTukiTu » Sat Feb 04, 2012 10:40 am

Alors suis du même avis que Sliim.

Affiche la requete avec un print coucou. Puis teste la dans un petit fichier php à part.

Et teste aussi avec le client MySQL en ligne de commande.

Tu seras fixé quand à l'emplacement du problème.

Tortue 974.

PS.: Fais attention à la casse (vérifies aussi que tu tapes bien sur la bonne db !). Si tu as "SELECT * FROM commands" dans php, et une table "Commands" dans mysql, la requête marchera sous les OS Window$ et pas sous les unix !

Tortue 974.
User avatar
TorTukiTu
Site Admin
 
Posts: 1960
Joined: Thu Feb 07, 2008 10:24 pm
Location: Devant son pc durant la redaction de ce message

Postby SHEPSHEP » Tue Feb 07, 2012 4:17 pm

Bon je reviens avec mon bazar

Petite rectification importante, la requête est : "SELECT * FROM commande WHERE 1 AND 1 AND 1 ORDER BY commande.dat_cmd DESC, commande.heu_cmd DESC"

Valeur de retour de mysql_query() => (bool) false

Dans PMA la requête passe grâce à la clause "LIMIT 0,30" mais ca déconne au niveau du nombre d'enregistrements "0 - -1 (0 total, traitement: 0.3485 sec.) " alors que les résultats s'affiche bien ...

[quote:5917fe1ffc]Affichage des enregistrements 0 - -1 (0 total, traitement: 0.3485 sec.)
requête SQL: SELECT *
FROM commande
WHERE 1
AND 1
AND 1
ORDER BY commande.dat_cmd DESC , commande.heu_cmd DESC
LIMIT 0 , 30[/quote:5917fe1ffc]

[quote:5917fe1ffc="TorTukiTu"]Fais attention à la casse (vérifies aussi que tu tapes bien sur la bonne db !). Si tu as "SELECT * FROM commands" dans php, et une table "Commands" dans mysql, la requête marchera sous les OS Window$ et pas sous les unix ! [/quote:5917fe1ffc]
Merci pour l'info je ne savais pas, ça pourra peut être me servir ultérieurement.
SHEPSHEP
Projets
 
Posts: 268
Joined: Wed Apr 08, 2009 11:14 am
Location: /dev/null


Return to Php

Who is online

Users browsing this forum: No registered users and 2 guests

cron