Programma werkt maar krijg wel een error notice melding

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

MArk Peters

MArk Peters

07/08/2013 18:50:33
Quote Anchor link
Aan de hand van een wisselend aantal wil ik overeenkomstige aantal droplist-boxen maken.
Dat doe ik op onderstaande manier:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
for ($i=0; $i<$AANTAL_BEOORDELINGEN; $i++)
      {

        $beoordeling="beoordeling" . $i;
        
        
        $pdm->addColumnRij('<select class="ruimte" name='.$beoordeling.'>
        <option value="JA">JA</option>
        <option value="NEE">NEE</option></select>
        '
);
      }

?>

Dit gaat op zich allemaal goed maar ik krijg wel een error in mijn log-file.
Error is: [error] [client 192.168.1.2] PHP Notice: Undefined index: beoordeling15

Ik denk dat het te maken heeft dat beoordelingXX niet is aangemaakt. Klopt dat en op welke manier kan ik dat omzeilen want op voorhand weet ik niet hoeveel droplist-boxen ik nodig heb
Gewijzigd op 07/08/2013 21:03:32 door MArk Peters
 
PHP hulp

PHP hulp

17/11/2024 18:39:21
 
Frank Nietbelangrijk

Frank Nietbelangrijk

07/08/2013 20:38:26
Quote Anchor link
mark wil je even de
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? php    ?>
om de code heen zetten dat maakt het een stuk leesbaarder.

De foutmelding undefined index krijg je als je een item uit een array opvraagt die niet bestaat:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
$a
= array('appel', 'banaan');

echo $a[0]; // geeft appel
echo $a[1]; // geeft banaan
echo $a[2]; // geeft foutmelding Undefinde index
?>
 
MArk Peters

MArk Peters

07/08/2013 21:04:36
Quote Anchor link
Oke maar ik gebruik geen array. Kan het niet zijn als ik een variabele gebruik die nog niet gedefinieerd is ofzo?
 
Eddy E

Eddy E

07/08/2013 21:11:55
Quote Anchor link
Ja, waarschijnlijk wel.

Doe eens dit en plaats het resultaat:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
echo 'Array $aantal_beoorlingen is: '.print_r($aantal_beoordelingen, true).' en bevat dus '.count($aantal_beoordelingen).' dingen.';

for ($i=0; $i<$AANTAL_BEOORDELINGEN; $i++)
      {

       $beoordeling="beoordeling" . $i;
        
        
        $pdm->addColumnRij('<select class="ruimte" name='.$beoordeling.'>
        <option value="JA">JA</option>
        <option value="NEE">NEE</option></select>
        '
);
      }

?>
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

07/08/2013 21:13:42
Quote Anchor link
Je krijgt die foutmelding niet op jouw bovenstaande stukje code, maar waarschijnlijk bij de verwerking van het formulier. Misschien dat je daar de 0 based vergeet, 15 dropdowns gaan van beoordeling0 tot beoordeling14!
 
Frank Nietbelangrijk

Frank Nietbelangrijk

07/08/2013 22:44:07
Quote Anchor link
MArk Peters op 07/08/2013 21:04:36:
Oke maar ik gebruik geen array. Kan het niet zijn als ik een variabele gebruik die nog niet gedefinieerd is ofzo?


$_POST en $_GET zijn ook arrays.
$_POST['beoordeling15'] bestaat dan dus niet.
Gewijzigd op 07/08/2013 22:44:28 door Frank Nietbelangrijk
 
MArk Peters

MArk Peters

08/08/2013 10:10:34
Quote Anchor link
Eddy E op 07/08/2013 21:11:55:
Ja, waarschijnlijk wel.

Doe eens dit en plaats het resultaat:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
echo 'Array $aantal_beoorlingen is: '.print_r($aantal_beoordelingen, true).' en bevat dus '.count($aantal_beoordelingen).' dingen.';

for ($i=0; $i<$AANTAL_BEOORDELINGEN; $i++)
      {

       $beoordeling="beoordeling" . $i;
        
        
        $pdm->addColumnRij('<select class="ruimte" name='.$beoordeling.'>
        <option value="JA">JA</option>
        <option value="NEE">NEE</option></select>
        '
);
      }

?>

Resultaat is: $aantal_beoorlingen is: 11 en bevat dus 1 dingen


Toevoeging op 08/08/2013 10:31:34:

Hallo,

Ik ben er uit er het bleek in de S_POST aanroep te zitten van variabelen die er niet waren.
Tja dat krijg je als je code hergebruikt ;)

Maar bedankt voor het meedenken en tips etc !
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.