Radiobox Auslesen ohne Submitbutton
Julia
- php
Hi Leute,
ich möchte gerne die Variable einer Selektion aus einer Radiobox auslesen, ohne das der User auf einen Submitbutton klickt.
Hintergrund:
Der User selektiert eine Rubrik aus vielen (innerhalb eine Radiobox)
und kann dann auf einen PLZ-Bereich einer Deutschlandkarte klicken.
die einzelnen plz-Bereiche sind dan entsprechende php-Seiten hinterlegt und übergeben mit der GET-Funktion die Variablen.
Frage: Ist diese Idee realisierbar, wenn ja, wie?
Liebe Grüße Julia
hi,
ich möchte gerne die Variable einer Selektion aus einer Radiobox auslesen, ohne das der User auf einen Submitbutton klickt.
Wie der Nutzer die Formulardaten übermittelt, ist ganz egal.
_Dass_ er sie übermittelt, ist natürlich erforderlich, wenn PHP aktiv werden soll.
gruß,
wahsaga
Hi wahsaga,
_Dass_ er sie übermittelt, ist natürlich erforderlich, wenn PHP aktiv werden soll.
Oki, klingt und ist sicherlich logisch.
Ich kenne leider nur die Möglichkeit mit dem Submitbutton.
Was würdest Du mir denn in meinem Problemchen vorschlagen?
Wie kann ich die Variable aus dem Radiobutton einlesen, sobald er auf einen PLZ-Bereich klickt und somit die nachfolgende php öffnet, die seine Anfrage bearbeiten soll?
Lieben Gruß Julia
hi,
Was würdest Du mir denn in meinem Problemchen vorschlagen?
Es präziser und nachvollziehbarer zu beschreiben.
</hilfe/charta.htm#tipps-fuer-fragende>
Wie kann ich die Variable aus dem Radiobutton einlesen, sobald er auf einen PLZ-Bereich klickt und somit die nachfolgende php öffnet, die seine Anfrage bearbeiten soll?
Wozu sollte man etwas "einlesen" wollen?
Ich würde einfach das Formular abschicken.
Die Unterscheidung, welcher PLZ-Bereich gewählt wurde, kann bspw. serverseitig anhand des gewählten Submit-Elements bzw. dessen Value getroffen werden.
gruß,
wahsaga
hi wahsaga
achso, endschuldige, ich versuchs nochmal deutlicher zu erklären:
1. Die Seite enthält eine Radiobox mit 40 verschiedenen Variablen
2. Die Seite enthält eine Deutschlandkarte, die in PLZ-Bereichen unterteilt ist
Der User wählt eine Rubrik aus der Radiobox und klickt dann anschließend auf einen PLZ-Bereich der Karte.
Sobald er einen PLZ-Bereich angeklickt hat wird eine neue php aufgerufen, die zwei Variablen bekommen muß: 1.Rubrik 2.PLZ
Das mit der plz ist ja kein Problem:
<area href="filter.php?plz=2">...
<area href="filter.php?plz=3">...
<area href="filter.php?plz=4">...
aber wie bekomme ich die Variable "rubrik" zufassen:
<area href="filter.php?plz=2 & rubrik="radiobuttonname">...
so funzt das leider nicht...
so vielleicht verständlicher?
Gruß Julia
Hi,
- Die Seite enthält eine Radiobox mit 40 verschiedenen Variablen
Du meinst Radiobuttons oder eine Selectbox?
Das mit der plz ist ja kein Problem:
<area href="filter.php?plz=2">...
<area href="filter.php?plz=3">...
<area href="filter.php?plz=4">...aber wie bekomme ich die Variable "rubrik" zufassen:
<area href="filter.php?plz=2 & rubrik="radiobuttonname">...
Ohne JS wuerde es gehen, wenn du die Grafik als grafischen Formularbutton einfuegst und dann mit PHP die X- und Y-Koordinate auf die geklickt wurde (diese werden vom Browser an die URL angehaengt) auswertest, wobei ich nicht weiss, wie viel Aufwand das bedeutet (hab ich noch nie ausprobiert).
Die zweite moeglichkeit (mit Javascript) waere, dem area-Tag einen onclick-Event zu verpassen, bei dem du dann eine Funktion aufrufst, die die aufzurufende URL dann zusammenbaut.
Diese moeglichkeit wuerde jedoch dein Formular fuer User ohne JS unbrauchbar machen.
mfG,
steckl
Hi steckl,
vorerst vielen Dank für Deine Erfahrung, ohne die Lösung dieses Problems würde ich ganz schön doof dastehen.
Du meinst Radiobuttons oder eine Selectbox?
Ich meine Selectbox! ;)
Ohne JS wuerde es gehen, wenn du die Grafik als grafischen Formularbutton einfuegst und dann mit PHP die X- und Y-Koordinate auf die geklickt wurde (diese werden vom Browser an die URL angehaengt) auswertest, wobei ich nicht weiss, wie viel Aufwand das bedeutet (hab ich noch nie ausprobiert).
Das wäre für mich wahrscheinlich die einzige Lösung, da wie Du schon gesagt hast mit Java das ganz userunfreundlich werden würde.
mhh..
da habe ich allerding auch absolut keine Ahnung von.
Das Problem ist wahrscheinlich, dass meine Karte ja verschiedene und unebene Grenzen hat. Und nicht wir unter dem Link (den Du mir gegeben hast" einfache gerade Kannten hat bzw. ein einfaches Rechteck ist.
Meinst Du das wäre trotzdem möglich? Und wo könnte ich mich das schlau lesen?
Lieben Gruß Julia
Hi,
vorerst vielen Dank für Deine Erfahrung [...]
Ich hab ja auch keine Erfahrung damit.
Das wäre für mich wahrscheinlich die einzige Lösung, da wie Du schon gesagt hast mit Java das ganz userunfreundlich werden würde.
Du meinst Javascript ;)
Meinst Du das wäre trotzdem möglich?
Ist wohl so echt zu aufwaendig, da du ja fuer jedes Pixel in der Grafik rausfinden muesstest, zu welchem PLZ-Bereich es gehoert. Bei rechteckigen Bereichen waere dies relativ einfach, aber so dauert es wohl ewig, bis du alle bereiche Festgelegt hast.
Wie genau man das macht kann ich dir nicht sagen. Vielleicht weiss ja jemand einen Weg wie das relativ einfach gehen wuerde.
Die einfachste Loesung waere es, wenn du das ganze auf zwei getrennten Seiten nacheinander machst.
Also beispielsweise erst ein Formular mit der Select-Box abschicken und auf der Folgeseite dann die Karte mit den areas definieren. Hier kannst du dann den vorher ausgewaehlten Wert mit PHP reinschreiben und per Link dann uebergeben:
<area href="filter.php?plz=2&rubrik=WERTVONVORHER">...
<area href="filter.php?plz=3&rubrik=WERTVONVORHER">...
<area href="filter.php?plz=4&rubrik=WERTVONVORHER">...
mfG,
steckl
Hallo,
Ist wohl so echt zu aufwaendig, da du ja fuer jedes Pixel in der Grafik rausfinden muesstest, zu welchem PLZ-Bereich es gehoert.
das ist gar nicht so kompliziert, wie es sich anhört!
Nimm die Grafik mit der Karte, und mach eine Kopie davon.
Bearbeite diese Kopie nun so, dass jeder PLZ-Bereich mit einer anderen Farbe ausgefüllt wird. Die Grafik besteht dann nur aus aneinandergrenzenden Polygonen, von denen jedes eine andere Füllfarbe hat.
Mit den gdlib-Funktionen von PHP kannst du nun diese Grafik laden, an den Koordinaten, die der Client übergibt, die Farbe bestimmen und bekommst so wieder den PLZ-Bereich raus.
Okay, das ist ein bissl Fleißarbeit, aber schlimmer als das Ermitteln der Koordinaten für die Imagemap kann es auch nicht sein.
Die einfachste Loesung waere es, wenn du das ganze auf zwei getrennten Seiten nacheinander machst.
Also beispielsweise erst ein Formular mit der Select-Box abschicken und auf der Folgeseite dann die Karte mit den areas definieren. Hier kannst du dann den vorher ausgewaehlten Wert mit PHP reinschreiben und per Link dann uebergeben:
<area href="filter.php?plz=2&rubrik=WERTVONVORHER">...
<area href="filter.php?plz=3&rubrik=WERTVONVORHER">...
<area href="filter.php?plz=4&rubrik=WERTVONVORHER">...
Auch 'ne Möglichkeit. Damit erzwingst du außerdem eine gewisse Systematik (erst Auswahl treffen, dann PLZ anklicken). Damit ist ein vorzeitiges Absenden unvollständiger Informationen ausgeschlossen.
So long,
Martin