probleem met mysql_fetch_row($res)

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Mark

mark

27/01/2007 18:13:00
Quote Anchor link
Ik heb een probleempje: Ik wil een invoerformulier maken om een nieuw lid aan te melden. De velden die moeten verschijnen, zijn de fieldnames uit de tabel leden. Een van die fieldnames is 'brevet'. Voor deze fieldname moet ipv een textveld een dropdown menu verschijnen. De opties voor dit menu staan in de tabel 'brevet'.
Tabel brevet bevat 6 brevetten.
tabel leden bevat 6 velden.

Het probleem is alleen: als ik de code uitvoer, krijg ik slechts de eerste brevet-optie. De rest blijft achterwegen. Er is dus wel verbinding met de database, maar er zit een foutje in de lus of in een of andere commando.
Wie kan mij helpen? het gaat om het volgende stukje code:
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
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<form action="<?php echo $_SERVER[PHP_SELF];?>" method="post">
                <?php
                include("dbduikclub.php");

                        $sql="select * from leden";
                        $res=mysql_db_query("$db","$sql",$mysql_id);
                        $aantal_velden=mysql_num_fields($res);
                                    echo '<table border=1 celpadding=2 width="50%">';
                                    for($i=1;$i<$aantal_velden;$i++)
                                    {

                                        $fieldname=mysql_field_name($res,$i);
                                        if ($fieldname=='brevet')
                                         {

                                             echo '<tr><td>'. $fieldname . '</td><td><select name="brevet">';


                                             $sql="select brevet from brevet";
                                            $res=mysql_db_query("$db","$sql",$mysql_id);

                                            $aantal_rijen=mysql_num_rows($res);
                                             for($t=0;$t<$aantal_rijen;$t++) ;
                                             {

                                                 $row=mysql_fetch_row($res);
                                                 $var=$row[0];
                                                echo "<option value=" .$var.">$var</option>";
                                                $counter++  ;
                                             }

                                         echo '</select>'; echo $t;

                                         }


                                         else
                                         {
                                        echo "<tr><td>".$fieldname.'</td><td><input type="text" name="'. $fieldname.' "></tr>';
                                        }


                                    }

                              mysql_close($mysql_id);
                ?>

                <tr><td></td><td>
                <input type="submit" name="ADD_MEMBER" value="Lid Toevoegen">
                </td></tr></table>
</form>
Gewijzigd op 01/01/1970 01:00:00 door Mark
 
PHP hulp

PHP hulp

19/11/2024 23:33:36
 
Niek s

niek s

27/01/2007 19:22:00
Quote Anchor link
verrander regel 5 eens in: mysql_query($sql);
 
Mark

mark

27/01/2007 19:30:00
Quote Anchor link
helaas, dat levert de volgende fout op:
Warning: Wrong parameter count for mysql_query() in C:\Serverfiles\duikclub\admin.php on line 31

Ik denk ook niet dat hier de fout zit, aangezien ik wel gegevens uit de tabellen krijg maar niet alle!
toch bedankt
 
Jan Koehoorn

Jan Koehoorn

27/01/2007 19:32:00
Quote Anchor link
De bedoeling is dat je het zo doet:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
    $res
=mysql_query($sql);
?>

En natuurlijk checken of de query gelukt is.
 
Niek s

niek s

27/01/2007 19:33:00
Quote Anchor link
de lus moet je zo doen trouwens:

while($row = mysql_fetch_row($res) {
}

Dan loopt ie door tot ie alles heeft gehad.
 
Mark

mark

27/01/2007 19:41:00
Quote Anchor link
Ok dat is um! Bedankt. Vreemd, want tot nu toe kwam ik er met for() ook.
Trouwens, met mysql_db_query doettie t ook gewoon hoor. Maar jullie oplossing is korter. Bedankt, slotje
 



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.