Update funzt bei mir nicht.

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

  • Update funzt bei mir nicht.

    Ich hänge schon seid tagen an ein und der selben funktion.
    Ich poste sie einfach mal.
    PHP-Code:
    echo "<form action=include.php?path=wunsch/wunschliste_modi.php method=post>";  
    echo 
    "<table border=\"0\" align=\"center\" width=\"100%\">";
    echo 
    "<tr><td align=\"center\" colspan=\"2\"><h1>Wunschliste</h1></td></tr>";
    echo 
    "<tr><td align=\"left\" colspan=\"2\">Hallo ".$USER[name]."</td></tr>"
    echo 
    "<tr><td colspan=\"2\">&nbsp;</td></tr>";
    $db "phpkit_wunscliste";
    $auswahl "SELECT * FROM $db ORDER BY id";
    $mehr mysql_query($auswahl) or die(mysql_error());
    while(
    $row mysql_fetch_array($mehr))
    {
        if(
    $row['erledigt'] != "Erledigt")
        {
        echo 
    "<tr><td colspan=\"2\"><b>".$row['id'].".</b> Der User <b>".$row['user']."</b> wünscht sich <b>".$row['wunsch']."</b></td></tr>";
        echo 
    "<tr><td colspan=\"2\">diesen Wunsch hat er um <b>".$row['uhr']."</b> am <b>".$row['datum']."</b> eingetragen.</td></tr>";
        echo 
    "<tr><td colspan=\"2\">Er war mit folgender IP und Host <b>".$row['ip']."@".$row['host']."</b> online.</td></tr>";
        echo 
    "<tr><td colspan=\"2\">Des Weiteren hat <b>".$row['user']."</b> folgende Nachricht hinterlassen: <b>".$row['text']."</b></td></tr>";
        echo 
    "<tr><td align=\"left\"><input type=\"text\" name=\"erledigt\"></td></tr>";
       echo 
    "<tr><td colspan=\"2\"><input type=\"submit\" name=\"submit\" value=\"Eintragen\"></td></tr>";
       echo 
    "<tr><td colspan=\"2\"><hr></td></tr>";
        }
    }
    echo 
    "</table>";
    echo 
    "</form>";

    if (isset(
    $_POST['submit']))
    {
        
    $sql 'UPDATE '.$db.' SET erledigt = "'.$_POST['erledigt'].'" WHERE id ="'.$_POST['id'].'"';
        
    $result mysql_query($sql) OR die(mysql_error());
    echo 
    '<pre>';
    print_r($_POST);
     echo 
    $sql


    Leider funzt das Update nicht.

    Da ich ja mehrere Einträge in der entsprechenden Tabelle habe, sollen auch nur bestimmte einträge aktualisiert werden.

    mysql_error gibt nichts aus.

    mit echo '<pre>' wird folgendes ausgegeben:
    PHP-Code:
    Array
    (
        [
    erledigt] => 
        [
    id] => 17
        
    [submit] => Eintragen

    echo $sql gibt dieses hier aus:
    PHP-Code:
    UPDATE phpkit_wunscliste SET erledigt "" WHERE id ="17" 
    und dabei ist es egal welchen Datensatz ich aktualisieren will. Es wird grundsätzlich die ID des letzten Datensatzes genommen und erledigt bleibt leer.

    achso, die zu aktuallisierende Tabelle wird so geschrieben, ist also kein schreibfehler
    Was nicht fliegen kann, kann auch nicht abstürzen

  • #2
    echo "<form action=include.php?path=wunsch/wunschliste_modi.php method=post>";

    Würde ich erstmal ändern auf:

    echo '<form action="include.php?path=wunsch/wunschliste_modi.php" method="post">';

    Aber daran kann es ja eigentlich nicht liegen.

    Du hast ein Formular. Aber mehrere Submit-Buttons. Die id sehe ich gar nicht in deinem Formular. Am besten machst du pro eintrag ein formular. also das <form...>-Tag mit in die Schleife packen und die id als <input type="hidden" value="'.$row['id'].'"> mitschicken.

    oder so...
    Ich denke, also bin ich.
    Manche sind trotzdem!

    Kommentar


    • #3
      ja, das mit der id war mein problem.

      allerdings hab ich das etwas anders gelöst. Da ich ja eigentlich auch checkboxen verwenden will hab ich den aufruf wie folgt geändert:

      Code:
      <input type=\"checkbox\" name=\"cbutton[" . $row['id'] . "]\" value=\"1\">Erledigt
      <input type=\"checkbox\" name=\"cbutton[" . $row['id'] . "]\" value=\"2\">Nicht Erledigt
      und nu funzt das ganze
      Was nicht fliegen kann, kann auch nicht abstürzen

      Kommentar

      Lädt...
      X