Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1270 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP/MYSQL] - alors la si qqun y comprends qque chose, CHAPO! [résolu]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP/MYSQL] - alors la si qqun y comprends qque chose, CHAPO! [résolu]

n°246582
Schtroumph​eur
bwwwwwaaaaarkkkkkkk!!!!!!
Posté le 16-11-2002 à 17:32:43  profilanswer
 

:pfff:  :fou:  :heink:  :heink:  :heink:  :heink:  :fou:  
 
ca resume mon etat d'esprit !
 
$construct_rq_count est une requete construite par le script, jai deja fait des echo dans tout les sens pour la verifier et le echo juste avant l'execution de la requete affiche ceci :  
 

SELECT COUNT( * ) AS NbPosts FROM gbb_Posts WHERE Username = 'Caroline' OR Username = 'David' OR Username = 'Duduuuule' GROUP BY Username


 
je copie et colle cette requete dans phpmyadmin et les resultat qu'il me sort son JUSTE !!!!
resultats obtenus :  
2
2
1

 
soit 3 resultat
 
ensuite si je fait la meme chose avec mon script php qui execute la requete qui est EXACTEMENT la meme : comme ceci ( je suis sur et certain que c la bonne requete qu'il execute)
 
 

Code :
  1. $rq_count=mysql_query($construct_rq_count);
  2. while($rs_count=mysql_fetch_array($rq_count))
  3. {
  4.     echo $rs_count["NbPosts"];
  5. }


 
et bien il me sort  
 
5
 
 :heink:  :heink:  :heink:  :heink:  
 
heu je deviens barge la ou quoi?  :pt1cable:  
 
non mais serieux...  chui pas fou hein??? rassurez moi !!!
 
C'est quoi ce bins !!!  :fou:  :kaola:  :cry:  
 
merci d'avance  :sweat:  
 
m'etonnerait que qqun puisse m'aider mais fallait que ca sorte  :cry: , saloperie de machine  :fou:  :fou:  
 
:(


Message édité par Schtroumpheur le 16-11-2002 à 18:42:53
mood
Publicité
Posté le 16-11-2002 à 17:32:43  profilanswer
 

n°246608
lechad
Posté le 16-11-2002 à 17:53:37  profilanswer
 

Heu juste comme ça, t'aurait pas oublié un GROUP BY dans la 2e requete? Tu l'as bien verifieé?
Essaie "echo $construct_rq_count" au cas ou, je voit que ca...

n°246618
Schtroumph​eur
bwwwwwaaaaarkkkkkkk!!!!!!
Posté le 16-11-2002 à 17:57:12  profilanswer
 

lechad a écrit a écrit :

Heu juste comme ça, t'aurait pas oublié un GROUP BY dans la 2e requete? Tu l'as bien verifieé?
Essaie "echo $construct_rq_count" au cas ou, je voit que ca...




je te jure que je passe mon temps a faire un echo juste avant l'execution, et j'ai bien mis le GROUP BY regarde par toi meme :
 
vla l'adresse du site :/ la requete s'affiche en haut grmble
 
le pire c que quand je la copie et colle cette requete dans phpmyadmin ca marche bien , c la que c completement absurde !  
 
( fait pas attention auxmessages debiles c pour tester ;) )  
 
http://www.decorations.be/gbb/?act [...] t&PostID=1

n°246629
omega2
Posté le 16-11-2002 à 18:05:40  profilanswer
 

Ca serait peut être pas con d'exécuter toute la requête dans phpmyadmin et donc ne pas s'arrêter au milieu.
 
Ta requête complète, c'est :
 

Code :
  1. SELECT COUNT(*) AS nbposts FROM gbb_Posts WHERE Username='Caroline' OR Username='David' OR Username='Duduuuule' GROUP BY Username ORDER BY Username ASC


 
Celle que t'as testé, c'est :

Code :
  1. SELECT COUNT( * ) AS NbPosts FROM gbb_Posts WHERE Username = 'Caroline' OR Username = 'David' OR Username = 'Duduuuule' GROUP BY Username


 
Au fait, t'as descaractère bizare au milieu de ta requête, c'est pas ça qui foutrait la merde?
 
Quand on coupe au niveau des caractères bizare, on optient la requête :
 

Code :
  1. SELECT COUNT(*) AS nbposts FROM gbb_Posts WHERE  Username='Caroline' OR Username='David' OR Username='Duduuuule'


 
Et hop, plus de GROUP BY donc, le count(*) agis sur tout.
C'est con quand même.

n°246637
Schtroumph​eur
bwwwwwaaaaarkkkkkkk!!!!!!
Posté le 16-11-2002 à 18:14:42  profilanswer
 

omega2 a écrit a écrit :

Ca serait peut être pas con d'exécuter toute la requête dans phpmyadmin et donc ne pas s'arrêter au milieu.
 
Ta requête complète, c'est :
 

Code :
  1. SELECT COUNT(*) AS nbposts FROM gbb_Posts WHERE Username='Caroline' OR Username='David' OR Username='Duduuuule' GROUP BY Username ORDER BY Username ASC


 
Celle que t'as testé, c'est :

Code :
  1. SELECT COUNT( * ) AS NbPosts FROM gbb_Posts WHERE Username = 'Caroline' OR Username = 'David' OR Username = 'Duduuuule' GROUP BY Username


 
Au fait, t'as descaractère bizare au milieu de ta requête, c'est pas ça qui foutrait la merde?
 
Quand on coupe au niveau des caractères bizare, on optient la requête :
 

Code :
  1. SELECT COUNT(*) AS nbposts FROM gbb_Posts WHERE  Username='Caroline' OR Username='David' OR Username='Duduuuule'


 
Et hop, plus de GROUP BY donc, le count(*) agis sur tout.
C'est con quand même.




 
Je comprends pas de quel caractere bizzare tu parles???  
 
jai testé avec ou sans le order by, ca change rien du tout

n°246640
lechad
Posté le 16-11-2002 à 18:15:56  profilanswer
 

Je me trompe peut-etre mais apparement c bon la non?  
Il affiche
2
2
1
en bas de la page...  
Ce ce qui te faut non?

n°246642
Schtroumph​eur
bwwwwwaaaaarkkkkkkk!!!!!!
Posté le 16-11-2002 à 18:17:51  profilanswer
 

lechad a écrit a écrit :

Je me trompe peut-etre mais apparement c bon la non?  
Il affiche
2
2
1
en bas de la page...  
Ce ce qui te faut non?
 




oui c ce quil me faut mais, ne crie pas victoire cela je l'obtiens en faisant un autre bout de code ailleur dans le script mais en ayant copié collé la requete aussi pour tester, et la curieusement ca marche ???????????
 
 
c'est vraiemnt incomprehensible....

n°246643
omega2
Posté le 16-11-2002 à 18:18:11  profilanswer
 

schtroumpheur a écrit a écrit :

 
 
Je comprends pas de quel caractere bizzare tu parles???  
 
jai testé avec ou sans le order by, ca change rien du tout
 



Ca, c'est toi seul qui peut nous le dire, moi, j'utilises mozilla et au milieu de ta requête, je vois deux carrés à la place de deux caractère inafichable et ce sont pas des return.
Quand je fais un copier collé de l'ensemble de ta requête, le copié collé ce coupe au niveau de ces caractères là.
 
Bref, a toi de vérifier a quoi ils corespondent vu qu'ils ont l'air de mettre l'embrouille dans ta requête.

n°246646
Schtroumph​eur
bwwwwwaaaaarkkkkkkk!!!!!!
Posté le 16-11-2002 à 18:20:15  profilanswer
 

en fait tout les critere OR sont concaténé chaque fois et on obtiens a la fin le $construct_rq_count qui est une requete complet, et quand je l'affiche elle est correct je la copie dans phpmyadmin piur la tester ca marche, mais si je l'execute, direct apres avec mysql_query ca marche pas..
 
si je concatene rien du tout et que je met la requete telle qu'elle dans mysql_query, ca marche... j'ai fait ca des millliers de fois de concatener pour obtenir une requete;.. jamais eu de prob.. jamais, et la il fait comme ci jai pas mis de group by alors kil y est, c'est a devenir dingue ... chui vener :(  [:nowad]  [:nowad]  [:nowad]  [:nowad]

n°246648
Schtroumph​eur
bwwwwwaaaaarkkkkkkk!!!!!!
Posté le 16-11-2002 à 18:21:16  profilanswer
 

omega2 a écrit a écrit :

Ca, c'est toi seul qui peut nous le dire, moi, j'utilises mozilla et au milieu de ta requête, je vois deux carrés à la place de deux caractère inafichable et ce sont pas des return.
Quand je fais un copier collé de l'ensemble de ta requête, le copié collé ce coupe au niveau de ces caractères là.
 
Bref, a toi de vérifier a quoi ils corespondent vu qu'ils ont l'air de mettre l'embrouille dans ta requête.




 
 :ouch:  :ouch:  :ouch:  :ouch:  je v tester avec mozilla, mais je vois pas d'ou il pourraient venir ces *** de caractere !!! c impossible ****..
 
 :ouch:  [:nowad]  [:nowad]  [:nowad]

mood
Publicité
Posté le 16-11-2002 à 18:21:16  profilanswer
 

n°246651
lechad
Posté le 16-11-2002 à 18:21:46  profilanswer
 

arf.
Bah je sais pas...
Moi sous ie j ai pas de carre... Et le copier/coller pose pas de probleme, la requete est traitée en entiere.

n°246653
Schtroumph​eur
bwwwwwaaaaarkkkkkkk!!!!!!
Posté le 16-11-2002 à 18:24:21  profilanswer
 

OK j'ai vu ces deux carectere, chez mois ils s'affichent en caractere japonais loool
 
mais je crois savoir d'ou cela viens, oulalalala
 
en fait quand je concatene les different OR et que ca se fini, ily a un OR en trop a la fin et pour le virer je fais ceci
$req_OR=$req_OR[strlen($req_OR)-1]="";
$req_OR=$req_OR[strlen($req_OR)-2]="";
 
et c'est cela qui mettrait ce caractere bidon???
 
comment faire pour supprimer le OR autrement et sans que ce caractere pourris ne viennent??
 
on avance, sans toi j'aurais jamais pensé aller voir avec mozilla , omega merci


Message édité par Schtroumpheur le 16-11-2002 à 18:24:59
n°246654
lechad
Posté le 16-11-2002 à 18:24:48  profilanswer
 

schtroumpheur a écrit a écrit :

en fait tout les critere OR sont concaténé chaque fois et on obtiens a la fin le $construct_rq_count qui est une requete complet, et quand je l'affiche elle est correct je la copie dans phpmyadmin piur la tester ca marche, mais si je l'execute, direct apres avec mysql_query ca marche pas..
 
si je concatene rien du tout et que je met la requete telle qu'elle dans mysql_query, ca marche... j'ai fait ca des millliers de fois de concatener pour obtenir une requete;.. jamais eu de prob.. jamais, et la il fait comme ci jai pas mis de group by alors kil y est, c'est a devenir dingue ... chui vener :(  [:nowad]  [:nowad]  [:nowad]  [:nowad]  




 
Montre nous ton code, on sait jamais...
Mais c'est vrai que ton truc c a devenir  :pt1cable:
 
edit: j'arrive trot tard...


Message édité par lechad le 16-11-2002 à 18:25:56
n°246655
omega2
Posté le 16-11-2002 à 18:25:13  profilanswer
 

schtroumpheur a écrit a écrit :

en fait tout les critere OR sont concaténé chaque fois et on obtiens a la fin le $construct_rq_count qui est une requete complet, et quand je l'affiche elle est correct je la copie dans phpmyadmin piur la tester ca marche, mais si je l'execute, direct apres avec mysql_query ca marche pas..
 
si je concatene rien du tout et que je met la requete telle qu'elle dans mysql_query, ca marche... j'ai fait ca des millliers de fois de concatener pour obtenir une requete;.. jamais eu de prob.. jamais, et la il fait comme ci jai pas mis de group by alors kil y est, c'est a devenir dingue ... chui vener :(  [:nowad]  [:nowad]  [:nowad]  [:nowad]  



Bon, fait un "echo strlen" de ta requête et conte en suite à la main le nombre de caractère que tu lis à l'écran.
Si je me trompes pas, tu véras une diférence de 2 caractères entre ce que t'as à l'écran et ce que php à trouvé.
 
PS : Ces deux caractère sont pas affiché par IE. la solution, réécrit donc la ligne qui te rajoute le group by à ta requête et efface l'ancienne. C'est à ce niveau là que tu dois avoir la merde.

n°246656
Schtroumph​eur
bwwwwwaaaaarkkkkkkk!!!!!!
Posté le 16-11-2002 à 18:25:52  profilanswer
 

lechad a écrit a écrit :

 
 
Montre nous ton code, on sait jamais...
Mais c'est vrai que ton truc c a devenir  :pt1cable:  




ben je viens de localisé le prob grace a omega, maintenant, faudrait le resoudre,... ca devrait pas etre trop dur...
 
ouf... me voila rassuré chui pas barge, mais c quand meme bizarre ces caractere qui s'ajoutent, mais y a surement une explication logique  :o

n°246657
Schtroumph​eur
bwwwwwaaaaarkkkkkkk!!!!!!
Posté le 16-11-2002 à 18:27:32  profilanswer
 

omega2 a écrit a écrit :

Bon, fait un "echo strlen" de ta requête et conte en suite à la main le nombre de caractère que tu lis à l'écran.
Si je me trompes pas, tu véras une diférence de 2 caractères entre ce que t'as à l'écran et ce que php à trouvé.
 
PS : Ces deux caractère sont pas affiché par IE. la solution, réécrit donc la ligne qui te rajoute le group by à ta requête et efface l'ancienne. C'est à ce niveau là que tu dois avoir la merde.




 
OK mais comment faire autrement pour virer les 2 dernier caractere d'une chaine???
 
on va dire que j'ai ceci  
 
$requete="select * from machin WHERE lolo=1 OR lala=2 OR";
 
comment je vire le OR autrement que comme j'ai fais pour eviter ce prob?

n°246658
omega2
Posté le 16-11-2002 à 18:28:00  profilanswer
 

schtroumpheur a écrit a écrit :

OK j'ai vu ces deux carectere, chez mois ils s'affichent en caractere japonais loool
 
mais je crois savoir d'ou cela viens, oulalalala
 
en fait quand je concatene les different OR et que ca se fini, ily a un OR en trop a la fin et pour le virer je fais ceci
$req_OR=$req_OR[strlen($req_OR)-1]="";
$req_OR=$req_OR[strlen($req_OR)-2]="";
 
et c'est cela qui mettrait ce caractere bidon???
 
comment faire pour supprimer le OR autrement et sans que ce caractere pourris ne viennent??
 
on avance, sans toi j'aurais jamais pensé aller voir avec mozilla , omega merci



Ben moi, j'ai mozilla comme navigateur principal. Ca aide. ;)
 
Tu pourais utiliser la fonction substr. Comme ça, pas besoin de tremplacer la fin de ta chaine par des "" vu que tu prendra une copie qui les contient pas.

n°246660
lechad
Posté le 16-11-2002 à 18:29:21  profilanswer
 

Sinon tu concatene d'abord la premiere condtion puis tu fais une boucle pour rajouter les autre precédées d'un OR. Moi je trouve ca plus propre...  :na:  

n°246661
Schtroumph​eur
bwwwwwaaaaarkkkkkkk!!!!!!
Posté le 16-11-2002 à 18:29:57  profilanswer
 

omega2 a écrit a écrit :

Ben moi, j'ai mozilla comme navigateur principal. Ca aide. ;)
 
Tu pourais utiliser la fonction substr. Comme ça, pas besoin de tremplacer la fin de ta chaine par des "" vu que tu prendra une copie qui les contient pas.




 
OK on va tester ca...

n°246663
omega2
Posté le 16-11-2002 à 18:30:37  profilanswer
 

schtroumpheur a écrit a écrit :

 
ben je viens de localisé le prob grace a omega, maintenant, faudrait le resoudre,... ca devrait pas etre trop dur...
 
ouf... me voila rassuré chui pas barge, mais c quand meme bizarre ces caractere qui s'ajoutent, mais y a surement une explication logique  :o  



L'explication logique, c'est qu'à tout les coups, ca effacait pas le caractère mais le remplacait par un caractère bidon donc le code ASCII n'était pas affichable.
la prochaine fois, remplace par " " ca sera déjà mieux. ;)

n°246671
Schtroumph​eur
bwwwwwaaaaarkkkkkkk!!!!!!
Posté le 16-11-2002 à 18:32:54  profilanswer
 

omega2 a écrit a écrit :

Ben moi, j'ai mozilla comme navigateur principal. Ca aide. ;)
 
Tu pourais utiliser la fonction substr. Comme ça, pas besoin de tremplacer la fin de ta chaine par des "" vu que tu prendra une copie qui les contient pas.




 
Bon ben voila ca marche, ouf !
 
'tain tout ca pour un petit carré  :lol:  
 
Merci bcp de les avoir reperé entk...
 
A+ :)

n°246672
Schtroumph​eur
bwwwwwaaaaarkkkkkkk!!!!!!
Posté le 16-11-2002 à 18:33:30  profilanswer
 

omega2 a écrit a écrit :

L'explication logique, c'est qu'à tout les coups, ca effacait pas le caractère mais le remplacait par un caractère bidon donc le code ASCII n'était pas affichable.
la prochaine fois, remplace par " " ca sera déjà mieux. ;)




 
 :jap:

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP/MYSQL] - alors la si qqun y comprends qque chose, CHAPO! [résolu]

 

Sujets relatifs
[PHP] Pinger une adresse DNS et retourner un gif 'online' ou 'offline'[PhP] Par ou commencer ?
Redirection en fonction de la résolution [Resolu][MySQL] - Personnaliser le format de la date/heure dans une table?
Questions sur les Dates PHP ( - assez urgent - )[PHP] Problème de variable avec Script de News
tableaux PHP et javascripti18n dans une appli web [RESOLU]
[MySQL] Passer en InnoDB ca marche pasAccès à Access avec PHP
Plus de sujets relatifs à : [PHP/MYSQL] - alors la si qqun y comprends qque chose, CHAPO! [résolu]


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR