stefan: ein Formular zwei submit buttons?

hallo,
ich würde gerne ein Formular so auswerten, dass wenn der eine submit button x gedrückt wurde xxx ausgeführt wird und wenn submit button y, dann yyy ausgeführt wird.
<input TYPE="Submit" name="submit" value="ausgewählte löschen"><input TYPE="Submit" name="alle" value="alle löschen">

Das Formular werte ich folgender maßen aus:
if(isset($submit)) {
if (isset($ID)) {
  reset($ID);
  while(list($k, $v) = each($ID)) {

$abfrage = mysql_query("DELETE FROM daten WHERE (ID = '$v')");

echo "<tr><td>DatensatzNr.<b>$k</b></td><td> mit der ID:<b>$v</b></td></tr>";
  }
}
}elseif(isset($alle)) {
if($zeichen=="="){
$abfrage = mysql_query("DELETE FROM daten WHERE (bis = '$wert')");
  echo mysql_affected_rows() . " Datensätze gelöscht!";
}elseif($zeichen=="1"){
$abfrage = mysql_query("DELETE FROM daten WHERE (bis < '$wert')");
  echo mysql_affected_rows() . " Datensätze gelöscht!";
}elseif($zeichen=="2"){
$abfrage = mysql_query("DELETE FROM daten WHERE (bis > '$wert')");
  echo mysql_affected_rows() . " Datensätze gelöscht!";
  }
}

tja, nur leider funktioniert das so nicht...
wer weiß Rat und kann mich damit froh machen.
viele Grüße und danke
stefan

  1. hallo,
    ich würde gerne ein Formular so auswerten, dass wenn der eine submit button x gedrückt wurde xxx ausgeführt wird und wenn submit button y, dann yyy ausgeführt wird.

    tja, nur leider funktioniert das so nicht...
    wer weiß Rat und kann mich damit froh machen.
    viele Grüße und danke
    stefan

    hi stefan,
    ich würd zwei Normalo-Buttons nehmen, und auf onClick="javascript:abschicken(0 bzw 1)" aufrufen.
    in der Funktion (   function abschicken(wert)  )ein verstecktes Textfeld (type=hidden) beschreiben (document.forms[0].hiddenfeld.value=wert;) und dann das Formular abschicken (document.forms[0].submit(); . Im PHP-Script kannst du dann den Wert des Hiddenfeldes auswerten.

    hoffe, dich froh gemacht zu haben,
    dein Onkel

  2. Moin,

    Eigentlich müsste das so funktionieren. Der Code sieht jedenfalls richtig aus und diese Variante ist einem JavaScript jederzeit vorzuziehen. Wahrscheinlich liegt das Problem dass du beobachtest wo anders, mach doch mal

    if(isset($submit)) {

    echo "Jaa, erster Fall klappt";
    [...]

    }elseif(isset($alle)) {

    echo "Juhu, zweiter Fall klappt";
    [...]

    }

    Und du müsstest sehen dass das funktioniert. Andererseits check mal deinen Browser (Cache und so weiter).

    --
    Henryk Plötz
    Grüße von der Ostsee

    1. hallo,

      Eigentlich müsste das so funktionieren. Der Code sieht jedenfalls richtig aus und diese Variante ist einem JavaScript jederzeit vorzuziehen.

      hört sich gut an. Ich hab das Problem jetzt so gelöst, dass
      ich einfach zwei Formulare habe und bei der AUswertung abfrage, welches abgeschickt wurde. Funzt wunderbar.
      Vielen Dank nochmal an euch.
      stefan