Ankündigung

Einklappen
Keine Ankündigung bisher.

Daten in Tabelle löschen nach Auswahl durch Radio Button

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Daten in Tabelle löschen nach Auswahl durch Radio Button

    Halli Hallo.

    Wie lautet der Befehl, wenn ich was aus der Tabelle löschen will, wo vorher die Auswahl durch einen Radio Button erfolgte.

    Bsp:

    <input type="radio" name="klasse" value="$value">
    <input type="radio" name="klasse" value="$value">

    $value ist der jeweilige Wert in der Tabelle, z.B. dann 1, 2 ,3 usw.
    Nun will ich z.B. 2 löschen, welches durch einen klick auf das Radio Button ausgewählt ist. Wie kann ich nach dem Value beim löschen unterscheiden?

    DELETE FROM tabelle WHERE eintrag = ' ??? '

    Grüße
    Sascha.

  • #2
    wenn du das Formular mit Post-Methode abschickst, dann hat $_POST['klasse'] denjenigen $value, der dem jeweiligen Radiobutten entspricht - musst also nur dafür sorgen, dass $value die ID des zugehörigen Eintrags ist

    Code:
    "DELETE FROM tabelle WHERE ID = '".$_POST['klasse']."' "
    - nur solltest du dann noch die Absicherung einbauen gegen SQL-Injections - falls jemand deine Seite analysiert, kann er ja einfach ein input type=text mit dem Namen klasse einbauen, und darüber SQL-Befehle an dein Script senden ...

    schaue dir dazu mal mysql_real_escape_string an
    "Irren ist männlich", sprach der Igel und stieg von der Drahtbürste [IMG]http://www.php.de/core/images/smilies/icon_lol.gif[/IMG]

    Kommentar


    • #3
      Hallo.
      Ok das mit dem löschen habe ich so hinbekommen. Ich brauch nur den Radio Button anklicken und dann unterscheidet er, welchen ich angeklickt habe.

      Nächste Hürde:

      Ich habe z.B. jetzt in der Tabelle "Klasse 1" und "Klasse 2" stehen. Die Anzeige realisiere ich über den oben genannten Befehl:

      PHP-Code:
      echo "<tr>";
                  
      foreach (
      $row as $key => $value) {
      echo 
      "<td><input type='radio' name='klasse' value='$value'>
      <a href='admin_bereich.php?page=einzelansicht'>
      $value&nbsp;</a></td>\n";
      }
      echo 
      "</tr>"
      Jede Zeile erzeugt mir auch einen Link und setzt mir $page auf den Wert "Einzelansicht".

      Jetzt möchte ich gerne, dass wenn ich den Link klicke (entweder "Klasse 1" oder "Klasse 2"), dass ich auf der Seite "Einzelansicht", also einer neuen Seite, die Einträge sehen kann, die entweder die "Klasse 1" oder "Klasse 2" haben.
      Also ich möchte auf der neuen Seite nur die Einträge angezeigt bekommen, wo ich vorher auf den Link geklickt habe.

      Damit gehts nicht:

      PHP-Code:
      $sql "SELECT CONCAT(Name,', ', Vorname) FROM tabelle WHERE Klasse = '".$_POST['klasse']."' ORDER BY Name"
      Ich will nicht auf ID oder Primary Key etc. abfragen, sonder mir nur Name, Vorname ausgeben lassen, auf welche Klasse ich vorher geklickt habe.
      Da haperts grade bei mir! Würde mich freuen, wenn ich wieder eine super Antwort bekommen würde!!!

      Kommentar


      • #4
        Hi.

        Warum brauchst Du den Concat in deinem SQL Statement?? Wenn Du auf deiner neuen Seite "Einzelansicht" den Wert $_POST['klasse'] abfragst, woher bekommst du den denn? Über die Link übergibst Du ja nur einen Parameter?!? Wenn, dann müsstest Du noch nen 2 Paramter übergeben (natürlich SQL Injection beachten, wie bereits angekündigt!).

        Wolf29
        while (!asleep()) sheep++;

        Unterschätze nie jemanden der einen Schritt zurück geht! Er könnte Anlauf nehmen.

        Kommentar


        • #5
          und WAS funktioniert nicht ? Fehlermeldungen ?

          öh .. Link ... nee - tut mir leid .. mit nem einfachen Link kannst du ein Formular nicht abschicken, und der RadioButton zum Unterscheiden nach Klassen ist auch ein Formularelement.

          Das kannst du soooo nur mit Hilfe von Javascript lösen - oder du baust dort nen Button hin
          "Irren ist männlich", sprach der Igel und stieg von der Drahtbürste [IMG]http://www.php.de/core/images/smilies/icon_lol.gif[/IMG]

          Kommentar


          • #6
            Und wie löse ich das am Besten mit JS ??? Ich weiß wie ich es haben will, aber leider nicht wie ich es umsetzen kann Leider...

            Kommentar


            • #7
              Fehlermeldung bekomme ich kein. Ich bekomme (logischerweise) halt nix angezeigt. Habe mir schon gedacht, dass es ne harte Nuss wird...mal sehen...Ich will mir halt auf der EINEN Seite die Mitgleider anzeigen lassen, die z.B. in Klasse 1 sind. Dazu klicke ich in der Seite davor auf den Link "Klasse 1" (im Sinne von Schulklasse) usw.

              Irgendwie muss es ja machbar sein. Will nicht für jede "Klasse" eine extra Seite anlegen!!!

              Kommentar


              • #8
                Zitat von dizzy Beitrag anzeigen
                Fehlermeldung bekomme ich kein.
                Würdest du mit diesem Code
                PHP-Code:
                $sql "SELECT CONCAT(Name,', ', Vorname) FROM tabelle WHERE Klasse = '".$_POST['klasse']."' ORDER BY Name"
                aber bekommen, wenn du das error_reporting vernünftig eingestellt hättest!
                [SIZE="1"]RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?[/SIZE]

                Kommentar

                Lädt...
                X