Variable innerhalb einer Seite ändern
mei
- php
Guten Abend,
ich verzweifle gerade an einem Problem was ich mit php habe. Ich habe eine Seite wo 3 Buttons sind. Je nachdem welchen Button ich drücke soll eine andere Variable (oder ein anderer Wert einer Variablen) herrausgegeben werden. Leider verzweifle ich dabei völlig. Gibt es irgendeine Möglichkeit nur über einen (veränderten) Submit-Button einen Variablenwert zu ändern oder eben eine Variable auszugeben?
<form action="members_sort.php" method="post" p align="center">
<input type="submit" class="button_n" name="name" />
<input type="submit" class="button_g" name="game" />
<input type="submit" class="button_j" name="job" />
</p></form>
<?php
If ($_POST["Name"]="name")
{$table = 1;}
Elseif ($_POST["Name"]="game")
{$table = 2;}
Elseif ($_POST["Name"]="job")
{$table = 3;}
Else
{$table = 0;}
?>
Hi,
ich verzweifle gerade an einem Problem was ich mit php habe.
Du hast nicht nur eins mit PHP.
<input type="submit" class="button_n" name="name" />
<input type="submit" class="button_g" name="game" />
<input type="submit" class="button_j" name="job" />
If ($_POST["Name"]="name")
{$table = 1;}
Elseif ($_POST["Name"]="game")
{$table = 2;}
Elseif ($_POST["Name"]="job")
{$table = 3;}
Abgesehen davon, dass du hier sicher den Vergleichs- statt dem Zuweisungsoperator benutzen möchtest - du hast überhaupt keinen Submitbutton mit dem Namen "Name".
MfG ChrisB
Grüße,
Abgesehen davon, dass du hier sicher den Vergleichs- statt dem Zuweisungsoperator benutzen möchtest - du hast überhaupt keinen Submitbutton mit dem Namen "Name".
du meinst- kein Button mit dem Namen "name"?
MFG
bleicher
Hi,
Abgesehen davon, dass du hier sicher den Vergleichs- statt dem Zuweisungsoperator benutzen möchtest - du hast überhaupt keinen Submitbutton mit dem Namen "Name".
du meinst- kein Button mit dem Namen "name"?
Nein, er meinte mit Namen "Name".
cu,
Andreas
Grüße,
Nein, er meinte mit Namen "Name".
das richtige ankreuzen:
[ ] Name="name"
[ ] name="name"
[ ] name="Name"
[ ] Name="Name"
ich habe Name als Attributwert (1er der 3) gemeint.
aber es bieten sich mehrere Optionen an ;)
MFG
bleicher
Hi,
ich habe Name als Attributwert (1er der 3) gemeint.
Ich habe "name" als Attributnamen, und "Name" als Attributinhalt gemeint.
MfG ChrisB
Hi,
Abgesehen davon, dass du hier sicher den Vergleichs- statt dem Zuweisungsoperator benutzen möchtest - du hast überhaupt keinen Submitbutton mit dem Namen "Name".
Und selbst wenn - damit das name-value-Pärchen übermittelt wird, braucht's auch die zweite Hälfte des Pärchens ...
cu,
Andreas
Hi!
ich verzweifle gerade an einem Problem was ich mit php habe.
Verzweifeln hilft bei der Lösungsfindung selten. Hilfreicher sind Kontrollausgaben, um Wunsch und Wirklichkeit miteinander zu vergleichen. Damit kommt man dem Fehler noch nciht unbedingt direkt auf die Spur, aber es hilft beim Feststellen eines eigenen Irrtums.
Zu beschreiben was passiert und was du gern hättest, wäre auch hilfreich. Zum einen für dich, weil du dabei genauer auf das Problem schauen musst und für die potentiellen Antwortenden, damit sie einen Anhaltspunkt bekommen, wenn die Fehler nicht so offensichtlich sind wie in deinem Fall.
<?php
If ($_POST["Name"]="name")
{$table = 1;}
Elseif ($_POST["Name"]="game")
{$table = 2;}
Elseif ($_POST["Name"]="job")
{$table = 3;}
Else
{$table = 0;}
?>
Den Inhalt von Variablen bekommst du mit var\_dump() angezeigt. var\_dump($\_POST) zeigt dir schonmal, dass was anderes drinsteht als du erwartet hast. var\_dump() eignet sich aber auch für die Ausgabe von Ausdrucksergebnissen. Dein Code wird immer eine 1 in $table ergeben. Das heißt also, dass $\_POST["Name"]="name" immer true ergibt. Die Kontrollausgabe var\_dump($\_POST["Name"]="name") aber liefert kein true/false sondern "name". Das sollte dir zumindest zu denken geben, dass da was nicht richtig ist.
Lo!
Erstmal danke für deine Hilfe. Leider komme ich immer noch nicht zur gewünschten Lösung. Daher versuche ich mal mein Problem ein wenig genauer zu erklären.
Ich habe eine Seite wo 3 Bilder zu sehen sind (name.png, game.png und job.png) Je nachdem auf welches Bild ich klicke soll nun ein Text erscheinen, auf der gleichen Seite.
Beispielsweise soll sobald ich auf "name.png" klicke unter den Bildern der Satz "Du hast Namen ausgewählt" erscheinen.
Hi!
Ich habe eine Seite wo 3 Bilder zu sehen sind (name.png, game.png und job.png) Je nachdem auf welches Bild ich klicke soll nun ein Text erscheinen, auf der gleichen Seite.
Beispielsweise soll sobald ich auf "name.png" klicke unter den Bildern der Satz "Du hast Namen ausgewählt" erscheinen.
Warum nimmst du dann kein Javascript, wenn du eine clientseitige Aktion haben willst?
Ansonsten - wenn du weiterhin eine PHP-Lösung suchst - ignorier bitte die Hinweise der anderen nicht. Ein Eingabeelement benötigt die beiden Attibute aus name und value, um einen Wert, der einem Namen zugeordnet sein soll zu übertragen. Dieses Paar kommt unter PHP im Array $_POST oder $_GET an. Der Name ist dabei der Schlüssel in diesem Array. Und Vergleiche stellt man mit == an. Ein = ist eine Zuweisung. Eine Zuweisung in einem als Bedingung verwendeten Ausdruck ist gültige Syntax, weswegen du da keinen Fehler angezeigt bekommst. Das Ergebnis ist allerdings das der Wert der Zuweisung. Als Bedingung ausgewertet ergibt alles was nicht 0 (oder '0' oder null oder Leerstring oder leeres Array) ist true.
Du musst also zum einen den Vergleich ordentlich notieren und zum anderen dafür sorgen, dass HTML das Richtige übertragen kann. Mit Kontrollausgaben kannst und solltest du beides prüfen.
Lo!