MYSQL loescht nicht genau das was ich will

Spacejumper

Erfahrenes Mitglied
Nochmal ein Problem

hi Leute ich habe mal wider ein Problem.
Ich will mit folgendem script einen datenzatz loeschen bzw. alle die in der spallte "zu" einen "1"(1= beispiel) stehen haben.

PHP:
 $anfrage="DELETE FROM table WHERE zu='$radio'";
 mysql_query($anfrage) or die ("Fehlermeldung=".mysql_error());

normal sollte der doch alles loeschen das in der spallte "zu" die gewünschte zahl hat.
Macht er aber net ich weiß net warum wahrscheinlich ein denkfehler.

Danke für die Hilfe im vorraus!
 
Versuch es mal so

$anfrage = "DELET FROM table WHERE zu = '.$radio.' LIMIT 1";

mysql_query($anfrage) or die ("Fehlermeldung" . .mysql_error());
 
nee geht auch net.
ich will ein forum schreiben da muss ich aus 2 Tabbel etwas loeschen.
ich schicke mal das ganze script:

PHP:
<?PHP
require("lokal.php");

 $anfrage="DELETE FROM forum_sm1 WHERE id1='$radio'";
 mysql_query($anfrage) or die ("Fehlermeldung=".mysql_error());

 $anfrage1="DELETE FROM forum_sm2 WHERE zu='$radio' LIMIT 1";
 mysql_query($anfrage1) or die ("Fehlermeldung=".mysql_error());

 echo "
 <center>
 Löschen erfolgreich <br>
 <a href='index.php?go=n/forum/index.php'>&lt;&lt;zurück</a>
 </center>
 ";


 mysql_close($db);
?>

vielleicht hilft das also woanders kann der fehler nicht sein das loeschen wir so aufgerunfen:

<a href='index.php?go=n/forum/loesche.php&radio=".$zeile[0]."'>&gt;&gt;&gt;Loeschen&lt;&lt;&lt;</a>

wobei $zeile[0] dann eben die 1 oder so ist
 
Laß dir mal den Query befehl ausgeben.

Vielleicht ist ja $radio leer.


Hab hier mal ne kleine Mysql Befehl Referenz vielleicht hilft die dir weiter.

KLICKOR

Sonst seh ich auch keine Fehler in deinem Script.
 
Das einzigste was mir jetzt noch einfällt ist du baust dir eine Schleife die solange etwas aus der Datenbank löscht bis Sie die (1) oder was auch immer nicht mehr findet.
 
meinst du das?

PHP:
<?PHP
require("lokal.php");

for ($i=0; $i<=$anzahl; $i++)
{
 $anfrage="DELETE FROM forum_sm1 WHERE id1='$radio[$i]'";
 mysql_query($anfrage) or die ("Fehlermeldung=".mysql_error());

 $anfrage1="DELETE FROM forum_sm2 WHERE zu='$radio[$i]' LIMIT 1";
 mysql_query($anfrage1) or die ("Fehlermeldung=".mysql_error());
};

 echo "
 <center>
 Löschen erfolgreich <br>
 <a href='index.php?go=n/forum/index.php'>&lt;&lt;zurück</a>
 </center>
 ";


 mysql_close($db);
?>

geht auch net die hatte ich das letzte mal versucht?
 
Ne nicht so.

Ich würde prüfen, mit einem Select, ob die 1 gefunden wird.
Wenn ja dann löscht du diese.
Und dann die Nächste.

Ungefähr so:

$result = mysql_query("SELECT id FROM tabelle WHERE bedingung);

while(mysql_num_rows($result){
mysql_query("DELETE FROM tabelle WHERE id = ".$result["id"].");
}



Ich hab das allerdings nicht geteste. Viel mehr so spontan geschrieben.

Ich hoffe es klappt.
 
nix der will nix mache ich verstehe das net bei meinem Newsscript fuktioniert auch das zählscript für die antworten jedoch bei dem Forum ist das script genau so aber im forum geht es auch net. entweder zeigt er mir eine 1 an oder wie viele insgesammt da sind.

Das Löschen habe ich gelöst nachdem ich 3 scripts geschrieben habe
1: Suchauswahl
2: auflistug der gefundenen Datensätze
3: Loeschen

ich weiß net mehr weiter das regt mich voll auf.

bei dem script von dir macht nix... loescht nicht mal 1 wie vorher
 
Zuletzt bearbeitet:
Zurück