|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 |
|
Nouveau Membre du Club
![]() Étudiant Inscription : février 2007 Messages : 150 ![]() |
bonjour,
Je fais un site en php/mysql, mais j'ai une requete correcte qui m'envoie un resultat faux. Voici ma requete Code SQL :
SELECT * FROM ANNONCE NATURAL JOIN PAYS WHERE Type=1 AND IdPays=1 AND AnnoncePayee=1 Les resultat qu'il me met est le suivant: des annonce qui n'ont pas de IdPays=1 en fait c'est comme si il n'en tenait pas compte du IdPays =1 Quelq'un a t'il une idée pour avancer merci d'avance
__________________
Il faut vivre le moment présent sans se soucier de l'avenir ni de revenir sur le passé |
|
|
00
|
|
|
#2 |
|
Membre habitué
![]() |
il considére ton 1 comme un true ! Met ton 1 entre guillements
|
|
|
00
|
|
|
#3 |
![]() ![]() Développeuse PHP/Java Inscription : avril 2007 Messages : 3 686 ![]() |
Bonjour
Ce n'est pas le résultat de ta requête qui est faux, c'est le reste du monde qui a planté. Conseil : réinstalle l'univers et redémarre. ![]() (désolée, on est vendredi soir et j'ai les plombs qui sautent Sérieusement : Si tu nous donnait au moins la structure de ta base de données, ça aiderait ! Et éventuellement le bout de code qui utilise la requête, ça peut servir aussi. EDIT : Roromix, c'est possible aussi.
__________________
Modératrice PHP Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur) Pour afficher votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) |
|
|
00
|
|
|
#4 | |
|
Nouveau Membre du Club
![]() Étudiant Inscription : février 2007 Messages : 150 ![]() |
Citation:
désolé moi aussi je pete les plombs mais a cause du php!!!!
__________________
Il faut vivre le moment présent sans se soucier de l'avenir ni de revenir sur le passé |
|
|
|
00
|
|
|
#5 | |||
|
Nouveau Membre du Club
![]() Étudiant Inscription : février 2007 Messages : 150 ![]() |
Citation:
Code :
__________________
Il faut vivre le moment présent sans se soucier de l'avenir ni de revenir sur le passé |
|||
|
|
00
|
|
|
#6 | ||
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
Tu ne mets toujours pas de guillemets autour de tes champs ce qui fait qu'on ne sait pas si c'est ca l'erreur.
As-tu essayé d'effectuer la requete dans PhpMyAdmin avant pour voir si ca te retourne les bons résultats? Ca permettrait de savoir si l'erreur vient de la manière dont tu crées la requete en php ou de la requete elle meme pour les guillemets ajoutes les comme ca : Code :
|
||
|
|
00
|
|
|
#7 | ||
![]() ![]() Développeuse PHP/Java Inscription : avril 2007 Messages : 3 686 ![]() |
Bon, à défaut de pouvoir réinstaller l'univers
, on va éplucher ça 1) : es-tu sûr que tes valeurs $_SESSION[...] sont les bonnes ? Je te conseille de mettre une série d'echo avant ta magnifique sucession de if. Et tant qu'on y est, d'en rajouter au niveau de chaque requête, histoire d'être sûr que c'est la bonne requête au bon endroit, du genre : Code php :
3) qui découle du 2) : je crois qu'il manque la partie SELECT FROM de la 1ere série de if. 4) comme vient de le dire koopajah, si ton champ est une chaine de caratères, rajoute des ' '
__________________
Modératrice PHP Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur) Pour afficher votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) |
||
|
|
00
|
|
|
#8 |
|
Membre habitué
![]() |
Voila, très bien, c'est ce qu'il faut faire.
|
|
|
00
|
|
|
#9 |
|
Nouveau Membre du Club
![]() Étudiant Inscription : février 2007 Messages : 150 ![]() |
J'ai rajouter des guillemets chaque fois et ça continue a foiré
HELP ME!!
__________________
Il faut vivre le moment présent sans se soucier de l'avenir ni de revenir sur le passé |
|
|
00
|
|
|
#10 |
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
Ben c'est ce qu'on fait, on t'aide. Mais essaies de répondre à toutes nos questions.
Fais ta requete directement dans phpmyadmin et vérifies qu'elle marche deja! Ensuite, fais les echo dont Celira t'a parlé pour vérifier dans quels cas tu te places. |
|
|
00
|
|
|
#11 | |||
|
Nouveau Membre du Club
![]() Étudiant Inscription : février 2007 Messages : 150 ![]() |
Citation:
Pour la concatenation, je suis obligé j'ai pas le choix selon mon prof ça diminue les chances d'etre injecté. Et por les guillemet j'ai essayé mais ça foire toujours mais pourquoi ça marche dans d'autre cas et pas dans celui la, touts mes champs sont sont des INT
__________________
Il faut vivre le moment présent sans se soucier de l'avenir ni de revenir sur le passé |
|||
|
|
00
|
|
|
#12 |
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
As-tu essayé de faire ta requete dans PhpMyAdmin?
|
|
|
00
|
|
|
#13 |
![]() ![]() Développeuse PHP/Java Inscription : avril 2007 Messages : 3 686 ![]() |
Si tous les champs sont des INT, les ' ' ne sont pas indispensables...
Est-ce que ça pourrait venir de la jointure ? Tu peux donner la structure des tables STP ?
__________________
Modératrice PHP Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur) Pour afficher votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) |
|
|
00
|
|
|
#14 |
|
Nouveau Membre du Club
![]() Étudiant Inscription : février 2007 Messages : 150 ![]() |
Oui je viens de la tester sur phpmyadmin et elle marche .Je l'ai prise telle que je l'ai affichee la premiere fois
comment ça se fait?? d'un coté ça marche et pas l'autre??
__________________
Il faut vivre le moment présent sans se soucier de l'avenir ni de revenir sur le passé |
|
|
00
|
|
|
#15 |
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
Bon si elle marche ca ne vient pas de la jointure (je me disais la meme chose que toi Celira).
Est-ce que tu peux poster ton nouveau code maintenant, et pas juste le morceau avec les if pour essayer de comprendre ce qui se passe... |
|
|
00
|
|
|
#16 | ||
|
Nouveau Membre du Club
![]() Étudiant Inscription : février 2007 Messages : 150 ![]() |
ok ben voila ma requete complete
Code :
__________________
Il faut vivre le moment présent sans se soucier de l'avenir ni de revenir sur le passé |
||
|
|
00
|
|
|
#17 |
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
D'accord, maintenant c'est dans quel cas des if/else que ca te génère une requete fausse.
Tout le temps? dans un cas particulier? Quelles sont les données dans $_POST[] avant, et quelle est la requete exacte? |
|
|
00
|
|
|
#18 |
|
Nouveau Membre du Club
![]() Étudiant Inscription : février 2007 Messages : 150 ![]() |
En fait dans c'est juste dans le cas ou le type=1 et que le pays =1 que la region est =0, et annonce payée =1
Voila la requete a cet endroit la. Code :
$sql.=" WHERE Type=".$_SESSION['Type']." AND IdPays=".$_SESSION['paysquick']." AND AnnoncePayee=1";
__________________
Il faut vivre le moment présent sans se soucier de l'avenir ni de revenir sur le passé |
|
|
00
|
|
|
#19 |
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
Personnellement, je sèche là désolé...
tu peux donner la structure de tes deux tables? Ainsi que la requete elle-meme... Fais un echo juste avant le mysql_query() et montres nous comment tu fetches les resultats ensuite |
|
|
00
|
|
|
#20 |
|
Nouveau Membre du Club
![]() Étudiant Inscription : février 2007 Messages : 150 ![]() |
Bah c'est pas grave merci quand meme pour ton aide
Je vais continuer a chercher
__________________
Il faut vivre le moment présent sans se soucier de l'avenir ni de revenir sur le passé |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com