Select list toevoegen aan tabel veld
Op zich denk ik een heel eind te zijn, de select knop is zichtbaar, maar niet in het veld, maar ernaast. hoe krijg ik de picklist in het input veld?
<td><input type="text" name="klant_id" size="20"> <!--hier een dropdown menu uit klanten tabel-->
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?PHP
mysql_connect( 'localhost', 'root', '' ) or die(mysql_error());
mysql_select_db( 'database' ) or die(mysql_error());
echo "<select>";
$select = "SELECT * FROM klanten WHERE klant_id is not null";
$query = mysql_query($select);
while($row = mysql_fetch_assoc($query))
{
echo "<option>";
echo "$row[klant_id]";
echo "</option>";
}
echo "</select>";
?>
mysql_connect( 'localhost', 'root', '' ) or die(mysql_error());
mysql_select_db( 'database' ) or die(mysql_error());
echo "<select>";
$select = "SELECT * FROM klanten WHERE klant_id is not null";
$query = mysql_query($select);
while($row = mysql_fetch_assoc($query))
{
echo "<option>";
echo "$row[klant_id]";
echo "</option>";
}
echo "</select>";
?>
</td>
verder het standaard verhaal:
- foutafhandeling inbouwen
- error reporting aan
- logica van presentatie scheiden
- gebruik van juiste qoutes
dank. daar heb ik nog niet naar gekeken. maar hoe krijg ik de picklist in het veld, ipv naast het veld?
je wilt de dropdown in het input veld? dat gaat niet lukken. het zijn twee verschillende invoerelementen, en zullen dus altijd langs elkaar (of net hoe je ze positioneert - in ieder geval los van elkaar) moeten zetten
wat ik nu dus bedoel is.
Voorbeeld: ( dus weet niet of het precies werkt maar qua opbouw )
Code (php)
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
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
<?php
$select = "SELECT klant_id FROM klanten";
$Squery = mysql_query($select);
if ($Squery === false){
echo 'er is iets misgegaan in de database';
}
else {
// nu kijken of je een waarde tegenkomt
if (mysql_num_rows($controle) > 0){
while($row = mysql_fetch_assoc($Squery))
{
echo "<option>";
echo "$row[klant_id]";
echo "</option>";
}
echo "</select>";
}
else {
echo 'totaal geen gebruikers in de database';
}
$select = "SELECT klant_id FROM klanten";
$Squery = mysql_query($select);
if ($Squery === false){
echo 'er is iets misgegaan in de database';
}
else {
// nu kijken of je een waarde tegenkomt
if (mysql_num_rows($controle) > 0){
while($row = mysql_fetch_assoc($Squery))
{
echo "<option>";
echo "$row[klant_id]";
echo "</option>";
}
echo "</select>";
}
else {
echo 'totaal geen gebruikers in de database';
}
Gewijzigd op 21/02/2012 13:33:59 door Reshad F
echo "$row[klant_id]"; is dus echo $row['klant_id'];
verder lost dit het probleem niet echt op. helemaal niet zelfs
de netheid en foutafhandeling ga ik ook verwerken.
als ik de gekozen waarde nu mee wil nemen in een insert, moet ik dan nog ergens een id meegeven?
bv.
Code (php)
1
2
3
4
5
2
3
4
5
<select name="klant_id">
<option value="5">foo</option>
<option value="6">bar</option>
<option value="7">hello</option>
</select>
<option value="5">foo</option>
<option value="6">bar</option>
<option value="7">hello</option>
</select>
Dat wordt dus bv.
Code (php)
1
2
3
4
5
2
3
4
5
<?php
while($row = mysql_fetch_assoc($Squery)) {
echo '<option value="' . $row['klant_id'] . '">' . $row['klant_username'] . '</option>';
}
?>
while($row = mysql_fetch_assoc($Squery)) {
echo '<option value="' . $row['klant_id'] . '">' . $row['klant_username'] . '</option>';
}
?>
$row[klant_id] wordt dan opgestuurd als waarde; $row[klant_username] wordt visueel getoond aan de gebruiker
Gewijzigd op 21/02/2012 14:23:23 door Kris Peeters
nu een een nieuwe tread aanmaken voor een andere vraag :)