PHP
- Andreas2
-
Autor
- Neues Mitglied
-
Weniger
Mehr
22 März 2010 19:40 #25376
von Andreas2
PHP wurde erstellt von Andreas2
Hallo,
es ist sicher ein wenig "offtopic" aber ich hoffe auf einen Tipp von euch, da PHP nicht gerade meine Stärke ist.
Ich habe mir ein Formular mit mehreren Select-Boxen gebastelt, die ich aus einer Datenbank fülle. Der Code dazu sieht (auszugsweise) so aus:
echo ' <form name="ergselect" action="" method="post">';
...
echo ' <select id="kontinent" name="kontinent" style="height: 24px;">';
echo ' <option value="bitte wählen">bitte wählen</option>';
$kontinent = mysql_query("SELECT distinct kontinent FROM datenbank order by kontinent" );
while($row = mysql_fetch_assoc($kontinent))
{
echo '<option value='.$row["kontinent"].'>'.$row["kontinent"].'</option>';
}
echo '</select>';
....
Nun kommt eine weitere Select-Box in der Länder ausgewählt werden. Das Ganze funktioniert - ist aber in einem Punkt unschön. Wenn ich in der ersten Box "Europa" auswähle, so werden z.Zt. in der zweiten Box alle Länder dieser Welt angezeigt. Schöner wäre es natürlich, wenn hier nur noch die Länder Europas angezeigt würden.
Ich müßte mir also den gewählten Wert der ersten Auswahlbox merken, prüfen, daß etwas gewählt wurde; das Formular neu laden und für die zweite Box das MySQL-Statement anpassen in der Form: $land = mysql_query("SELECT distinct land FROM datenbank where kontinent = "gemerketer Wert" order by land" ).
Alles klar? Wäre schön, wenn einer von Euch ein kleines Beispiel für mich hätte.
Danke und Gruß
Andreas
es ist sicher ein wenig "offtopic" aber ich hoffe auf einen Tipp von euch, da PHP nicht gerade meine Stärke ist.
Ich habe mir ein Formular mit mehreren Select-Boxen gebastelt, die ich aus einer Datenbank fülle. Der Code dazu sieht (auszugsweise) so aus:
echo ' <form name="ergselect" action="" method="post">';
...
echo ' <select id="kontinent" name="kontinent" style="height: 24px;">';
echo ' <option value="bitte wählen">bitte wählen</option>';
$kontinent = mysql_query("SELECT distinct kontinent FROM datenbank order by kontinent" );
while($row = mysql_fetch_assoc($kontinent))
{
echo '<option value='.$row["kontinent"].'>'.$row["kontinent"].'</option>';
}
echo '</select>';
....
Nun kommt eine weitere Select-Box in der Länder ausgewählt werden. Das Ganze funktioniert - ist aber in einem Punkt unschön. Wenn ich in der ersten Box "Europa" auswähle, so werden z.Zt. in der zweiten Box alle Länder dieser Welt angezeigt. Schöner wäre es natürlich, wenn hier nur noch die Länder Europas angezeigt würden.
Ich müßte mir also den gewählten Wert der ersten Auswahlbox merken, prüfen, daß etwas gewählt wurde; das Formular neu laden und für die zweite Box das MySQL-Statement anpassen in der Form: $land = mysql_query("SELECT distinct land FROM datenbank where kontinent = "gemerketer Wert" order by land" ).
Alles klar? Wäre schön, wenn einer von Euch ein kleines Beispiel für mich hätte.
Danke und Gruß
Andreas
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Tribal6
-
- Offline
-
24 März 2010 22:49 #25427
von Tribal6
Tue das, was du kannst, mit dem was du hast, da wo du bist.
Tribal6 antwortete auf Re: PHP
Hi Andreas
Geschieht das ganze innerhalb des Joomla-Frameworks, oder ist das was Eigenständiges?
Und von wegen offtopic: wir haben hier ein Entwickler Forum/Board, wo das garantiert nicht offtopic ist, und wenn ich es richtig anstelle, kann ich den Beitrag auch dorthin verschieben (ja, ja, diese Computer
)
Gruss
Roger
Geschieht das ganze innerhalb des Joomla-Frameworks, oder ist das was Eigenständiges?
Und von wegen offtopic: wir haben hier ein Entwickler Forum/Board, wo das garantiert nicht offtopic ist, und wenn ich es richtig anstelle, kann ich den Beitrag auch dorthin verschieben (ja, ja, diese Computer

Gruss
Roger
Tue das, was du kannst, mit dem was du hast, da wo du bist.
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- smhaller
-
- Offline
- Junior Mitglied
-
25 März 2010 15:24 #25450
von smhaller
smhaller antwortete auf Re: PHP
Hallo Andreas,
so wie ich das auf die Ferne beurteile, fehlt da eine Bedingung. Mit anderen Worten, Deine Zweite Select box, darf nur gefüllt werden wenn SelectBox 1 grösser als "" ist, zweitens gehört das in eine Schlaufe, welche die SelectBox 2 aufgrund des Wertes in SelectBox 1 definiert.
Kurzes Anschaungsbeispiel:
Mehr infos dazu hier --ALTER LINK WURDE ENTFERNT--.
Liebe Grüsse,
Stefan
so wie ich das auf die Ferne beurteile, fehlt da eine Bedingung. Mit anderen Worten, Deine Zweite Select box, darf nur gefüllt werden wenn SelectBox 1 grösser als "" ist, zweitens gehört das in eine Schlaufe, welche die SelectBox 2 aufgrund des Wertes in SelectBox 1 definiert.
Kurzes Anschaungsbeispiel:
Code:
switch in ($kontinent) {
case "Europa":
echo "<option> </option";
....
break;
case "Asien".
echo "<option> </option";
break;
}
Mehr infos dazu hier --ALTER LINK WURDE ENTFERNT--.
Liebe Grüsse,
Stefan
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
Moderatoren: Tribal6, RePao, Dragonlord, Chris Hoefliger, pascale, adiheutschi.ch