help selection sql - PHP - Programmation
Marsh Posté le 22-11-2002 à 16:07:00
Pas claire la question.
C'est que les mêmes couleurs que quoi que tu veux voir affiché?
Marsh Posté le 22-11-2002 à 16:10:57
je réexplique
Mon site est multi theme; dans mon systeme de postage de "news", on peut cocher tel ou tel theme,
ses theme sont en faite des variables de couleurs. en gros, qnd tu coche XBOX ça te met de la couleur verte.
Ce que je voudrais c pouvoir appeler que tel theme; donc par exemple n'appeler que les news concernant la xbox.
On a donc une variable "couleur" commune a tous les meme themes
Marsh Posté le 22-11-2002 à 16:16:39
je pense qu'il est possible de faire appel a toutes les données de la base de donnée possédant la meme variable "couleur" non ?
Marsh Posté le 22-11-2002 à 16:24:16
Donc, t'as des thèmes d'un côté avec une couleur pour chacun
et des news/articles/autre de l'autre.
Bref, tu voudrais assigner à chaque thème une série d'articles.
Le plus simple c'est de faire :
select table1.donnee
from table1,table2
where table1.couleur=table2.couleur
and theme=$n
theme est l'identifiant du thème, si l'identifiant est couleur alors ca donne :
select donnee
from table1
where table1.couleur=$n
Pour faire plus souple, t'utilise une troisième table qui te dit quelles catégories d'articles/de news/autre corespondent à tel thème.
DU genre PS1/PS2 pour un même thème
XBOX pour un autre thème
N64/Supernintendo/GameBoy pour un troisième ...
Ca donne :
select table1.donnee
from table1,table2,table3
where table1.categorie=table3.categorie
and table3.couleur=table2.couleur
and theme=$n
Marsh Posté le 22-11-2002 à 16:30:03
heum
disons que j'ai des articles qui possedent chacuns une variable appelée "couleur".
ce que je voudrais c n'afficher que les articles qui possedent par exemple la variable "couleur" = 76d741
es ce possible ? merci de ton aide
Marsh Posté le 22-11-2002 à 16:44:04
Spy-master a écrit a écrit : heum disons que j'ai des articles qui possedent chacuns une variable appelée "couleur". ce que je voudrais c n'afficher que les articles qui possedent par exemple la variable "couleur" = 76d741 es ce possible ? merci de ton aide |
oui c'est possible.
Sufit de faire un select sur la table avec la couleur comme condition (même principe que pour ton autre problème)
Marsh Posté le 22-11-2002 à 16:46:58
en modifiant ça ??
$query = "SELECT * FROM DVnews where id = $id";
if(!isset($id))
{
$query = "SELECT * FROM DVnews ORDER BY id DESC LIMIT 0,5";
}
en modifiant ça ?
Marsh Posté le 22-11-2002 à 16:56:17
Spy-master a écrit a écrit : en modifiant ça ?? $query = "SELECT * FROM DVnews where id = $id"; if(!isset($id)) { $query = "SELECT * FROM DVnews ORDER BY id DESC LIMIT 0,5"; } en modifiant ça ? |
Oui, c'est bien ça.
une requête de base est sous la forme
SELECT liste_des_champs
FROM table
WHERE conditions
Essayes de trouver une doc sur SQL, ca sera expliqué ce que tu peux faire avec. (plus exatement, les chôses simple seront expliqué)
Après il te restera plus qu'à comprendre comme utiliser les requêtes et comme construire le code PHP autour pour réaliser tout ce que tu veux (ou presque tout )
Marsh Posté le 22-11-2002 à 17:11:01
si je comprend bien je dois mettre ça :
$query = "SELECT * FROM DVnews where 76d741 = $couleur";
Marsh Posté le 22-11-2002 à 17:21:50
ou plutot
$query = "SELECT * FROM DVnews where couleur = 76d741";
en tous cas aucun des deux ne foncionne
Marsh Posté le 22-11-2002 à 17:28:14
C'est une zone de type texte, il faut que tu l'entoure par des ".
vu que tes chaines de caractères utilisent le " pour signaler le début et là fin, il faut les faire précéder par des \ .
Ta requête deviens :
$query = "SELECT *
FROM DVnews where
couleur = \"$couleur\"";
Sinon, tu peux déjà prendre l'habitude de sortir les noms des vairables de tes chaines. Ca t'éviteras d'avoir des problèmes avec les tableaux ou si t'as du texte qui vient se colé au nom de ta variable.
ca donne alors :
$query = "SELECT *
FROM DVnews where
couleur = \"".$couleur."\"";
Marsh Posté le 22-11-2002 à 17:29:02
j'ai trouvé tout seul
Un grand merci a vous tous
$query = "SELECT * FROM DVnews WHERE couleur='$couleur'";
Marsh Posté le 22-11-2002 à 16:03:33
voili dans les valeurs de ma base de donnée, j'en ai appelée une "couleur"; selon ce que je coche dans mon systeme de postage, ça fait varier la couleur.
Serait il possible de demander à la page de n'afficher que les meme couleurs ?