Bezoekers kunnen hun website toevoegen dmv een formulier.
Op dit formulier heb ik een keuzelijst gezet.
Door het script wat ik heb gemaakt worden de categorienaam met daarachter de subcategorieën weergegeven.
Maar als een categorie géén subcategorie heeft wordt hij helemaal niet weergegeven. Ik weet wel hoe dat komt maar ik weet de oplossing niet.
Wie helpt me hiermee?
<?php
$query = "
SELECT
c.cat_naam,
s.sub_naam
FROM categorie AS c
JOIN
subcategorie AS s
ON c.cat_id = s.cat_id
GROUP BY s.sub_naam
ORDER BY c.cat_naam";
$result = mysql_query($query) or die ("Sorry maar ik kan de categorieën niet weergeven");
?>
<select name="categorie">
<?php
while($row = mysql_fetch_object($result)){
?>
<option value="<?php echo $categorie; ?>"><?php echo $row->cat_naam.' -> '.$row->sub_naam ; ?></option>
<?php
}
?>
</select>
Het menu heeft 26 items waarvan er misschien 3 geen submenu items hebben.
Ik bedoel niet helemaal niks, maar bij dit voorbeeld krijg je toch slechts 23 resultaten?
?
Onbekende gebruiker
27-02-2007 13:47
Ja, ik weet ook wel dat deze query laat zien alles wat ook een subitem heeft.
Maar hoe laat ik in diezelfde query dan de onderwerpen zien die geen subitem hebben.
Ik heb zelf nog nooit met join gewerkt. Maar ik denk dat die join er dan uit moet, alleen ik weet niet of het dan nog goed gaat. Misschien dat een van onze andere forumleden hier meer kennis van heeft.
<?php
$query = "
SELECT
c.cat_naam,
s.sub_naam
FROM categorie AS c
LEFT JOIN
subcategorie AS s
ON c.cat_id = s.cat_id
ORDER BY c.cat_naam";
$result = mysql_query($query) or die ("Sorry maar ik kan de categorieën niet weergeven");
?>
<select name="categorie">
<?php
while($row = mysql_fetch_object($result)){
?>
<option value="<?php echo $categorie; ?>"><?php echo $row->cat_naam.' -> '.$row->sub_naam ; ?></option>
<?php
}
?>
</select>
En zo dan?
[edit]
SanThe, ik denk dat je deze informatie dan wel leuk vind, is een tutorial waarin verschillende jointypes worden uitgelegd. 't is niet zo moeilijk, en de mogelijkheden met SQL tabellen worden vergroot, als je het vergelijkt met de standaard query's.