Checkbox Befehl spinnt bei Parameterübergabe an eine Php Dat

Alles, was PHP betrifft, kann hier besprochen werden.

Checkbox Befehl spinnt bei Parameterübergabe an eine Php Dat

Postby tommyboy » 29. August 2004 20:55

Hallo Community ich möchte Checkboxen erstellen. Aber nun habe ich gemerkt das wenn man Parameter mit method=post an ein andere Php-Datei zB. Auslesen.php übergibt, alle Checkboxen auswählen kann? Der Auswahlpunkt bleibt bei jeder Checkbox drinnen. Ich will aber nur immer eine Auswählen!
Wenn ich das rot gekennzeichnete, durch auslesen.htm ersetze dann funktioniertes wie gewünscht. Probiert das mal aus! Wer kann mir weiterhelfen danke!

<html>
<body>
<table border="1">
<tr>
<form action = "auslesen.php" method= "post">
<tr>
<td align="center" colspan="2">
<b>Ausgabe einer Liste aller Leute<b>
<tr>
<td><input type= radio name="Vorname" value="a1"></td>
<td><b>Sortiert nach Vorname</label></b></td>
</tr>
<tr>
<td><input type= radio name="Name" value="a2"></td>
<td><b>Sortiert nach Name</label></b></td>
</tr>
<tr>
<td><input type= radio name="Geburtstag" value="a3"></td>
<td><b>Sortiert nach Geburtstag</label></b></td>
</tr>
<tr>
<td align="center" colspan="2">
<input type="submit" value="Anzeigen">
<input type="reset" value="Auswahl Löschen">
</tr>
</tr>
</form>

</body>
</html>
tommyboy
 
Posts: 71
Joined: 18. July 2004 10:44
Location: Stuttgart-Tübingen

Postby Wiedmann » 29. August 2004 21:32

Ich will aber nur immer eine Auswählen!

Dann must du die "radio buttons" auch durch den selben Namen als zusammenhängend kennzeichen.
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby tommyboy » 30. August 2004 16:54

:lol:
Hallo Wiedmann,

1000 Dank für deine Antwort! Ich lerne gerade php&mysql anhand von unterschiedlichen Howto´s, da steht nicht immer alles drinnen. Gestern bin ich wegen der Kleinigkeit schier durchgedreht. Und es funktioniert nun so, wie ich es wollte super!
Ich war früher eigentlich zwecks Foren skeptisch, ob man überhaupt schnellen, aussagekräftigen Rat bekommt. Es klappt alles einwandfrei und ich bin wirklich begeistert, möchte dich explizite für deinen Einsatz loben!

Gruß an dich und die Community

Tommyboy :oops:
tommyboy
 
Posts: 71
Joined: 18. July 2004 10:44
Location: Stuttgart-Tübingen

Postby tommyboy » 30. August 2004 17:40

Hallo Widemann & Community,

Wenn alle Checkboxen den gleichen name= X haben, wie kann ich den value überprüfen/auslesen in der anderen php datei der ich die Parameter übergebe?

Danke schonmal vorab!
tommyboy
 
Posts: 71
Joined: 18. July 2004 10:44
Location: Stuttgart-Tübingen

Postby Wiedmann » 30. August 2004 18:18

Hmm, versteh nicht ganz das Problem. Genauso wie bei jedem anderen Parameter den du an ein Script übergibst. Der Parameter enthält das Value von der einen ausgewälten Checkbox.
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby tommyboy » 30. August 2004 19:08

Also ich habe vorher die ausgewählte Checkbox über den name identifiziert.

if(empty($_POST[$N])) //<-- Soll die Checkbox identifizieren die
{} // gedrückt wurde
else{$auswahl=$_POST[$N];} // Übergabeparameter in auswahl
// schreiben

Das geht nicht mehr weil sie alle den gleichen name besitzen.
Wenn ich nun die Checkbox mit dem value=a1, in einem anderes Script identifizieren will wie mache ich das jetzt? Oder denke ich zu umständlich?
tommyboy
 
Posts: 71
Joined: 18. July 2004 10:44
Location: Stuttgart-Tübingen

Postby Wiedmann » 30. August 2004 19:50

Geht jetzt ja genauso... Du hast eine Variable mit dem Name der Checkboxen. Und der Inhalt der Variable ist das Value der ausgewählten Checkbox.

Mal zum Testen:
Code: Select all
<html>
<head>
<title>Testformular</title>
<body>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post"><p>
<input type="radio" name="auswahl" value="Vorname" />Sortiert nach Vorname<br />
<input type="radio" name="auswahl" value="Name" />Sortiert nach Name<br />
<input type="radio" name="auswahl" value="Geburtstag" />Sortiert nach Geburtstag<br />
<input type="submit" value="Abschicken" />
<input type="reset" value="Zurücksetzen" />
</p></form>
<hr />
<?php
if (!empty($_POST['auswahl'])) {
   echo '<p>Ausgewählte Checkbox war: "'.$_POST['auswahl'].'".</p>';

   switch ($_POST['auswahl']) {
      case 'Vorname':
      echo '<p>Ich sortiere jetzt nach dem Vornamen.</p>';
      break;
      case 'Name':
      echo '<p>Ich sortiere jetzt nach dem Namen.</p>';
      break;
      case 'Geburtstag':
      echo '<p>Ich sortiere jetzt nach dem Namen.</p>';
      break;
   }

} else {
   echo '<p>Keine Checkbox ausgewählt.</p>';
}

?>
</body>
</html>
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby tommyboy » 31. August 2004 12:58

Hallo danke für deine Hilfe Wiedmann,

nun funktioniert alles so wie ich es wollte!
Ich weis nicht ob es auf die PHP- Version ankommt aber mußte deine Zeile
ändern:
echo '<p>Ausgewählte Checkbox war: "'.$_POST['auswahl'].'".</p>';

geändert in:
echo '<p>Ausgewählte Checkbox war: ".$_POST['auswahl']"</p>'

Dann hat alles wunderbar funktioniert! Also nochmals danke für deine Mühe, ich bin endlich weiter gekommen!!! Kann man dir auch Punkte für deine Hilfe geben, oder gibt es hier kein Rating?

Ps: Gut das es diese Community gibt! :lol:
tommyboy
 
Posts: 71
Joined: 18. July 2004 10:44
Location: Stuttgart-Tübingen

Postby Wiedmann » 31. August 2004 13:15

echo '<p>Ausgewählte Checkbox war: ".$_POST['auswahl']"</p>'

Also wenn das korrekt, wie erwartet, funktioniert, hast du schon irgendein anderes Problem in deinem Code.

Oder ging schon das Beispiel nicht? (hast du das abgetippt, oder mit kopieren und einfügen ohne weitere Änderung erstellt?)
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

absurd

Postby lain » 31. August 2004 13:20

:shock:
Code: Select all
echo '<p>Ausgewählte Checkbox war: ".$_POST['auswahl']"</p>'

das kann doch gar net funktionieren. da müsst irgendwas mit unexpected end of T_STRING oder so kommen Oo
Code: Select all
echo '<p>Ausgewählte Checkbox war: ' . $_POST['auswahl'] . '</p>';

... des würd ich eher glauben
lain
 
Posts: 38
Joined: 19. March 2004 13:48

Postby Wiedmann » 31. August 2004 13:25

da müsst irgendwas mit unexpected end of T_STRING oder so kommen

korrekt

... des würd ich eher glauben

So war's ja auch im Orginal von dem Beispiel...
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby tommyboy » 31. August 2004 17:56

if(!empty($_POST['auswahl']))
{echo "Auswahl war:".$_POST['auswahl'];}

Sorry das war der Code hatte es falsch abgetippt :oops:
tommyboy
 
Posts: 71
Joined: 18. July 2004 10:44
Location: Stuttgart-Tübingen


Return to PHP

Who is online

Users browsing this forum: No registered users and 77 guests