Forum » Server-Side scripting » Optie beperken in php
Berichten: 3275
avatar
Offline Stuur privebericht
Beste CP,

Ik ben op dit moment bezig met een aantal wijzigingen doorvoeren echter willen een paar dingen niet lukken.

Zoals het volgende:

Ik wil automatische incasso beperken. Als mensen geen contract getekend hebben ook geen automatische incasso kunnen aanvinken.

Ik heb al de tabellen aangemaakt Tabel is ook op een andere plek actief onder optie "niet getekend" en "getekend"

Kan iemand mijn helpen om de optie alleen zichtbaar te laten maken als in de database de optie op 1 staat.

Hier een stukje script:

Code | Selecteer Alles
minimaliseren
1
2
3
4
5
6
7
<select name="methode">
            <option value="Automatische Incasso">Automatische incasso</option>
            <option value="Overboeking">Overboeking</option>
            <?php if(isset($config['mollie'])){ ?><option value="iDEAL">iDEAL (+ &euro; <?= number_format($config['XXXXXX'], 2',''.'); ?>)</option><?php ?>
            <?php if(isset($config['paypal'])){ ?><option value="PayPal">PayPal (+ &euro; <?= number_format($config['XXXXXXXX'], 2',''.'); ?>)</option><?php ?>
            <?php if(isset($config['mollie'])){ ?><option value="Wallie">Wallie (+ <?= number_format($config['XXXXXX'], 0); ?>%)</option><?php ?>
        </select>


Alvast mijn dank voor de persoon die me wilt helpen.
14-11-2011 09:25
Dit topic is 112 keer bekeken door 35 verschillende leden
Reacties op: "Optie beperken in php"
1
Ex-moderator
Berichten: 375
avatar
Offline Stuur privébericht
Zover ik dus begrijp staat er in de database of die het contract getekend heeft of niet.

En dan moet er dus een optie alleen maar zichtbaar zijn als de optie 1 is.

Dat kun je dan toch opvragen uit de database ? Ik weet niet of je gebruik maakt van een sessie of cookie ? Want het moet op een manier ingevuld zijn in de database met de gegevens van de klant.

Als er bijvoorbeeld een ID gebruikt wordt in een sessie:

Code | Selecteer Alles
minimaliseren
1
2
3
4
5
6
7
if(isset($_SESSION['id'])) {
$getUserInfo mysql_query("SELECT * FROM `tabel` WHERE id = '".$_SESSION['id']."'");
$row mysql_fetch_array($getUserInfo);
$optie $row['optielevel'];
} else {
$optie 0;
}


Nu krijg je dus een optie mee heel basis natuurlijk. En zo kan je bepalen wat wel en niet getoond moet worden.
14-11-2011 09:55
Vreemd
Berichten: 1246
avatar
Offline Stuur privébericht
Vergeet niet de controlle ook in de verwerkings code te zetten. Als iemand nou geen contract heeft getekend maar wel de kennis heeft om het formulier aan te passen. Dan kan hij/zij toch de data versturen alsof die je code alleen verwacht als hij/zij wel een contract heeft getekend en dus mogelijk onterecht bepaalde code uitgevoerd wordt.

TL;DR:
Vertrouw nooit user input.
14-11-2011 12:58
Reageer op: "Optie beperken in php"
1
Je kan niet reageren omdat je niet bent ingelogd. Inloggen of Aanmelden