Hoi,

ik heb problemen met de if($_GET[]).

Ik zal het iets verder uitleggen:
if($_GET['v'] !== ""){
script script script script
script script script script
}else{
script script script script
script script script script
}

om het te verduidelijken neem ik 2 links:

1e: http://www.domein.nl?index.php
2e: http://www.domein.nl/index.php?a=123

dan zou je denken dat als je de eerste link gebruikt, dat hij het else gedeelte zou uitvoeren. Maar dat doet hij niet. Dus zou het aan mijn if statement kunnen liggen (is niet zo). Maar als ik de 2e link gebruik dan voert hij precies het gedeelte uit.

Dus ik dacht dan kijk ik wat hij doet als ik er $_GET['v']="" voorzet.

Wat blijkt. Dan doet hij wel gewoon het else gedeelte. Dus $_GET['v'] is blijkbaar niet leeg bij de eerste link.

Mijn vraag: Wat doe ik verkeerd? En dus: wat moet ik aanpassen?
Probeer eens het volgende:
if(isset($_GET['v']))
{
    // script als 'v' bestaat
}
else
{
    // script als 'v' niet bestaat
}
Bij de eerste link bestaat de $_GET geen eens

het is dus eerst controle op bestaan en dan de validatie:

<?php
if(isset($_GET['v']) && $_GET['v'] !== '') {
// $_GET['v'] bestaat en is niet leeg
}
?>

Reageren