PHP und JavaScript
-
Hi Leute,
folgendes Problem:
mit PHP lese ich aus einer DB eine Kategorie aus und schreibe diese dann in eine Pulldown-Liste --> geht!Jetzt möchte ich die zu dieser Kategorie gehörige Unterkategorie ebenfalls aus der DB auslesen. Dazu muss ich aber wissen, welcher Eintrag im obigen Pulldown-Menü ausgewählt wurde. Anders gesagt: Abhängig von dem im obigen Menü gewählten Eintrag soll sich das untere Menü anpassen.
Wie kann ich das machen??? Ich hab mal gehört, dass es mit JavaScript geht, aber wie kann ich die Anfrage an die DB mit ner JavaScript-Variablen machen??? Oder geht es auch einfacher?
thx, mfg
dope_dope
-
Du kannst mit JavaScript nicht auf die Datenbank des Servers zugreifen (PHP = Serverseitig, JavaScript = Clientseitig). Du müsstest, wenn ich dich richtig verstanden habe, das ganze z.B. in Form eines Formulars machen und dieses beim auswählen einer Eintrages an sich selbst schicken. Dann kannst du mit PHP entsprechend der Auswahl verbindung mit der DB aufnehmen und Daten daraus abrufen...
-
Ich glaub du hast mich leider nicht ganz richtig verstanden.
1. Ich hab das ganze natürlich als Formular
2. Es einfach an sich selbst zu schicken wäre natürlich möglich, aber dann müsste der User ja extra weiter klicken, ich möchte einen userfreundlicheren weg, bei dem alles auf einer Seite passiert.
3. Mit JavaScript kann man aulesen, welcher Eintrag gerade in der Dropdown-Liste ausgewählt istnum=window.document.list.wahl.selectedIndex;
meine Frage ist, wie ich auf diese Variable (num) mit PHP zugreifen kann!
-
Gar nicht, weil JavaScript nichts von PHP weiß und umgekehrt!
Außerdem muss der User nicht auf "weiter" klicken, du kannst ja einfach z.B: in der OnClick-Methode des Elements etwas wie "jav\1: document.form_x.submit();" schreiben...
Ansonsten, wie stellst du dir das vor? Das etwas Serverseitiges von etwas Clientseitiges gesteuert wird? JavaScript ist Clientseitig, dass heißt, wenn du mit JavaScript dein Steuerelement ausliest hat sich PHP schon längst verabschiedet (weil es ja nur auf dem Server läuft). Ohne eine neue Kontaktaufnahme mit dem Server kommst du da in keinem Fall herum!