Drop Down Feld Problem!

  • #1
B

bernstein

Guest
Hi
hab mal ein Formular gemacht bei dem man sein Geburtsdatum ändern kann.
Nur schaff ich das nicht das bei den Auswahl-Feldern die Zahl ausgewählt ist, die auch in der Datenbank steht.
Hat jemand ne Ahnung wie man das machen könnte?

Habs mal damit versucht, geht nur leider nich...
Code:
Code:
<form action=aendern.php method=POST >
<?
	$sql = SELECT * FROM user WHERE userid =->$_GET[profil_id]';
	$result = mysql_query($sql);
	while($row3 = mysql_fetch_assoc($result))
	{
		$gb_tag = $row3['gb_tag'];
		$gb_monat = $row3['gb_monat'];
		$gb_jahr = $row3['gb_jahr'];
	}




$select1[$gb_tag] = selected;
$select2[$gb_monat] = selected;
$select3[$gb_jahr] = selected;
?>

<!-- Anfang Tag -->
<select name=gb_tag size=1 width=30>
	<?php
	$i = 0;
	while($i < 31)
	{

		$i++;
		if($_POST['gb_tag'] != $i)
		{ 
			echo-><option value='.$i.' .$select1[.$i.].>'.$i.'</option>'; 
		}

		else
		{ 
			echo'<option value='.$i.' selected=selected>'.$i.'</option>';
		}
	}
	?>
</select>


<!-- Anfang Monat -->
<select name=gb_monat size=1 width=30>
	<?php
	$i = 0;
	while($i < 12)
	{
		$i++;
		if($_POST['gb_monat'] != $i)
		{ 
			echo-><option value='.$i.' .$select2[.$i.].>'.$i.'</option>'; 
		}
		else
		{ 
			echo-><option value='.$i.' selected=selected>'.$i.'</option>';
		}
	}
	?>
</select>


<!-- Anfang Jahr -->
<select name=gb_jahr size=1 width=30>
	<?php
	$i = date(Y)-12;
	while($i > 1900)
	{
		$i--;
		if($_POST['gb_jahr'] != $i)
		{ 
			echo-><option value='.$i.' .$select3[.$i.].>'.$i.'</option>'; 
		}
		else
		{ 
			echo-><option value='.$i.' selected=selected>'.$i.'</option>';
		}
	}
?>
</select>
<input type=submit value=ändern name=ändern>
</form>


Hoffe dass das nicht zu unübersichtlich is (-:

Danke für Antworten!
 
  • #2
Code:
<?php
function buildSelectOptions($reverse=false, $startZahl=1, $endZahl=31, $selected=false) {
	$re = array();
	for($i = $startZahl; $i <= $endZahl; $i++) {
		$sel = ($i == $selected) ?->selected=selected' :->';
		$ii = ($i < 10) ? 0.$i : $i;
		$re[] =-><option value='.$i.'->.$sel.'>'.$ii.'</option>';
	}
	if($reverse) {
		$re = array_reverse($re);
	}
	return implode(\n,$re);
}

$sql = SELECT * FROM user WHERE userid =->.$_GET[profil_id].';

$result = mysql_query($sql);
$row = mysql_fetch_object($result);

$gb_tag = $_POST[gb_tag] ? $_POST[gb_tag] : $row->gb_tag;
$gb_monat = $_POST[gb_monat] ? $_POST[gb_monat] : $row->gb_monat;
$gb_jahr	= $_POST[gb_jahr] ? $_POST[gb_jahr] : $row->gb_jahr;
?>

<form action=aendern.php method=POST >

<!-- Anfang Tag -->
<select name=gb_tag size=1 width=30>
<?php
echo buildSelectOptions(false, 1, 31, $gb_tag);
?>
</select>


<!-- Anfang Monat -->
<select name=gb_monat size=1 width=30>
<?php
echo buildSelectOptions(false, 1, 12, $gb_monat);
?>
</select>


<!-- Anfang Jahr -->
<select name=gb_jahr size=1 width=30>
<?php
echo buildSelectOptions(true, 1900, (date(Y)-12), $gb_jahr);
?>
</select>

<input type=submit value=ändern name=ändern>

</form>

Falls du eine Erklärung dazu brauchst, einfach fragen ;)
 
  • #3
boa danke Conny! Hast mir sehr weitergeholfen!!! :D :D
 
Thema:

Drop Down Feld Problem!

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.838
Beiträge
707.959
Mitglieder
51.491
Neuestes Mitglied
haraldmuc
Oben