kostenloser Webspace werbefrei: lima-city


Löschen eines Datensatzes

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    cam

    cam hat kostenlosen Webspace.

    Hallo zusammen!

    Ich m?chte bei meinem News-System anbieten, dass die News auch gel?scht werden k?nnen. Dazu muss ja immer ein gesagter Datensatz aus der Datenbank gel?scht werden. In meinem schlauen B?chlein stand auch, was f?r einen Befehl man daf?r einsetzen muss. Doch irgendwie scheint das nicht wirklich zu funktionieren. Es zeigt mir zwar ansich keine Fehlermeldungen an, sondern genau das, was es anzeigen soll, wenn es funktioniert hat, doch der Datensatz ist dennoch da.

    Ich habe erst eine Auflistung aller News gemacht und davor jeweils eine Checkbox gesetzt, mit der man die News ausw?hlen kann, die gel?scht werden sollen. Ganz unten hockt dann der Button zum L?schen. Kaum ist dieser gedr?ckt, kommt man zur n?chsten Seite, auf der der L?schvorgang bearbeitet werden soll, doch da tut sich ja wie gesagt nichts.

    Ich habe den Befehl zum L?schen so erstellt:

    if($loeschen!="")
    	{
    		$anfrage="DELETE FROM newssystem WHERE beitrags_id LIKE '";
    		$anfrage.=$zeile[0];
    		$anfrage.="'";
    		$ergebnis=mysql_query($anfrage);
    		print("<b>Die News wurde erfolgreich gel&ouml;scht!</b>");
    	}


    Das $loeschen ist die Checkbox, die ich ganz oben noch mit

    $loeschen=$HTTP_POST_VARS['loeschen'];


    definiert habe. Ich war mir aber nicht sicher, ob ich POST oder GET nehmen soll. Kann es vielleicht sogar daran liegen?

    Naja, ich hoffe, mir kann jemand helfen ... bin gerade ein wenig durcheinander :nosmile:
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. k****8

    Also, genau kann ich dir nicht helfen, ich wei? nicht, wie das genau funst, aber es wird wol nicht von POST oder GET abh?ngen

    Der Unterschied ist nur, dass du im Form-Tag definieren musst, wenn du post nimmst (method = \"post\")
    Mit Get hast du halt ne begrenzung von 255 Zeichen

    Wenn du Method nicht verwendet hast, versendet ers mit GET, somit entpf?ngt er ja keine Daten
  4. Nimm am Besten POST und lies die Variable dann per $_POST['loeschen']
    Ich w?rde auch nicht LIKE eingeben sondern "DELETE FROM newssystem WHERE beitrags_id = 'deineZeile'"

    LIKE w?rde nach ?hnlichen Sachen suchen. Wer wei?, ob da nicht ein "bisschen" mehr gel?scht w?rde, als du beabsichtigt hast ;)
  5. Autor dieses Themas

    cam

    cam hat kostenlosen Webspace.

    Naja, diese Variable ist ja im Endeffekt die gleiche, die ich schon verwendet habe.

    Hm, naja, ich habe dieses LIKE nur hineingesetzt, weil das in dem Buch so steht und ich noch nicht wirklich die Ahnung habe. Aber okay, ich versuche es dann mal ohne LIKE. Ich meine, wenn es ein bisschen mehr gel?scht h?tte, als es sollte, dann w?re das zumindest schon mal etwas ... aber es wurde ja null gel?scht, nix ... absolut nix.

    Okay, ich versuch es wie gesagt nun mal ohne diesem LIKE und melde mich dann gleich nochmal, um mitzuteilen, ob es geklappt hat oder nicht ...

    EDIT:
    Das Ergebnis bleibt das gleiche ... es passiert rein gar nichts. Och M?nsch, das ist doch echt zum Verzweifeln. Naja, kann ja auch nicht immer alles klappen, aber traurig ist es dennoch irgendwie.

    Beitrag ge?ndert am 14.03.2006 11:46 von cam
  6. c*********c

    Erg?nze den bestehenden Code durch folgenden:

    if($ergebnis != false)
    {
    print('Anfrage konnte richtig ausgef?hrt werden.');
    }
    else
    {
    print('Fehler, Mysql meldet '. mysql_error());
    }



    //edit: Das Script ?berpr?ft, ob die Mysql-Abfrage erfolgreich durchgef?hrt wurde. Wenn nicht, wird der zur?ckgegebene Fehler angezeigt.

    Beitrag ge?ndert am 14.03.2006 12:54 von compactdisc
  7. Autor dieses Themas

    cam

    cam hat kostenlosen Webspace.

    Und was habe ich davon? Ich meine, dadurch wird der Datensatz doch auch nicht gel?scht, oder? Soll ich vielleicht einfach mal das Script posten, mit dem ich zu l?schen versuche?

    Ich habe es bereits beim Newsletter geschafft, dass ich E-Mail-Adressen wieder austragen kann. Da hat das mit diesem LIKE ja auch super geklappt. Aber diesmal m?chte ich halt, dass er nur den Datensatz mit einer bestimmten beitrags_id (diese wird automatisch erstellt, wenn eine neue News hinzukommt) gel?scht wird.
  8. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!