Dropdown - Menu mit Datenbank "verlinken"

Drapondur
Hallo,

hier hab ich eine etwas knifflige Sache für "Bastler":

Ich möchte gerne im Template calendar_addevent ein weiteres Eingabe-Feld hinzufügen. Dieses soll ein Dropdown-Menu beinhalten, dass auf die Daten in einer Datenbank (z.B.: bb_1_users) zugreift und die Daten einer bestimmten Spalte auflistet.

Die Daten der Auswahl soll dann in den erstellten Termin übernommen werden.

Im Prinzip muss man wahrscheinlich in der calendar.php eine Variable definieren, die den Array der Auswahl aus der Tabelle enthält.
Dann müsste dieser Array im Template so eingebaut werden. dass dieser als Auswahlliste
in der Form


code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
<select class="input" name="type" size="1">
<option selected="selected">bitte auswählen</option>
<option>Auswahl 1</option>
<option>Auswahl 1</option>
<option>Auswahl 1</option>
...
</select>

erscheint (sorry für diese Ausdrucksweise, aber ich hab von programmieren nich sooooo die Ahnung).

Wie kann man sowas anstellen?
meeeeeeeep
Du müsstes in der PHP Datei eine while Schleife einbauen die die Daten aus der Datenbank liest und dann müsstes du dort auch ein neus Template definieren wodurch die Ausgabe des Auswahlfeldes erfolgt.

calendar_addevent Template
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
.
.
.
<select class="input" name="type" size="1">
  $template_mit_daten_aus_db
</select>
.
.
.



template_mit_daten_aus_db Template
code:
1:
2:
3:
4:
5:
<option selected="selected">bitte auswählen</option>
<option>Auswahl 1</option>
<option>Auswahl 1</option>
<option>Auswahl 1</option>
...



Dies soll ein kleiner Denkanstoss sein, vielleicht bringt er dich ja weiter.
Drapondur
Hi Ho,

erstmal danke für den Anstoss :-)

Ich hab jetzt folgendes in die calendar.php eingebaut:

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
if($action=="addevent") {
 $lang->load("POSTINGS");
// Abfrage locations
 $locrequest = $db->unbuffered_query("SELECT id, name FROM bb".$n."_pwvote_location");
 while($location = mysql_fetch_array($locrequest))
 {
 $locid = $location['id'];
 $locname = $location['name'];
 eval ("\$locationdata .= \" ".$tpl->get("calendar_locationbit")."\";");
 }
// Ende der Abfrage locations


Dann hab ich ein Template angelegt:

calendar_locationbit:

code:
1:
2:
3:
<option>$locname</option>


Und im calendar_addevent sieht es an der benötigten Stelle jetzt so aus:


code:
1:
2:
3:
4:
5:
6:
      <select class="input" name="type" size="1">
      <option selected="selected">bitte auswählen</option>
      $locationdata
      </select>


Das irgendwas nch nicht ganz richtig funktionieren tut, sehe ich daran, dass leider keine locations in der Auswahl drin stehen ...

Was fehlt, ist falsch oder ist zuviel?

EDIT: Es geht !!! ich hatte nur vergessen, die PHP wieder hochzuladen ...

LG,
Nino