Mahlzeit Steffen,
if (isset($_REQUEST['loeschen']) && $_REQUEST['loeschen'] > 0)
{
$zuloeschen = $_REQUEST['loeschen'];
$sql = "DELETE FROM benutzertabelle WHERE id = '$zuloeschen' LIMIT 1;";
}
Das Umkopieren des $\_GET-Parameters (Wieso benutzt Du übrigens nicht genau dieses superglobale Array? Durch Verwendung von $\_REQUEST verschleierst Du nur unnötig die Herkunft des Werts) wird die Herkunft des Inhalts der Variablen $zuloeschen verschleiert. Darüber hinaus ist eine SEHR schlechte Idee, Eingaben von außerhalb ungeprüft an die Datenbank weiterzugeben - merke: ALL INPUT IS EVIL!
~~~php
if (isset($_GET['loeschen']) && $_GET['loeschen'] > 0) {
$sql = sprintf("DELETE FROM benutzertabelle WHERE id = '%s' LIMIT 1",
[link:http://de3.php.net/manual/de/function.mysql-real-escape-string.php@title=mysql_real_escape_string]($_GET['loeschen']));
}
Da ich die ID des Elements per Get übertrage (ich brauche ja die ID, damit ich weiss, was gelöscht werden soll), verschwindet diese ID nicht nach dem Löschvorgang sondern bleibt erhalten,
Wieso sollte auch "automagisch" irgendeines der Elemente des Arrays $_GET "verschwinden"?
es wird jedes Mal, wenn ich noch andere Sachen auf der Seite mache, wieder die Schleife angefahren.
Warum das? Verwendest Du vielleicht in Deinen Links den übergebenen QueryString? Überlege genau, wo das erneute Auftreten von $GET['loeschen'] herkommt ... was z.B. ist das Array $auslesen?
Insgesamt habe ich - ausgehend von den paar Codezeilen, die Du gezeigt hast - das Gefühl, dass Dein Code sehr unübersichtlich ist und Du selbst eigentlich gar nicht mehr so genau weißt, wo wann was passiert und wer wie welche Werte manipuliert. Ändere das ... in Deinem eigenen Interesse. :-)
MfG,
EKKi
sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|