Problème qur requete mysql
Résolu
fleurvar83
-
sophievar83hyeres Messages postés 41 Date d'inscription Statut Membre Dernière intervention -
sophievar83hyeres Messages postés 41 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Si vous pouviez m'aider sur ma requete.
SELECT *
FROM mes tables
WHERE condition1 and condition2 and ((condition3) OR (condition4) OR ( condition5))
J'ai créa une méta condition entre parenthèse. mais le résultat prend les condition 3 et 4 et 5, alors que je veux qu'il prenne l'une des conditions (3 ou 4 ou 5) passé dans mon url.
Le OR n'est pas prit en compte et est remplacé par "et".
Merci pour votre aide.
sophie
Si vous pouviez m'aider sur ma requete.
SELECT *
FROM mes tables
WHERE condition1 and condition2 and ((condition3) OR (condition4) OR ( condition5))
J'ai créa une méta condition entre parenthèse. mais le résultat prend les condition 3 et 4 et 5, alors que je veux qu'il prenne l'une des conditions (3 ou 4 ou 5) passé dans mon url.
Le OR n'est pas prit en compte et est remplacé par "et".
Merci pour votre aide.
sophie
A voir également:
- Problème qur requete mysql
- Mysql community server - Télécharger - Bases de données
- Mysql error 2002 ✓ - Forum Linux / Unix
- Erreur lors de l'envoi de la requête facebook - Forum Facebook
- Erreur de requete facebook - Forum Facebook
- Mysql a répondu : documentation connexion impossible : paramètres incorrects. - Forum Bases de données
40 réponses
C'est ce qu'il me semblait également ;-)
Edit : A mince.... mais c'est quelque chose comme cela je pense...
Non, inutile de faire une 20aines de requêtes; beurk :p
Bon est-ce que tu peux faire un export de ta table JEUX stp, et l'afficher ici. Merci.
Edit : A mince.... mais c'est quelque chose comme cela je pense...
Non, inutile de faire une 20aines de requêtes; beurk :p
Bon est-ce que tu peux faire un export de ta table JEUX stp, et l'afficher ici. Merci.
$Bingo_ANNUACASINO = "9999";
if (isset($_GET['Bingo_5'])) {
$Bingo_ANNUACASINO = $_GET['Bingo_5'];
}
$blackjack_ANNUACASINO = "9999";
if (isset($_GET['Blackjack_4'])) {
$blackjack_ANNUACASINO = $_GET['Blackjack_4'];
}
$backgamon_ANNUACASINO = "9999";
if (isset($_GET['Backgammon_3'])) {
$backgamon_ANNUACASINO = $_GET['Backgammon_3'];
}
Tu donnes à tes variables par défaut la même valeur que morsque tu les sélectionnes. Normal que toutes les variantes soient toujoures toutes sélectionnées.
Au passage, comme je te l'avais dit dès mon message n° 3, tu as considéré que la requête faisait un Et parce que tu voyais les résultats correspondnat Bingo ET ceux correspondnat au blackjack, etc... Or, ceci correspond bien au résultat d'un OU
if (isset($_GET['Bingo_5'])) {
$Bingo_ANNUACASINO = $_GET['Bingo_5'];
}
$blackjack_ANNUACASINO = "9999";
if (isset($_GET['Blackjack_4'])) {
$blackjack_ANNUACASINO = $_GET['Blackjack_4'];
}
$backgamon_ANNUACASINO = "9999";
if (isset($_GET['Backgammon_3'])) {
$backgamon_ANNUACASINO = $_GET['Backgammon_3'];
}
Tu donnes à tes variables par défaut la même valeur que morsque tu les sélectionnes. Normal que toutes les variantes soient toujoures toutes sélectionnées.
Au passage, comme je te l'avais dit dès mon message n° 3, tu as considéré que la requête faisait un Et parce que tu voyais les résultats correspondnat Bingo ET ceux correspondnat au blackjack, etc... Or, ceci correspond bien au résultat d'un OU
-- Structure de la table `jeux`
--
CREATE TABLE `jeux` (
`CasinoId` smallint(6) unsigned NOT NULL,
`Autre_1` tinyint(1) unsigned NOT NULL default '0',
`Baccarat_2` tinyint(1) unsigned NOT NULL default '0',
`Backgammon_3` tinyint(1) unsigned NOT NULL default '0',
`Blackjack_4` tinyint(1) unsigned NOT NULL default '0',
`Bingo_5` tinyint(1) unsigned NOT NULL default '0',
)
INSERT INTO `jeux` (`CasinoId`, `Autre_1`, `Baccarat_2`, `Backgammon_3`, `Blackjack_4`, `Bingo_5`,) VALUES
(1, 1, 0, 0, 1, 0, '),
--
CREATE TABLE `jeux` (
`CasinoId` smallint(6) unsigned NOT NULL,
`Autre_1` tinyint(1) unsigned NOT NULL default '0',
`Baccarat_2` tinyint(1) unsigned NOT NULL default '0',
`Backgammon_3` tinyint(1) unsigned NOT NULL default '0',
`Blackjack_4` tinyint(1) unsigned NOT NULL default '0',
`Bingo_5` tinyint(1) unsigned NOT NULL default '0',
)
INSERT INTO `jeux` (`CasinoId`, `Autre_1`, `Baccarat_2`, `Backgammon_3`, `Blackjack_4`, `Bingo_5`,) VALUES
(1, 1, 0, 0, 1, 0, '),
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Regardons le cas du Bingo.
Dans ton script, tu initialises $Bingo_ANNUACASINO = "1";
si dans l'url, il n'y a pas Bingo_5, cette valeur va rester la même.
Alors que s'il y avait Bingo_5=1, tu vas faire $Bingo_ANNUACASINO, ce qui ne change rien du tout.
Quand tu fais ta requête, toutes tes lignes où Bingo_5=1 vont sortir.
Avec le même raisonnement, tu vois que les lignes où Blackjack_4=1 et celles où Backgammon_3=1 vont sortir aussi.
Comme (je suppose) il y a toujours au moins un de ces jeux qui est à 1, toutes les lignes sortent.
Le OU de la requête se comporte bien comme un OU et non pas comme un ET
Dans ton script, tu initialises $Bingo_ANNUACASINO = "1";
si dans l'url, il n'y a pas Bingo_5, cette valeur va rester la même.
Alors que s'il y avait Bingo_5=1, tu vas faire $Bingo_ANNUACASINO, ce qui ne change rien du tout.
Quand tu fais ta requête, toutes tes lignes où Bingo_5=1 vont sortir.
Avec le même raisonnement, tu vois que les lignes où Blackjack_4=1 et celles où Backgammon_3=1 vont sortir aussi.
Comme (je suppose) il y a toujours au moins un de ces jeux qui est à 1, toutes les lignes sortent.
Le OU de la requête se comporte bien comme un OU et non pas comme un ET
oui mais alors comment faire pour que le resultat affiche uniquement la variable passé en url.
c'est à dire pour que ce lien http://localhost/PROJET_CASINO/ANNU_CASINO/annuaire_casinos_jeux.php?Baccarat_2=1 affiche uniquement les baccarats et pas les autres jeux ?
c'est à dire pour que ce lien http://localhost/PROJET_CASINO/ANNU_CASINO/annuaire_casinos_jeux.php?Baccarat_2=1 affiche uniquement les baccarats et pas les autres jeux ?
Voilà, c'est bien ce que je pensais. Y'a une solution, c'est découpé la chaine de caractère au "=", de mettre dans un tableau ce qu'il y a avant, du style url[0]=bingo etc.... et url[1]=ta_variable.
Je ne vois pas ce que cela change pour l'initialisation a 9999, ou a 0?
pour en revenir a ce que je disais, faire une boucle, et comparer la première colonne du tableau.
pour en revenir a ce que je disais, faire une boucle, et comparer la première colonne du tableau.
papymucho peux tu me donner un exemple concret concernant le découpage. excusez moi mais là je nage....
je suis en conf call là, je n'ai plus le temps désolé :/ Regarde avec la fonction split, ou avec toto... Je termine dans une heure, je repasserais une fois mon travail terminé.
Cordialement,
Cordialement,
comme tu m'as dit $Bingo_ANNUACASINO=1 Où j'ai dit ça moi ?
Justement ni 0 ni 1 !
il faut une autre valeur, par exemple 999. Et pas que sur $Bingo_ANNUACASINO, relis le post 23
Justement ni 0 ni 1 !
il faut une autre valeur, par exemple 999. Et pas que sur $Bingo_ANNUACASINO, relis le post 23
oui tu as dit ça en poste27.
concernant le post 23, j'avais testé tout à l'heure mais cela ne marchait pas non plus
concernant le post 23, j'avais testé tout à l'heure mais cela ne marchait pas non plus
CA Y EST !!!!!!!!!!!!!!!!!!! Cela marche.
J'ai fais comme tu m'a dis toto, (initialisé avec des chiffres comme 999) pourtant cela ne marchait pas tout à l'heure mais maintenant cela fonctionne !!!!!
mille merci !!!!
sophie
J'ai fais comme tu m'a dis toto, (initialisé avec des chiffres comme 999) pourtant cela ne marchait pas tout à l'heure mais maintenant cela fonctionne !!!!!
mille merci !!!!
sophie