PHP-Skript zum Löschen von Datensätzen

Dieses Thema im Forum "Web-Programmierung" wurde erstellt von librarian, 04.09.2005.

  1. librarian

    librarian Thread Starter MacUser Mitglied

    Beiträge:
    36
    Zustimmungen:
    0
    MacUser seit:
    21.08.2005
    Hallo!
    Habe hier ein Skript zum Löschen von Datensätzen. Nach außen hin sieht's so aus, als ob's funktioniert => keine Fehlermeldung.
    Aber in der Datenbank tut sich nichts.

    PHP:
    <html>
    <head>
      <title>Studentendaten</title>
      <LINK REL="stylesheet" HREF="hausarbeit.css" TYPE="text/css">  
    </head>

    <body>
    <!--Beginn des PHP-Scriptes-->
    <?php

    #Einbindung der Datenbankverbindung
    include ('contact.php');

    /*mysql-Anweisung zum Loeschen von Daten in der Datenbank, $_POST['lfd_nr'] ist die Variable, die aus loeschen_waehlen.php uebernommen, hier eingesetzt und deren Datensatz dann in der Datenbak geloescht wird.*/ 

      
    $sql 'DELETE FROM studidaten  
           WHERE lfd_nr = "'
    .mysql_escape_string($_POST['lfd_nr']).'"';

    /*wenn die Anweisung fuer die Datenbank erfolgt ist, wird dies noch einmal durch diese Ausgabe bestaetigt*/
    if (mysql_query($sql$db)) {
    echo 
    '<h2 align="center">Der Datensatz '.mysql_escape_string($_POST['lfd_nr']).' wurde gel&ouml;scht.</h2>';


    /*anderenfalls sollen  diese Fehlermeldung und der Fehlertext der ausgeführten mysql-Anweisung ausgegeben werden*/
    else {
    echo 
    "Die Daten wurden nicht gel&ouml;scht!".mysql_error();
    }
    #Verbindung zum Datenbank-Server wird geschlossen
    mysql_close($db);
    ?>
    </body>
    </html>
     
  2. Morfio

    Morfio MacUser Mitglied

    Beiträge:
    215
    Zustimmungen:
    1
    MacUser seit:
    25.10.2002
    Hi,

    lass dir die Query ausgeben und führ sie mal direkt aus. Übrigens ist in SQL die Einklammerung mit einzelnen Anführungszeichen Standard.

    Morfio ...
     
  3. Darii

    Darii MacUser Mitglied

    Beiträge:
    2.066
    Zustimmungen:
    110
    MacUser seit:
    24.02.2004
    In deinem Fall wäre also ein mysql_affected_rows($db); angebracht, um herrauszufinden, ob die Abfrage Erfolg hatte. Eine Fehlermeldung erhieltest du nämlich nur, wenn die Abfrage syntaktisch oder semantisch falsch wäre.
     
    Zuletzt bearbeitet: 04.09.2005
  4. librarian

    librarian Thread Starter MacUser Mitglied

    Beiträge:
    36
    Zustimmungen:
    0
    MacUser seit:
    21.08.2005
    Ach so.
    Habe jetzt auch den Fehler gefunden.
    Danke für die Hilfe!
     
Die Seite wird geladen...

Diese Seite empfehlen