Ankündigung

Einklappen
Keine Ankündigung bisher.

Mysql delet update

Einklappen

Neue Werbung 2019

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

  • Mysql delet update

    Hallo,


    Ich habe eine frage wie man von einer tabele eine zeile löscht


    Meine Datenbank:

    NAME UUID REPORTER CAUSE
    Max 1234 Paul TEST
    Jan 2131 Max Ein test


    Und wenn ich einen delet code machen dan löscht er alles aber es soll nur eine zeile löschen also MAX wie mache ich das?

    PHP-Code:
    <?php
    include("database/db_conectionreports.php");
    $delete_id=$_GET['del'];
    $delete_query="delete from Reports WHERE id='$delete_id'";
    $run=mysqli_query($dbcon,$delete_query);
    if(
    $run)
    {
    //javascript function to open in the same window
    echo "<script>window.open('Reports.php?deleted=Gelöscht ','_self')</script>";
    }
    ?>

  • #2
    Erstmal passt dein Statement nicht zu deiner Tabellendefinition, das gibt einen Fehler und den musst du mit mysqli_error() abfangen. Dann erweitere dein WHERE um die entsprechende Bedingung auf Name, oder gib für deine Bedingung die richtige ID/UUID an. Ausserdem solltest du dich um SQL-Injection kümmern, lies Quellen zum Stichwort "mysqli prepared statements"
    [I]You know, my wife sometimes looks at me strangely. „Duncan“, she says, „there's more to life than Solaris“. Frankly, it's like she speaks another language. I mean, the words make sense individually, but put them together and it's complete nonsense.[/I]

    Kommentar


    • #3
      Es wird alles gelöscht, was dem Filter WHERE ... entspricht. Wenn nur ein Datensatz die ID hat, dann wird nur der gelöscht. Du hast da sonst noch ein paar Fehler drinnen. Nutze POST und nicht GET um Daten zu löschen. Dann hast du eine SQL-Injection-Lücke. Man kann dir leicht beliebigen Code unterjubeln der zB die Daten aus deiner DB löscht etc.. Weiters mach bitte den JS-Kram da weg... Du brauchst gar a) nicht weiterleiten, und wenn doch, dann nutze header(Location..) in PHP dafür und mach es richtig.

      Und bitte PHP-Codetags hier im Forum verwenden.

      The string "()()" is not palindrom but the String "())(" is.

      Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
      PHP.de Wissenssammlung | Kein Support per PN

      Kommentar


      • #4
        Danke wie kann ich was updaten also so: Hallo das ist ein test (Das ist in der datenbank) dan soll es auf Hallo Welt gesetzt werden also so das man einen butten anklicken muss der dan das zum standar macht?

        Kommentar


        • #5
          http://www.w3schools.com/php/php_mysql_update.asp
          The string "()()" is not palindrom but the String "())(" is.

          Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
          PHP.de Wissenssammlung | Kein Support per PN

          Kommentar


          • #6
            Noch eine Frage wie soll ich was löschen wann die zeile immer einen andren namen hat sobalt man einen player meldet ist sie ja anders

            Bilder sind dabei


            Link zu bild 2 konnte ich nicht hochladen: http://img5.fotos-hochladen.net/uplo...lsxo9e02du.png

            Kommentar


            • #7
              was löschen wann die zeile immer einen andren namen sobalt man einen player meldet ist sie ja anders
              ... du kennst den Namen ja.
              The string "()()" is not palindrom but the String "())(" is.

              Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
              PHP.de Wissenssammlung | Kein Support per PN

              Kommentar


              • #8
                Und wie genau schreibe ich so was?


                so:
                ?
                1
                2
                3
                4
                <?php
                mysql_query("DELETE FROM name WHERE name = 'Test'");
                ?>

                Kommentar


                • #9
                  Ist das so richtig?

                  Kommentar


                  • #10
                    Zitat von Soeren1 Beitrag anzeigen
                    Und wie genau schreibe ich so was?


                    so:
                    ?
                    <?php
                    mysql_query("DELETE FROM name WHERE name = 'Test'");
                    ?>
                    http://dev.mysql.com/doc/refman/5.7/en/delete.html

                    Die Query sieht syntaktisch richtig aus( wenn deine Tabelle "name" heißt // siehe auch #3 ), jedoch solltest du die mysql_* Funktionen nicht mehr verwenden. Nutze lieber mysqli oder besser PDO.

                    Kommentar


                    • #11
                      [MOD: Spam entfernt]

                      Kommentar

                      Lädt...
                      X