• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

php-Ausgabe mit mehreren Variablen, die eine Bilddatei definieren

BasraalMina

Neues Mitglied
<g> langer Titel ... hoffe, dass ich meine Frage gut verständlich erklärt bekomme. Ich habe ein html-Formular mit insgesamt 25 radio-buttons zu verschiedenen Variationen. Jedem Button ist ein "name"- und ein "value"-Feld zugewiesen, die nach dem Abschicken des Formulars in der Rücksende-php klare Werte liefern. Das funktioniert und ist so weit, so gut.

Jetzt möchte ich aber drei Dinge erreichen, die ich (noch) nicht realisieren kann, und ich wäre HEILFROH, wenn mir da einer von Euch bei helfen könnte:


  1. Erstens will ich, dass mit jedem Radio-Button ein eigenes Bild verknüpft ist, um die Qualität der Auswahlmöglichkeiten besser zu verdeutlichen - denn ein Bild sagt bekanntlich mehr als tausend Worte und so trifft mein Besucher auch garantiert die richtige Wahl.
  2. Zweitens möchte ich, dass jedem Radio-Button mehr als ein "value" zugewiesen werden kann - ggf. lässt sich das auch mit nur einem "value"-Feld machen, wichtig ist mir nur, dass jedem Radio-Button zwei oder drei benannte Informationen untergeordnet sind, die, wenn der Button angeklickt und das Formular versendet wird, mit übertragen werden und sich in der php-Ausgabe einzeln, d.h. an unterschiedlichen Stellen aufrufen lassen.
  3. Während ich mir ziemlich sicher bin, dass sich mein erster und zweiter Wunsch erfüllen lassen, bin ich mir bei meinem dritten nicht so sicher; es wäre nämlich toll, wenn die Informationen, die beim Absenden des Formulars in der php-Ausgabe landen, eine individuelle Bilddatei definieren würden: Wenn z.B. die Radiobuttons Nr. 3, 5, 12 und 21 (mit entsprechenden "value"-Werten) angeklickt werden und das Formular versendet wird, soll in der php-Ausgabe der Bildname "3-5-12-21.jpg" generiert werden. Natürlich muss es diese Bilddatei auch geben und idealerweise soll sich diese auf der php-Seite dann auch aufrufen lassen.

Zu Punkt (1.) habe ich ein javascript gefunden:

<style type="text/css">
#myGroup {visibility:hidden}
</style>
<script type="text/javascript">
function switchPic(auswahl)
{
document.getElementById("bild").src = auswahl;
}
</script>


Und im Formular steht dann:

<input type="radio" id="radio1" name="Ausgrabung" value="Pergamon.jpg" checked onclick="switchPic(this.value)"> Wohnstadtgrabung Pergamon<br>

Das funktioniert so weit super - hat aber den Nachteil, dass - wie im orange markierten Abschnitt oben gezeigt - der "value"-Wert vom Bild belegt wird. Da bekomme ich in der php-Ausgabe also nur die Bild-Dateien geliefert. Klar, man könnte die Bilder alle so umbenennen, dass sie in der php-Ausgabe genügend Information liefern. Aber das ist umständlich und geht bestimmt anders.

Punkt (2.) könnte evtl. mit Arrays funktionieren. Aber ich muss gestehen, dass ich von php-Programmierung keinen blassen Schimmer habe. Wenn mir jemand ein Script vor die Füße legt, kann ich es hinterfragen und meistens auch verstehen. Es aber selbst zu schreiben bekomme ich nicht hin. Es wäre daher toll, wenn Ihr mir dabei helfen oder mich zumindest in die richtige Richtung anschubsen könntet.

Und Punkt (3.) ... ja. Ich weiß nicht, ob sich der überhaupt realisieren lässt. Wär natürlich toll, weil sich aus meinen zur Auswahl stehenden Formular-Punkten ca. 780 Variationen ergeben. Da ich die Bilder dazu schon habe, würde es sich anbieten sie auch einzusetzen. Aber nur unter der Prämisse, dass es die Möglichkeit gibt, den Aufruf dieser Bilder mit einem Script zu generieren. Denn ich will keine 782 Seiten schreiben.

So, das war's. Wenn jemand eine Idee hat und mir diese mitteilen möchte, würd ich mich riesig freuen!

Vielen Dank schon mal im Voraus und beste Grüße,
Basra
 
Werbung:
Da du dein Formular nicht postest, Ich also deine Variablennamen nicht kenne, nicht weiss ob per $_POST oder $_GET übergeben wird, kann ich dir leider keine genaueren Angaben machen.
Prinzipiell gehen Punkt 2 und 3 natürlich auch. Also einfach mal etwas theoretisch.

Zu 2
Du übergibst mit deinen Radiobuttons ja irgendwelche Werte (ich nenne die mal Buttonvalue). Ich gehe mal von Zahlen wie in deinem Beispiel aus.
Du kannst also z.B. ein mehrdimensionales Array definieren, das als Index deine Buttonvalues beinhaltet:
PHP:
$zusatz[5][0] = "Wert 1 des Buttons mit Wert 5";
$zusatz[5][1] = "Wert 2 des Buttons mit Wert 5";
$zusatz[5][2] = "Wert 3 des Buttons mit Wert 5";
$zusatz[5][3] = "Wert 4 des Buttons mit Wert 5";

$zusatz[7][0] = "Wert 1 des Buttons mit Wert 7";
$zusatz[7][1] = "Wert 2 des Buttons mit Wert 7";
$zusatz[7][2] = "Wert 3 des Buttons mit Wert 7";
$zusatz[7][3] = "Wert 4 des Buttons mit Wert 7";
u.s.w
Wird also z.b. der Wert 5 übergeben, liest du das Array

$zusatz[5][0], $zusatz[5][1], $zusatz[5][2] u.s.w aus

Beim Buttonvalue 7

$zusatz[7][0], $zusatz[7][1], $zusatz[7][2] u.s.w aus

Zu 3
Mit PHP kann man Variablen leicht zu einer neuen Variablen zusammensetzen, indem man sie mit einem Punkt verbindet.

Bsp;
PHP:
$string = $_POST['Buttonvalue1']."-".$_POST['Buttonvalue2']."-".$_POST['Buttonvalue3'];

Noch schöner geht das mit implode()
PHP:
$string = implode("-",$_POST['Buttonvalue']);
Je nachdem, wie die Daten übergeben werden, aber du kennst dein Formular ja, ich eben nicht......:wink:
 
Zurück
Oben