bis jetzt konnte mir bei meinem Problem noch niemand so eichtig helfen und ich sitze schon eine Woche daran, habe auch schon mal in einem anderen Forum gefragt.
Das Problem:
Ich habe ein Select was mit Daten aus einem Array gefüllt wird, trifft eine Bedingung zu kommen die Daten aus einer Tabelle.
Ich habe das bis jetzt so gelößt:
if ($wer=='1') {
$listeVarB.= "\t<option value=\"Keine Auswahl getroffen\">Bitte auswählen</option>\n";
while($rowEB = mysql_fetch_assoc($qebEB)) {
if ($rowEB['bezeb'] == stripslashes($FPostVb)){
$listeVarB .= "\t<option value=\"".$rowEB['bezeb']."\" selected='selected'>".$rowEB['bezeb']."</option>\n";
} else {
$listeVarB.= "\t<option value=\"".$rowEB['bezeb']."\">".$rowEB['bezeb']."</option>\n";
}
} // ende while($row = mysql_fetch_assoc($listeEB))
} else {
$varfeldb = array(
"Keine Auswahl getroffen" =>"Bitte auswählen",
"Word" =>"Word",
"Excel" =>"Excel",
"andere" =>"andere"
);
$listeVarB = '';
if (!empty($FPostVb)) {
foreach ($varfeldb as $keyVarFeb => $valuVarFeB) {
if ($keyVarFeb != '-' && ($keyVarFeb == $FPostVb)){
$listeVarB .= "\t<option value=\"".$keyVarFeb."\" selected='selected'>".$valuVarFeB."</option>\n";
} else {
$listeVarB .= "\t<option value=\"".$keyVarFeb."\">".$valuVarFeB."</option>\n";
}// ende for
}
} else {
foreach ($varfeldb as $keyVarFeb => $valuVarFeB) {
$listeVarB .= "\t<option value=\"".$keyVarFeb."\">".$valuVarFeB."</option>\n";
} // ende for
}}
Also im Prinzip 2 Selects.
Meine Idee war jetzt $keyVarFeb und $valuVarFeB in die If Anweisung zu ändern, so das ich nur ein Select brauche und nur die beiden geändert werde,
Mein Formular hat ein Listenfeld, je nach Bedingung mit anderen Werten.
Jetzt habe ich das Eine Listenfeld Zwei mal getippt. Je nach Bedingung
Ich wollte aber das Listenfeld nur einmal tippen und ´die Werte je nach Bedigung einlesen.
Das erste Select ist gefüllt mit Daten aus einer Abfrage
Das zweite Select mit Daten aus einem assoziativen Array
Wenn wer = 1, dann wird das Select mit Daten aus der Abfrage angezeigt, wenn micht mit Werten aus dem Array.
Ich dachte das kann man auch einfacher machen, nicht zwei Listen tippen sondern die Beschreibung und die Werte der Liste in die If Anweisung setzen.
Das bekomme ich aber nicht hin.
Ich danke Dir.
Ich wusste nicht, das das auch geht $listenfelder = array();… Du hast mich aus einer tiefen Kriese gerettet;)
Ein Miniproblem existiert noch, zwar nicht in diesem Fall Da Schlüssel und Werte ja gleich sind, aber wie würde
$listenfelder = array();
aussehen, wenn Schlüsel und Wert unterschiedlich sind? Und so das foreach as …=>…auch noch stimmt.
Sag mal, wo steht so was? Ich meine das mit dem ersten teil, das aus der Datenbank.
Ich habe hier gesuchthttp://www.php-einfach.de/php-tutorial/php-array.php aber da bin ich nur zum zweiten Teil fündig geworden