echo van array
ik heb de volgende code welke een array uitleest en deze in een selectbox zet in een form.
Op 1 of andere manier gaat het niet helemaal goed.
Hij laat in de selectbox alleen de eerste letters van de values van de array zien!
Wat doe ik fout.. zit hier inmiddels al weer een uur te turen naar deze code
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
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
<?
$status = array();
$status[0] = 'Nieuwe bestelling';
$status[1] = 'Betaald';
$status[2] = 'Betaald en verzonden';
$status[3] = 'Geweigerd';
$status[4] = 'Betaling Ontvangen';
$status[5] = 'Geannuleerd';
?>
<form method="post" action="main.php">
<select name="status_order" id="status_order" onchange="this.form.submit();" >
<?
$teller = 0;
$s = '';
while ($teller <> 5)
{
if ($status[$teller] == $row[0])
$s = 'selected';
else
$s = '';
echo '<option value="'.$status[$teller].'" '.$s.'>'.$status[$teller].'</option>';
$teller++;
}
?>
</select>
</form>
$status = array();
$status[0] = 'Nieuwe bestelling';
$status[1] = 'Betaald';
$status[2] = 'Betaald en verzonden';
$status[3] = 'Geweigerd';
$status[4] = 'Betaling Ontvangen';
$status[5] = 'Geannuleerd';
?>
<form method="post" action="main.php">
<select name="status_order" id="status_order" onchange="this.form.submit();" >
<?
$teller = 0;
$s = '';
while ($teller <> 5)
{
if ($status[$teller] == $row[0])
$s = 'selected';
else
$s = '';
echo '<option value="'.$status[$teller].'" '.$s.'>'.$status[$teller].'</option>';
$teller++;
}
?>
</select>
</form>
de $row komt uit een database... welke boven dit script wordt aangeroepen.
wanneer ik naar de bron kijk van de source in ie zie ik dit :
Code (php)
1
2
2
<select name="status_order" id="status_order" onchange="this.form.submit();" >
<option value="N" >N</option><option value="B" >B</option><option value="B" >B</option><option value="G" >G</option><option value="B" >B</option> </select>
<option value="N" >N</option><option value="B" >B</option><option value="B" >B</option><option value="G" >G</option><option value="B" >B</option> </select>
Gewijzigd op 01/01/1970 01:00:00 door Emile
Edit
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?
$status = array();
$status[] = 'Nieuwe bestelling';
$status[] = 'Betaald';
$status[] = 'Betaald en verzonden';
$status[] = 'Geweigerd';
$status[] = 'Betaling Ontvangen';
$status[] = 'Geannuleerd';
?>
<form method="post" action="main.php">
<select name="status_order" id="status_order" onchange="this.form.submit();" >
<?
foreach($status AS $value)
{
echo '<option value="'.$value.'"'.($row[0] == $value ? ' selected="selected"' : '').'>'.$value.'</option>';
}
?>
</select>
</form>
$status = array();
$status[] = 'Nieuwe bestelling';
$status[] = 'Betaald';
$status[] = 'Betaald en verzonden';
$status[] = 'Geweigerd';
$status[] = 'Betaling Ontvangen';
$status[] = 'Geannuleerd';
?>
<form method="post" action="main.php">
<select name="status_order" id="status_order" onchange="this.form.submit();" >
<?
foreach($status AS $value)
{
echo '<option value="'.$value.'"'.($row[0] == $value ? ' selected="selected"' : '').'>'.$value.'</option>';
}
?>
</select>
</form>
Probeer dat eens.
Gewijzigd op 01/01/1970 01:00:00 door Dennis Mertens
in firefox als ie8 werkt het gewoon ... wat is er dan fout aan mijn script ?
Dennis Mertens schreef op 18.03.2009 15:39:
Mag ik de volledige code van dit stukje?
Edit
Probeer dat eens.
Edit
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?
$status = array();
$status[] = 'Nieuwe bestelling';
$status[] = 'Betaald';
$status[] = 'Betaald en verzonden';
$status[] = 'Geweigerd';
$status[] = 'Betaling Ontvangen';
$status[] = 'Geannuleerd';
?>
<form method="post" action="main.php">
<select name="status_order" id="status_order" onchange="this.form.submit();" >
<?
foreach($status AS $value)
{
echo '<option value="'.$value.'"'.($row[0] == $value ? ' selected="selected"' : '').'>'.$value.'</option>';
}
?>
</select>
</form>
$status = array();
$status[] = 'Nieuwe bestelling';
$status[] = 'Betaald';
$status[] = 'Betaald en verzonden';
$status[] = 'Geweigerd';
$status[] = 'Betaling Ontvangen';
$status[] = 'Geannuleerd';
?>
<form method="post" action="main.php">
<select name="status_order" id="status_order" onchange="this.form.submit();" >
<?
foreach($status AS $value)
{
echo '<option value="'.$value.'"'.($row[0] == $value ? ' selected="selected"' : '').'>'.$value.'</option>';
}
?>
</select>
</form>
Probeer dat eens.
Edit
Gooi $status eens door print_r(), wat is het resultaat?
Gewijzigd op 01/01/1970 01:00:00 door Dennis Mertens