hoi,

Ik ben bezig met een nieuwssyteem voor één van mij websites, het nieuws wordt gerangschikt in verschillende categorieen. DAt is geen probleem.

Maar ik heb geen idee hoe ik een option kan selecteren als ik een artikel wil aanpassen.

de waarde van de categorie die geselecteerd moet worden staat in $result['cat']

<select name="categorie">
<option value="">--- Kies een categorie ---</option>
<option value="1">optie 1</option>
<option value="2">optie 2</option>
<option value="3">optie 3</option>
</select>

hoe kan ik dan zorgen dat optie is geselecteerd als $result['cat']=3?

Het kan natuurlijk heel omslachtig et allemaal if's enzo, maar is er ook een makkelijke manier om dit te doen?
voorbeeld:
<?php
$result['cat'] = 2;

echo'
<select name="categorie">
<option value="">--- Kies een categorie ---</option>
<option '. ($result['cat'] == 1 ? ' selected="selected" ' : '' ) .'value="1">optie 1</option>
<option '. ($result['cat'] == 2 ? ' selected="selected" ' : '' ) .'value="2">optie 2</option>
<option '. ($result['cat'] == 3 ? ' selected="selected" ' : '' ) .'value="3">optie 3</option>
</select>';
?>
Heb je de categorieën niet in je database staan?


<?php
    // Hier zit je al in je resultaat van je nieuwssysteem. $newsRow is dus al beschikbaar
    $selCatsSQL = "SELECT id, title FROM categories ORDER BY title;";
    if(($catRes = mysql_query($selCatsSQL) !== false) {
        if(mysql_num_rows($catRes)) {
            echo '<select name="categorie">
            <option value="0">-- Kies een categorie --</option>';
            while($cat = mysql_fetch_assoc($catRes)) {
                echo '<option value="'.$cat['id'].'"'.($newsRow['cat'] == $cat['id'] ? ' selected="selected"' : '').'>'.$cat['title'].'</option>';
            }
            echo '</select>';
        }
    }
?>

Zoiets kan je ook gebruiken dan.

edit: Typo

Reageren