I'm trying to make a form with a drop-down menu that's populated from a MySQL database. I put the code used to create the drop-down menu in a function and I'm trying to put the complete form itself in a function as well.
The problem is for some reason the dropdown-menu shows at the top of the form instead of at the bottom, like it should. If I look at the HTML being generated it appears that for some reason the function isn't rendering inside of the tags at all.
echo "<form method='post'>
<table>
<tr>
<td><label for='artikelnr'>Artikelnummer:</label></td>
<td><input type='text' name='artikelnr' /></td>
</tr>
<tr>
<td><label for='omschrijving'>Omschrijving:</label></td>
<td><input type='text' name='omschrijving' /></td>
</tr>
<tr>
<td><label for='verkoopprijs'>Verkoopprijs:</label></td>
<td><input type='text' name='verkoopprijs' /></td>
</tr>
".categorie()."
<tr>
<td><input type='submit' name='submit' value='Toevoegen' /></td>
</tr>
</table>
</form>";
For some reason the function category() actually seems to be generating before the form. As in, before the echo. In the HTML it'll first generate the drop-down menu in HTML, and then all the HTML contained in the echo, not including the function categorie(). How do I get the function to generate in the correct spot?