Wie lösche ich.....

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

  • Wie lösche ich.....

    Hallo,

    bestimmt wurde das schonmal irgendwo gefragt, doch ich konnte nichts finden. Ich würde mich riesig freuen, wenn mir welche mit nützlichen tipps antworten.

    Ich weiß schon wo der fehler liegt, doch ich weiß nicht, wie ich den beheben soll.

    Dem Formular wird jeder checkbox eine ID als name angehängt, damit ich diesen eintrag beim auswählen löschen kann. nun ist das aber alles in einem <form></form> was ja bei dem drücken auf löschen verschickt wird und ich nun nicht mehr an die checkbox-namen-ID herankomme, die ich aber für DELETE FROM gal WHERE id = checkbox-namen-ID benötige....

    schaut euch einfach den quelltext an, kann ganz hilfreich zum verstehen meines textes sein..

    PHP-Code:
    <?php
    include('daten.inc.php');
    {
    echo
    "<html>".
    "<head>".
    "<title>Projekt löschen</title>".
    "</head>".
    "<body>";
        
    $con =  mysql_connect($dbserver,$dbuser,$dbpass); 
         
    mysql_select_db($dbname,$con); 
        
    $query "SELECT * FROM blablub ORDER BY id DESC"
        
    $result =  mysql_query($query,$con); 
        
    $gesamt =  mysql_num_rows($result); 
        if (
    $gesamt == 0
            { 
                echo 
    "Keine Einträge vorhanden !"
            } 
    echo
    "<form action=\"diesedatei.php?aktion=delete\" method=\"post\">".
    "<table width=\"75%\" border=\"0\" align=\"center\" cellpadding=\"4\" cellspacing=\"0\">".
      
    "<tr>".
        
    "<td colspan=\"4\"><strong>l&ouml;schen</strong></td>".
        
    "</tr>".
      
    "<tr>".
        
    "<td width=\"4%\">&nbsp;</td>".
        
    "<td width=\"32%\"><strong>Projekt Name</strong></td>".
        
    "<td width=\"32%\"><strong>Interne URL</strong></td>".
        
    "<td width=\"32%\"><strong>Externe URL</strong></td>".
      
    "</tr>";
        while (
    $zeileholen =  mysql_fetch_array($result,MYSQL_ASSOC)) 
            { 
      echo
    "<tr>".
        
    "<td width=\"4%\"><input name=\"".$zeileholen["id"]."\" type=\"checkbox\" value=\"1\"></td>".
        
    "<td width=\"32%\">"stripslashes($zeileholen["projekt"])."</td>".
        
    "<td width=\"32%\">"stripslashes($zeileholen["intern"])."</td>".
        
    "<td width=\"32%\">"stripslashes($zeileholen["extern"])."</td>".
      
    "</tr>";
              }
      echo
    "<tr>".
        
    "<td colspan=\"4\"><input type=\"submit\" name=\"Submit\" value=\"l&ouml;schen\"></td>".
        
    "</tr>".
    "</table>".
    "</form>".
    "</body>".
    "</html>";
    }
    if (
    $aktion == "delete"

        
    $con =  mysql_connect($dbserver,$dbuser,$dbpass); 
         
    mysql_select_db($dbname,$con); 
        
    $query "DELETE FROM blablub WHERE id = (".$zeileholen["id"].")"
        
    $result =  mysql_query($query,$con); 
        if (!
    $result
            { 
                die (
    "Sorry, Datenbankeintrag konnte nicht gelöscht werden!"); 
            } 
         
    mysql_close($con); 
    }
    ?>
    Zuletzt geändert von schusim; 22.08.2003, 12:18.

  • #2
    du musst $zeileholen["id"] in dein value der checkbox schreiben und dann nach abschicken deines forms auf $_POST['name_deiner_checkbox'] zugreifen.
    [color=red]musse rühre, musse probiere=>iss a pulsgeber ![/color]

    Kommentar


    • #3
      Re: Wie lösche ich.....

      vergib doch einfach einen festen namen wie z.b. cbox[] für die checkboxen, dann bekommst du im script ein array zurückgeliefert, in dem das value jeder angekreuzten heckbox aufgelistet ist ...

      tipp: mal mit print_r($_POST) nachschauen, was alles vom formular übergeben wird, ist auch nie verkehrt ...
      I don't believe in rebirth. Actually, I never did in my whole lives.

      Kommentar


      • #4
        danke soweit... werde ich gleich mal ausprobieren

        Kommentar


        • #5
          komisch.... habe jetzt als name der checkbox "cbox" eingegeben und als value habe ich "$zeileholen["id"]" und mein DELETE FROM sihet so aus: DELETE FROM blablub WHERE id = (".$_POST['cbox'].")

          doch es geht noch immer nicht....was mache ich falsch????

          Kommentar


          • #6
            A) mysql_error() hinter dein query
            B) zwischendrin mal nen echo machen und schauen ob alles ankommt
            [color=red]musse rühre, musse probiere=>iss a pulsgeber ![/color]

            Kommentar


            • #7
              also ankommen tut alles, soweit ich sehen konnte..... hinter welches query
              meinst du denn? ich habe oben ein und unten eins.... und soll mysql_error() dann für etwas ersetz werden oder soll z.B. DELETE FROM blablub in die klammern von der mysql-funktion?

              achja...ich bekomme immer meine fehlermeldung, dass der dateneintrag nicht gelöscht werden konnte.... aber das weiß ich ja selber... :/

              Kommentar


              • #8
                muss ich vieleicht die erste datenbank connection nach dem formular schließen, schließlich wird zum löschen nochmals eine verbindung aufgebaut...!?!?!?

                liegt es vieleicht daran?

                Kommentar


                • #9
                  ich bin am verzweifeln..... woran mag das liegen???? was mache ich die ganze zeit falsch????

                  Bitte helft mir....*fleh*

                  Kommentar


                  • #10
                    ("delete...........") or die (mysql_error());
                    wenn nicht poste nochmal den ganzen geänderten code, mit php-tags.
                    [color=red]musse rühre, musse probiere=>iss a pulsgeber ![/color]

                    Kommentar


                    • #11
                      Habe das jetzt mit dem error gemacht und diese Fehlermeldung bekommen: You have an error in your SQL syntax near '' at line 1

                      wenn bei "DELETE FROM blablub WHERE id=z.B.1" eintrage, und dann die checkbox von dieser ID anklicke, wird diese auch gelöscht, doch mit $_POST['cbox'] klappt es nicht...

                      PLEASE HELP ME


                      PHP-Code:
                      <?php
                      include('daten.inc.php');
                      {
                      echo
                      "<html>".
                      "<head>".
                      "<title>Projekt löschen</title>".
                      "</head>".
                      "<body>";
                          
                      $con =  mysql_connect($dbserver,$dbuser,$dbpass); 
                           
                      mysql_select_db($dbname,$con); 
                          
                      $query "SELECT * FROM blablub ORDER BY id DESC"
                          
                      $res =  mysql_query($query,$con); 
                          
                      $gesamt =  mysql_num_rows($res); 
                          if (
                      $gesamt == 0
                              { 
                                  echo 
                      "Keine Beiträge vorhanden !"
                              } 
                      echo
                      "<form action=\"diesedatei.php?aktion=delete\" method=\"POST\">".
                      "<table width=\"75%\" border=\"0\" align=\"center\" cellpadding=\"4\" cellspacing=\"0\">".
                        
                      "<tr>".
                          
                      "<td colspan=\"4\"><strong>l&ouml;schen</strong></td>".
                          
                      "</tr>".
                        
                      "<tr>".
                          
                      "<td width=\"4%\">&nbsp;</td>".
                          
                      "<td width=\"32%\"><strong>Projekt Name</strong></td>".
                          
                      "<td width=\"32%\"><strong>Interne URL</strong></td>".
                          
                      "<td width=\"32%\"><strong>Externe URL</strong></td>".
                        
                      "</tr>";
                          while (
                      $zeileholen =  mysql_fetch_array($res,MYSQL_ASSOC)) 
                              { 
                        echo
                      "<tr>".
                          
                      "<td width=\"4%\"><input name=\"cbox\" type=\"checkbox\" value=\"".$zeileholen["id"]."\"></td>".
                          
                      "<td width=\"32%\">"stripslashes($zeileholen["projekt"])."</td>".
                          
                      "<td width=\"32%\">"stripslashes($zeileholen["intern"])."</td>".
                          
                      "<td width=\"32%\">"stripslashes($zeileholen["extern"])."</td>".
                        
                      "</tr>";
                                }
                        echo
                      "<tr>".
                          
                      "<td colspan=\"4\"><input type=\"submit\" name=\"Submit\" value=\"l&ouml;schen\"></td>".
                          
                      "</tr>".
                      "</table>".
                      "</form>";
                      echo
                      "</body>".
                      "</html>";
                      }
                      if (
                      $aktion == "delete"

                          
                      $con =  mysql_connect($dbserver,$dbuser,$dbpass); 
                           
                      mysql_select_db($dbname,$con);
                          
                      $query "DELETE FROM blablub WHERE id=".$_POST['cbox']."";
                          
                      $result =  mysql_query($query,$con); 
                          if (!
                      $result
                              { 
                                  die (
                      "Sorry, Datenbankeintrag konnte nicht gelöscht werden!"); 
                              } 
                           
                      mysql_close($con); 
                      }
                      ?>

                      Kommentar


                      • #12
                        PHP-Code:
                        $query "DELETE FROM blablub WHERE id=".$_POST['cbox']."";
                        echo 
                        $query;
                        print_r($_POST);
                        $result =  mysql_query($query,$con); 
                        ausgabe?
                        Ich denke, also bin ich. - Einige sind trotzdem...

                        Kommentar


                        • #13
                          keine ausgabe! ist so wie ohne

                          echo $query;
                          print_r($_POST);

                          ;(

                          Kommentar


                          • #14
                            thema wieder aufholen

                            das oben besprochene problem wurde leider noch nicht behoben und deshalb bitte ich euch mir zu helfen.... BITTTEEEEEE *fleh*

                            Liebe Grüße
                            Simon

                            Kommentar


                            • #15
                              schieb mal dein dump samt daten rüber oder häng hier an.
                              [color=red]musse rühre, musse probiere=>iss a pulsgeber ![/color]

                              Kommentar

                              Lädt...
                              X