ERLEDIGT
NEIN
NEIN
ANTWORTEN
5
5
ZUGRIFFE
1046
1046
EMPFEHLEN
-
Hallo Leutz,
also wie folgt. Ich habe ein Formular. Erzeuge da ein Dropdown mit Usern, welche aus der Datenbank ausgelesen werden. Nun soll je nach ausgewähltem Benutzer die unteren Felder, wie name usw sich automatisch mit den Datenbankwerten füllen. Nun habe ich beim erzeugen der Seite ja schon die angelegten Benutzer aus der Datenbank ausgelesen.
Nun bin ich mir unschlüssig, wo ich die Datensätze mir erhalte um nicht nach jedem Benutzerwechsel in dem DropDown eine komplett neue Abfrage zu starten. Sprich ... ich will oben den Benutzer wählen (welcher ja vorher ALLE aus der Datenbank ausgelesen wurden) und unten sollen je nachdem welcher Benutzer gewählt wurde, mit Javascript die momentanen Werte festgehalten werden.
Steh ich aufm Schlauch oder so? ... ich weiss einfach nicht, wo ich mir die Datensätze festhalte, damit ich nicht bei jedem Wechsel des Dropdowns eine neue Datenbankabfrage machen muss.
Ach ja ... die Datenbank ist ganz ganz klein und dient nur zur Rollenverteilung der Benutzer. Also sind Geschichten wie Hibernate und so etwas zu heftig für die kleine Geschichte.
Vielleicht hat einer nen fixen Denkanstoss.
Gruß
vom riseX
-
Hmm, falls ich dich richtig verstanden habe, so würde ich ein Globales Array machen indem du alle Daten festhälst. Die Daten gibst du mit php via JSON an Javascript.
Wie das genau mit JSON funktioniert weiß ich noch nicht, aber ich werde mich in den nächsten Tagen damit beschäftigen.
MfG
-
Hm. Hört sich für mich nach einem klaren Fall für Ajax an...
Ich selbst verwende als Bibliothek sajax. Ziemlich einfach. Großen Nutzen
Wennst dazu Fragen hast, bin ich gerne behilflich.
... natürlich kannst du auch alle Datensätze schon vorher laden. Z.b lädst du jeden Datensatz in ein DIV und trägst in das DIV noch zusätzlich die ID deines datensatzes ein, z.B.
Code :1
<div id="details_232">Hier stehen dann die Benutzer Details</div>
Über Javascript / deine Dropdown welchslst du dann den Style des jeweiligen DIVs auf sichtbar / nicht sichtbar, Beispiel (standardmäßig sind alle unsichtbar):
Code :1 2 3 4 5 6 7 8 9 10
<script> function showDetails(id) { document.getElementById(id).style.display = 'block'; } </script> <div id="details_1" style="display: none">Hier stehen dann die Benutzer Details</div> <div id="details_2" style="display: none">Hier stehen dann die Benutzer Details</div> <div id="details_3" style="display: none">Hier stehen dann die Benutzer Details</div> ... <div id="details_234" style="display: none">Hier stehen dann die Benutzer Details</div>
Was in diesem beispiel fehlt: Die Dropdown, über die das Script aufgerufen wird und eine Funktion, die die vorher angezeigten Details wieder ausblendet.
Grüßle
PS: Was hat dein Titel mit deiner Problembeschreibung zu tun? z.B. "Sessionvariable"
-
mmh nein das meine ich nicht ... ich kann nicht für jeden Datensatz ein eigenes Div anlegen.
Also ... ich habe ein Form ... mit genau 4 Feldern. Oben ein Dropdown mit allen Usern... die unteren 3 sind userspezifische Angaben. Nun will ich oben den User auswählen und in den userspezifischen feldern sollen die richtigen Werte erscheinen. Ich will nun aber nicht für jeden User 3 felder mit den jeweiligen Werten machen und die bei Bedarf einblenden ... das würde zwar funktionieren ... wäre aber ich denke kein guter Weg. Ich müsste mir die Datensätze in Java in einem Array halten oder so ... mal schaun.
-
25.06.07 09:50 #5
- Registriert seit
- Mar 2007
- Ort
- Klagenfurt (Kärnten) [Österreich]
- Beiträge
- 210
Hallo,
ich löse solche Aufgaben immer indem ich mit php Javascript code schreibe. Zb könntest du das in deinem Fall so lösen:
Du schreibst dir eine User Klasse mit Javascript und inizialisierst ein Array:
Dann schreibst du mit php in einer Schleife folgenden Code zwischen 2 script tags:HTML-Code:function User(firstnama, lastname, attribut1, attribut2) { this.firstname = firstname; this.lastname = lastname; this.attribut1 = attribut1; this.attribut2 = attribut2: } var userArray = new Array();
Ebenfalls in einer php Schleife legst du dann dein Dropdown an mit dem ArrayIndex als Value um einen Bezug zu haben, den Rest kannst du dann vermutlich selbst.PHP-Code:echo
"userArray[userArray.length] = new User(".$firstname.", ".$lastname.", ".$attr1.", ".$attr2.");
";
-
ja genauso was in der Richtung schwebte mir auch vor ... ich werde das mal so machen. Allerdings benutze ich JSP ... wobei das ja kaum Unterschied macht.
Danke und Gruß
vom riseX
Ähnliche Themen
-
Letzten Datensatz ändern.
Von Willywaffel im Forum PHPAntworten: 5Letzter Beitrag: 25.09.07, 22:29 -
Datensatz in DB ändern
Von Subwoover im Forum PHPAntworten: 6Letzter Beitrag: 19.02.02, 23:36 -
Datensatz in Datenbank ändern
Von Subwoover im Forum PHPAntworten: 10Letzter Beitrag: 17.02.02, 12:03 -
Problem mit datensatz ändern
Von Wishmaster im Forum Relationale DatenbanksystemeAntworten: 2Letzter Beitrag: 15.02.02, 15:18 -
Datensatz ändern
Von TaxiDriver im Forum PHPAntworten: 1Letzter Beitrag: 31.01.02, 19:04





Zitieren
Login





