Ik heb een formulier gemaakt met meerkeuze lijst. Na verzenden wordt gecontroleerd of alle velden ingevuld zijn. Zo niet gaat deze terug. Daarom is het belangrijk dat de antwoorden onthouden worden.
Nu heb met wat knip en plakwerk wat gemaakt en werkt ook goed, maar als ik het laat valideren (http://validator.w3.org) krijg ik "moppers'. Dus er zitten nog schoonheidsfoutjes in die ik er niet uitkrijg. De melding is:
"VRAAG" is not a member of a group specified for any attribute.<option value="vraag" vraag>Een vraag</option>
Hieronder het script. Wie ziet zo hoe dit te verhelpen is. Alvast mijn dank.

<tr>
<td class="input" align="left" >Uw bericht betreft </td>
<td colspan="2" align="right" class="input">

<?php
$select1 = 'vraag';
$select2 = 'opmerking';
$select3 = 'bug';

switch ($_POST['reden_reactie']) {
case 'opgave_felicitatie':
$select1 = 'SELECTED';
break;
case 'vraag':
$select2 = 'SELECTED';
break;
case 'opmerking':
$select3 = 'SELECTED';
break; }
?>
<select name="reden_reactie" class="inputsmall">
<option value="vraag" <?php echo "".$select1.""; ?>>Een vraag </option>
<option value="opmerking" <?php echo "".$select2.""; ?>>Een opmerking </option>
<option value="bug" <?php echo "".$select3.""; ?>>Een opmerking </option>
</select>
</td>
</tr>
begin eens met die vremde quotes weg te halen,
je sluit ze om ze daarna direct weer te openen?
je mag gewoon neer zetten van:
<?php echo $select1 ?>
wat betreft die quotes
ik heb ooit ergens (denk hier http://www.sitemasters.be/FAQ/3/PHP#faq4) gelezen juist wel zo quotes te zetten. Maar wil ze gerust weghalen hoor.
In veel handleidingen wordt het gebruik van variabelen als volgt aangeleerd:
<?php
$site = "www.sitemasters.be";
echo "Welkom op $site!";
?>
Dit is echter niet volledig correct en niet overzichtelijk. Daarom is het aangeraden variabelen buiten quotes te plaatsen:
<?php
$site = 'www.sitemasters.be';
echo 'Welkom op '.$site.'!';
?>
Wat snap je niet aan die foutmelding?


"VRAAG" is not a member of a group specified for any attribute.<option value="vraag" vraag>Een vraag</option>


'vraag' is geen attribuut. Je moet dat weghalen.
Ik wil geen foutmelding, ik snap niet wat ze bedoelen als ik dat wel snapte kon ik het oplossen lijkt me.
(overigens de quotes hebben geen invloed op de foutmelding, maar dat had ik wel begrepen)
<option value="vraag" vraag>Een vraag</option>

Dat bestaat niet in HTML.

Het komt omdat je ergens <?php echo "".$select1.""; ?> zegt.

Verander 'vraag' in 'selected' en het werkt zal geen foutmeldingen over dat geven..
Hmm is meestal weer iets stoms nu het eenmaal goed werkt . De laatste mail van Gerben, zette mij op de weg er naar toe. Stom weg de bovenste strings leeg inzetten, dan werkt het goed en geen foutmeldingen.
<?php
$select1 = '';
$select2 = '';
$select3 = '';
?>

Reageren