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

  FORUM HardWare.fr
  Programmation
  PHP

  Requete php

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Requete php

n°1496672
milie000
Posté le 28-12-2006 à 15:55:09  profilanswer
 

Bonjour
 
Je suis en train de passer ma boutique en ligne sous php  
 
 
$sql = 'SELECT nom_pdt, prix, description FROM produits WHERE categ = "La Cuisine"';
 
Voilà la requete que j'utilise pour afficher les produits, cependant dans ma base de donnée j'ai un champ stock et je souhaiterai que le site n'affiche que les pdts dont le stock est > 0 je pense qu il faut utiliser une requete if mais je ne sais pas commment ni ou la placer
 
merci d'avance à ceux qui pourront m'aider

mood
Publicité
Posté le 28-12-2006 à 15:55:09  profilanswer
 

n°1496677
sielfried
Posté le 28-12-2006 à 16:00:38  profilanswer
 

Indice : ta requête actuelle n'affiche que les produits de catégorie "La Cuisine". :spamafote:

n°1496681
rufo
Pas me confondre avec Lycos!
Posté le 28-12-2006 à 16:05:49  profilanswer
 

une requête if, ça ne veut pas dire grand chose. Pour qu'on puisse t'aider, il faudrait que tu nous montre une partie du modèle de données de ta base, genre, comment est géré le stock :
- c'est un simple champ numérique (un entier de 0 à n) dans la table contenant tes produits
- ou c'est dans une autre table qui gère le nombre d'items qu'il y a en stock pour chaque produit?
 
Si c'est le premier cas de figure, c'est simple :
$sql = 'SELECT nom_pdt, prix, description FROM produits WHERE categ = "La Cuisine" AND Stock > 0';
 
Dans le 2ième cas, une jointure interne suffit :  
$sql = 'SELECT p.nom_pdt, p.prix, p.description FROM produits p, stock s WHERE p.categ = "La Cuisine" AND p.ProduitID = s.ProduitID';
 
edit : j'avais pas vu que tu disais avoir un champ stock : c'est donc le 1er cas de figure que tu dois appliquer...


Message édité par rufo le 28-12-2006 à 16:07:12
n°1496682
milie000
Posté le 28-12-2006 à 16:06:16  profilanswer
 

lol merci pour l'indice
je suppose que ca doit donner qqchose de ce genre alors:
$sql = 'SELECT nom_pdt, prix, description FROM produits WHERE categ = "La Cuisine" WHERE stock > 0';
 
???

n°1496683
rufo
Pas me confondre avec Lycos!
Posté le 28-12-2006 à 16:07:27  profilanswer
 

milie000 a écrit :

lol merci pour l'indice
je suppose que ca doit donner qqchose de ce genre alors:
$sql = 'SELECT nom_pdt, prix, description FROM produits WHERE categ = "La Cuisine" WHERE stock > 0';
 
???


 
non : $sql = 'SELECT nom_pdt, prix, description FROM produits WHERE categ = "La Cuisine" AND Stock > 0';

n°1496685
milie000
Posté le 28-12-2006 à 16:08:10  profilanswer
 

okc'est un simple champ numérique (un entier de 0 à n) dans la table contenant les produits  
super merci ca marche avec AND !!!
 

n°1496686
rufo
Pas me confondre avec Lycos!
Posté le 28-12-2006 à 16:09:57  profilanswer
 

Si je puis me permettre, aller jeter un coup d'oeil sur un cours de SQL ne te ferait pas de mal...


Message édité par rufo le 28-12-2006 à 16:10:10
n°1496688
milie000
Posté le 28-12-2006 à 16:11:07  profilanswer
 

lol oui merci j'en ai fait plusieurs mais j'ai du mal à trouver les réponses à mes nombreuses questions!

n°1496689
rufo
Pas me confondre avec Lycos!
Posté le 28-12-2006 à 16:15:46  profilanswer
 
n°1496691
milie000
Posté le 28-12-2006 à 16:21:00  profilanswer
 

merci je v etudier ca !
par hasard t'en aurai pas un qui explique comment mettre en page le résultat d'une requete sql notmamment en lui appliquant un css??

mood
Publicité
Posté le 28-12-2006 à 16:21:00  profilanswer
 

n°1496695
rufo
Pas me confondre avec Lycos!
Posté le 28-12-2006 à 16:28:24  profilanswer
 

ben tuto php+mysql, c'est pas ça qui manque.

n°1497089
YaHa
Posté le 29-12-2006 à 14:18:36  profilanswer
 

milie000 a écrit :

merci je v etudier ca !
par hasard t'en aurai pas un qui explique comment mettre en page le résultat d'une requete sql notmamment en lui appliquant un css??


 
En fait une fois que tu auras extrait les données (dans un tableau en général) tu peux en faire ce que tu en veux, il n'y a pas de distinction quant à l'origine de tes données (variable simple ou valeur d'un tableau issu d'une requete SQL) quand tu vas les nettre en page. Si tu veux les afficher dans un tableau tout bête, par exemple, çà va donner :  
 
 
  $sql = "TA REQUETE";
   
  $result = mysql_query($sql);
     
  echo "<table border='2' cellpadding='2' cellspacing='2'>";  //envoi du code HTML pour commencer ton tableau
   
  while ($row = mysql_fetch_array($result, MYSQL_NUM))  //Tant qu'il arrive à extraire une nouvelle ligne de résultats...
  {
        echo "<tr>"; //envoi du code HTML du code html pour debuter une ligne du tableau
         
        echo "<td width='100'>".$row[0]."</td>";   // Affichage des données dans la "case" du dableau
        // en fait tu peux afficher ou alors tes colonnes une par une ([0],[1], etc..)ou toutes avec un for(){} par exemple.
         
        echo "</tr>";  //envoi du code HTML du code html pour finir une ligne du tableau
  }
  echo "</table>";   //envoi du code HTML pour finir ton tableau
 
 
En fait il faut voir que tout ce que va faire PHP c'est générer du code HTML (ou autres) dans ta page.
Donc vois dans un premier temps comment tu ferais pour le faire toi meme en HTML avec des donées statiques, puis le reste viendra tout seul, après ce n'est que de la logique et quelques fonctions à connaitre....

n°1497094
rufo
Pas me confondre avec Lycos!
Posté le 29-12-2006 à 14:32:22  profilanswer
 

Perso, je pense qu'il vaut mieux utiliser MYSQL_ASSOC plutôt que MYSQL_NUM, car c'est plus lisible d'avoir $row['MonChamp'] plutôt que $row[0]. En plus, si tu change l'ordre des champs dans le SELECT, tu tapes plus dans le bon champ :/
 
et plutôt qu'un for, mieux vaut utiliser foreach()


Message édité par rufo le 29-12-2006 à 14:32:57
n°1497101
milie000
Posté le 29-12-2006 à 14:45:36  profilanswer
 

En fait, j'ai crée mon tableau pas ds ma requete php et j'ai place ma requete dans une partie du tableau mais je voudrai ajouter une requete pour afficher des images dans une autre colonne du tableau est ce que je crée une deuxième requete dans la colonne ou est ce que je me suis gourée et il vaut mieux créer le tableau dans la requete pour que le simages puissent etre a cote de leur description?

n°1497102
YaHa
Posté le 29-12-2006 à 14:45:44  profilanswer
 

J'utilise les MYSQL_NUM pour pouvoir faire du for() avec une variable que j'incrémente, mais c'est vrai que c'est plus facile et souple à utiliser avec un nom de champ et un foreach.

n°1497103
YaHa
Posté le 29-12-2006 à 14:48:35  profilanswer
 

milie000 a écrit :

En fait, j'ai crée mon tableau pas ds ma requete php et j'ai place ma requete dans une partie du tableau mais je voudrai ajouter une requete pour afficher des images dans une autre colonne du tableau est ce que je crée une deuxième requete dans la colonne ou est ce que je me suis gourée et il vaut mieux créer le tableau dans la requete pour que le simages puissent etre a cote de leur description?


 
Euh j'ai pas tout compris mais il vaut mieux récupérer ton image (ou plutot son chemin d'accès) en même temps que les autre donées qui correspondent à ton produit, c'est beacoup plus simple.

n°1497104
milie000
Posté le 29-12-2006 à 14:50:40  profilanswer
 

ok mais alors je fais comment pour que l'image aille ds la colonne de gauche et le reste ds celle de droite ?
En fait je cherche  à obtenir la meme mise en page que http://www.ctendance.fr/cuisine.htm

n°1497109
rufo
Pas me confondre avec Lycos!
Posté le 29-12-2006 à 15:00:14  profilanswer
 

ben tu mets le $row[x] contenant l'url de l'image dans un <td><img src="$row[x]" /></td> et le reste des autres $row dans un autre <td>..</td>.
Y'a rien de compliqué. Le PHP, c'est générer dynamiquement du html. Donc, si t'as du mal, tu fais d'abord une maquette en html statique avec qq données (images et produits) et une fois que ta maquette est ok (le code html), tu rajoutes le code php qui va bien pour avoir le même résultat et les données qui proviennent cette fois d'une BD...

n°1497110
rufo
Pas me confondre avec Lycos!
Posté le 29-12-2006 à 15:04:28  profilanswer
 

au fait, je reviens sur cette phrase anodine

Citation :

"Je suis en train de passer ma boutique en ligne sous php"

Ta boutique, elle était sous quoi avant de la faire passer sous php?
 
Parce que visiblement, tu as un bagage technique bien mince pour faire une boutique en ligne toi même. Si ta boutique est mise en production, j'ai peur que tu te fasse hacker facilement à cause de trous de sécurité classiques...:/


Message édité par rufo le 29-12-2006 à 15:04:52
n°1497111
YaHa
Posté le 29-12-2006 à 15:04:54  profilanswer
 

milie000 a écrit :

ok mais alors je fais comment pour que l'image aille ds la colonne de gauche et le reste ds celle de droite ?
En fait je cherche  à obtenir la meme mise en page que http://www.ctendance.fr/cuisine.htm


 
Tu fais comme tu veux : imagine que ta requete soit :  
SELECT nom, prix, image FROM article WHERE sketuveux
 
Apres ton mysql_fetch_array(* ,MYSQL_ASSOC) effectué, tu aura un tableau ($row['nomduchamp'] dans mon exemple en bas) pour chaque ligne. après c'est à toi de choisir si tu vas afficher :  
 
[...] "<td>".$row['nom']."</td><td><img src='".$row['image']."'></td>" [...]  
 
ou
 
[...] "<td><img src='".$row['image']."'></td><td>".$row['nom']."</td>" [...]


Message édité par YaHa le 29-12-2006 à 15:07:27
n°1497113
milie000
Posté le 29-12-2006 à 15:06:10  profilanswer
 

c moi qui l'ai faite mais elle est uniquement en html pour le moment

n°1497124
rufo
Pas me confondre avec Lycos!
Posté le 29-12-2006 à 15:17:52  profilanswer
 

Au risque de passer pour un rabat-joie, je pense que tu devrais d'abord apprendre à maîtriser le xhtml et le css afin d'avoir un code plus "propre" (+ un peu de Javascript pour augmenter l'intéractivité).
Ensuite, tu te mets à PHP : session, récupération de données provenant de formulaires et apprendre à sécuriser ce qui a été saisi, les redirections...
Puis, tu apprends les bases de la modélisation d'un BD et le SQL.
Enfin, tu mixes PHP, Mysql, HTML, Javascript et CSS.
 
qq bons sites :  
www.commentcamarche.net
http://css.alsacreations.com/
http://fr.php.net/manual/fr/ref.array.php
http://www.fredcavazza.net/doc/tut [...] tape12.htm

mood
Publicité
Posté le   profilanswer
 


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

  Requete php

 

Sujets relatifs
[Résolu] Javascript / AJAX - Problème de réponse de requeteProbleme requete
Requete ne passe pasQuelle requete pour une clef absente ?
[MySQL / PHP] problème avec une requète je sèche !Requete min sur une liste
Question sur requêteRequête *entre deux dates
[SQL/Access] problème pour une requête en apparence assez simpleEst il possible d'importer un "etat" ou "requète" d'access sous VB6 ??
Plus de sujets relatifs à : Requete php


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