Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Zeigt für jeden Datensatz in der Tabelle ein Formular

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Zeigt für jeden Datensatz in der Tabelle ein Formular

    Hallo, ich habe
    PHP-Code:
    <?php
    {
      include(
    "config.php");
      include(
    "header.tpl");
    }
    {
      
    $id $_GET['id'];
      
    $ergebnis mysql_query("SELECT * FROM news");
    }
      while(
    $row mysql_fetch_object($ergebnis))
      {
    echo 
    "<form action=\"speichern.php\" method=\"post\">";
    echo 
    "<input type=\"hidden\" name=\"sid\" value=\"$id\">";
    echo 
    "<table>";
    echo 
    "<tr>";
    echo 
    "<td>Betreff</td>";
    echo 
    "<td><input type=\"text\" size=\"17\" name=\"sbetreff\" value=\"";
    echo 
    $row->betreff;
    echo 
    "\" class=\"form\"></td>";
    echo 
    "</tr>";
    echo 
    "<tr>";
    echo 
    "<td>Eintrag</td>";
    echo 
    "<td><textarea type=\"text\" size=\"17\" name=\"skommentar\">";
    echo 
    $row->kommentar;
    echo 
    "</textarea></td>";
    echo 
    "</tr>";
    echo 
    "<tr>";
    echo 
    "<td></td>";
    echo 
    "<td><input type=\"submit\" value=\"Speichern\"></td>";
    echo 
    "</tr>";
    echo 
    "</table>";
    echo 
    "</form>";
    }
    {
      include(
    "footer.tpl");
    }
    ?>
    Nun zeigt er leider für jeden Datensatz in der Datenbank das Formular an. Ich will aber nur ein Formular der vorher übergebenen ID Angezeigt wird.. Was habe ich Falsch?

    LG


  • #2
    PHP-Code:
    $ergebnis mysql_query("SELECT * FROM news WHERE id=" $id); 
    bzw. die ID des zu bearbeitenden Newseintrags
    "My software never has bugs, it just develops random features."
    "Real programmers don't comment. If it was hard to write, it should be hard to understand!"

    Kommentar


    • #3
      Zitat von Paul.Schramenko Beitrag anzeigen
      PHP-Code:
      $ergebnis mysql_query("SELECT * FROM news WHERE id=" $id); 
      bzw. die ID des zu bearbeitenden Newseintrags
      Sry. Ich idiot HAHA

      Danke. Klappt....

      Kommentar


      • #4
        Naja eine WHERE-Bedingung in das SQL statement hinzufügen, sodass nur der gewünschte Eintrag selektiert wird.
        "My software never has bugs, it just develops random features."
        "Real programmers don't comment. If it was hard to write, it should be hard to understand!"

        Kommentar


        • #5
          1. Die Klammern sind unnötig
          2. so wie oben gepostet gäbe es eine SQL Injection Gefahr

          Kommentar


          • #6
            Ja Injection ist richtig, sollte vorher noch mit
            PHP-Code:
            $id max(0, (int)$_GET['id']); 
            oder anders validiert werden.
            "My software never has bugs, it just develops random features."
            "Real programmers don't comment. If it was hard to write, it should be hard to understand!"

            Kommentar

            Lädt...
            X