Goede morgen,
Kan iemand me wellicht helpen met het volgende probleem.
Voor het vullen van een aantal selectboxen haal ik data op uit mijn database.
Dit doe ik met:
Vervolgens wordt via een while loop een aantal keer een selectbox gemaakt. (dit gebeurd via die loop omdat het aantal selectboxen (dropdown) dynamisch is.
De loop ziet er zo uit:
Die loop wordt 5 keer doorlopen (dus ik krijg 5 selectboxen) die gevuld worden met de data uit de database.
Dit ziet er zo uit:
De html code waar dit in komt:
Wat nu het probleem is waar ik maar niet uit kom. Als ik de array $imgData in mn html plaats laat hij alleen de laatste entry uit de database zien.
Ik dacht dus dat mijn loop niet goed was. Daarom heb ik die "echo" ertussen geplaatst. Maar die laat wel alle entry's uit de database zien.
Dus mijn array wordt blijkbaar niet goed gevuld.
Ik hoop dat het verhaal een beetje duidelijk is en iemand een idee heeft waar ik de oplossing kan zoeken.
Alvast bedankt!
Groetjes!
Kan iemand me wellicht helpen met het volgende probleem.
Voor het vullen van een aantal selectboxen haal ik data op uit mijn database.
Dit doe ik met:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| // get all images from library $query = " SELECT uplID, uplFilename FROM " . UPLOADS_TABLE . " WHERE uplMimetype LIKE '%image%' ORDER BY uplFilename "; $qres = mysql_query($query) or die("Database error<HR>" . mysql_error()); $all_images = array(); $y = 0; while ($qrow = mysql_fetch_array($qres)) { $all_images[] = $qrow['uplFilename']; $y++; } mysql_free_result($qres); |
Vervolgens wordt via een while loop een aantal keer een selectbox gemaakt. (dit gebeurd via die loop omdat het aantal selectboxen (dropdown) dynamisch is.
De loop ziet er zo uit:
code:
1
2
3
| // news for($n = 0; $n < $custom_items; $n++) { } |
Die loop wordt 5 keer doorlopen (dus ik krijg 5 selectboxen) die gevuld worden met de data uit de database.
Dit ziet er zo uit:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
| // images for($x = 0; $x < count($all_images); $x++) { $imgData = array( 'FILENAME' => stripslashes($all_images[$x]), 'SELECTED' => (($_POST['preview']) && ($_POST['image'.($n+1)] == stripslashes($all_images[$x]))) ? 'selected' : '' ); // echo stripslashes($all_images[$x]) . "<br>"; $xtpl->assign("FILE", $imgData); $xtpl->parse("main.newsletter_form.news.images.file"); } |
De html code waar dit in komt:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
| <!- BEGIN: images -> <tr valign="top"> <td class="dark"><b>Afbeelding:</b></td> <td class="light"> <select name="image{IMAGES.NUMBER}" style="width:200px;"> <option value="0">(geen)</option> <!- BEGIN: file -> <option value="{FILE.FILENAME}" {FILE.SELECTED}> {FILE.FILENAME}</option> <!- END: file -> </select> </td> </tr> <!- END: images -> |
Wat nu het probleem is waar ik maar niet uit kom. Als ik de array $imgData in mn html plaats laat hij alleen de laatste entry uit de database zien.
Ik dacht dus dat mijn loop niet goed was. Daarom heb ik die "echo" ertussen geplaatst. Maar die laat wel alle entry's uit de database zien.
Dus mijn array wordt blijkbaar niet goed gevuld.
Ik hoop dat het verhaal een beetje duidelijk is en iemand een idee heeft waar ik de oplossing kan zoeken.
Alvast bedankt!
Groetjes!