WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   Verknuepft und zugenaeht (http://www.wcm.at/forum/showthread.php?t=136225)

ff 06.06.2004 12:45

Verknuepft und zugenaeht
 
Ich moechte in PHP 2 mySQL-Tabellen (natuerlich) ueber die eindeutige ID verknuepfen, aber in Tabelle1 mittels <select> einen Namen und nicht eine Nummer aus Tabelle2 auswaehlen koennen. D.h. das <select> muesste mir 2 Parameter ($name und $id) uebergeben, die ich dann in 2 Felder der Tabelle1 speichern kann.

Wie geht das?

Danke
ff

_m3 06.06.2004 12:50

Hae???

1) Ist der Name eindeutig? Wenn Ja, kannst Du Dir die ID ersparen, wenn nein, musst/solltest Du ueber die ID auswaehlen.

2) Vermischt Du da GUI mit Select? Du kannst ja im Formular den Namen anzeigen lasen, fuer das Select aber die ID zurueckliefern.

Bitte mehr Infos!

ff 06.06.2004 13:29

Hallo _m3,

du hast das Problem schon richtig erkannt. Der Name soll mehrfach vorkommen duerfen, also muss ich ueber die ID verknuepfen.

Wenn das Formular aufgerufen wird, wird vorerst einmal der 1. Datensatz aus Tabelle2 angezeigt. Waehle ich nun den gewuenschten Namen mittels <select>, dann braeuchte ich die dazugehoerigen Felder ebenfalls aktualisiert. Aber wie? Mit "onChange"? Ausserdem kann ich ja in diesem Fall wieder nur WHERE '$name'=... anwenden und erhalte kein eindeutiges Ergebnis.

Den zu verknuepfenden Datensatz nur ueber die ID auszuwaehlen kann bei vielen Datensaetzen unlustig werden.

Wo ist da mein Denkfehler?
ff

_m3 06.06.2004 15:23

Das ist kein SQL, sondern ein HTML-Problem, IMHO.
Du willst diese Loesung andenken:
Code:

<SELECT size="2" name="Namensauswahl">
      <OPTION selected value="ID1">Name 1</OPTION>
      <OPTION selected value="ID2">Name2</OPTION>
  </SELECT>

So kannst Du ueber den Namen auswaehlen, bekommst aber fuer dasn Select die ID zurueckgeliefert.

Hab ich Dein Problem korrekt verstanden und aufgeloest?

ff 07.06.2004 01:55

Danke fuer den Denkanstoss! Ich uebergebe jetzt die id mittels
<option value="$id">$name</option>
So funktioniert die Sache einmal brauchbar. Wenn auch jetzt nur die id in Tabelle1 gespeichert wird und nicht auch der dazugehoerige Name in einer 2. Spalte.

Aber vielleicht habe ich dein Beispiel doch nicht richtig verstanden. Fehlt da das "multiple" im Select-Tag? Die beiden "selected" kann ich auch nicht nachvollziehen.

Ich werde mich jedenfalls einmal kundig machen, wie das mit dem multiple-select so funktioniert. Ich nehme an, dass ich dann in "Nahmensauswahl" ein Array habe. Mal sehen . . .


Alle Zeitangaben in WEZ +2. Es ist jetzt 08:03 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag