query met WHERE command

Pagina: 1
Acties:
  • 33 views sinds 30-01-2008

  • TomPé
  • Registratie: Januari 2003
  • Laatst online: 17:00
Korte uitleg:

Ik ben bezig met het maken van een webshop. Deze bevat categorieen en subcategorieen en natuurlijk artikelen. Als ik in het admin menu een artikel ga toevoegen selecteer ik eerst dmv een query de categorie. Vervolgens wil ik de subcategorie kiezen ook dmv een query maar deze query moet alleen de subcategorieen laten zien die horen bij de categorie die ik daar boven heb geselecteerd.

Dit moet met het where command had ik opgezocht maar ik kom er niet helemaal uit

Mijn query's zijn de volgende;

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
      <select name="arcat" id="arcat" size="1">
        <option selected></option>
        <?php
    $query1="SELECT * FROM categorie ORDER BY cat_naam"; 
    $result1 = mysql_query($query1) or die (mysql_error()); 

    while ($row1 = mysql_fetch_assoc($result1))
    {
        print '<option value="' . $row1['cat_id'] . '">' . $row1['cat_naam'] . '</option>' . "\n"; 
    }
    ?>
      </select>
    </span></td>
   </tr>
      <tr> 
    <td bgcolor="#CCCCCC"> 
      <p class="style3 style4">Kies een <b>subcategorie</b>:          <BR>
      </p>
      </td> 
    <td bgcolor="#CCCCCC"><span class="style5">
      <select name="arsubcat" id="arsubcat" size="1">
        <option selected></option>
        <?php
    $query="SELECT * FROM subcategorie WHERE cat_naam=' ". $query1 ." '  ORDER BY sub_naam"; 
    $result = mysql_query($query) or die (mysql_error()); 

    while ($row = mysql_fetch_assoc($result))
    {
        print '<option value="' . $row['sub_id'] . '">' . $row['sub_naam'] . '</option>' . "\n"; 
    }
    ?>
      </select>
    </span></td>
   </tr>


in de tabel artikel heb ik onder andere de velden: arcode, arcat, arsubcat
in de tabel categorie heb ik de velden: cat_id(primary key), cat_naam en cat_omschr
in de tabel subcategorie heb ik de velden: sub_id (primary key), sub_naam, cat_naam en sub_omschr

TomPé


  • Osiris
  • Registratie: Januari 2000
  • Niet online
"Je komt er niet helemaal uit".. Wat zijn de foutmeldingen die je krijgt? Wát gaat er precies mis? Aub iets duidelijker zijn...

Verder pleur je '$query1' in je 2e query.. Nu staat bovenaan je script wat $query1 is, dus dan krijg je:

SELECT * FROM subcategorie WHERE cat_naam='SELECT * FROM categorie ORDER BY cat_naam' ORDER BY sub_naam

Nu snap je hopelijk zelf ook wel dat dat niet gaat werken?

Je zult sowieso eerst feedback van de user moeten hebben, aangezien de opties in eerste instantie client-side te zien zullen zijn.. PHP kan server-side moeilijk kijken via een glazen bol ofzo wat de client selecteert, nietwaar?

[ Voor 32% gewijzigd door Osiris op 02-09-2005 12:38 ]


  • Rac-On
  • Registratie: November 2003
  • Niet online
gebruik een echo om je query als uitvoer naar je browser te sturen. Je hebt dan tenminste de exacte query die je naar je db server stuurt. Gooi die query vervolgens in een sql interface en kijk wat voor foutmelding eruit komt.

ga vervolgens met die query aan de slag net zo lang tot het wel werkt, en stop je aangepast query dan terug in je php script. voila, klaar!

doet niet aan icons, usertitels of signatures


  • Osiris
  • Registratie: Januari 2000
  • Niet online
rac-on schreef op vrijdag 02 september 2005 @ 12:45:
gebruik een echo om je query als uitvoer naar je browser te sturen. Je hebt dan tenminste de exacte query die je naar je db server stuurt. Gooi die query vervolgens in een sql interface en kijk wat voor foutmelding eruit komt.

ga vervolgens met die query aan de slag net zo lang tot het wel werkt, en stop je aangepast query dan terug in je php script. voila, klaar!
Dr mist nog een heel stuk scripting ivm de feedback van de user, aangezien de 2e query alleen de subcats moet laten zien die de user geselecteerd heeft ;)

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 15-04 22:07

NMe

Quia Ego Sic Dico.

Sorry, maar dit is iets dat je echt makkelijk zelf moet kunnen vinden. Het probleem is hier dat je blijkbaar geen idee hebt hoe je met databases omgaat in PHP. Ik wil je dan ook aanraden om eerst nog een tutorial te gaan doen of een goed boek te lezen, want zoals Osiris al zegt maak je enkele basale denkfouten die je remmen in de ontwikkeling.

Pak dus even Google erbij en zoek naar een goede tutorial die de basis van databases uitlegt in combinatie met PHP. Mocht je er daarna nog steeds niet uit komen, dan kun je hier natuurlijk een nieuw topic openen. :)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Dit topic is gesloten.