mySql Löschabfrage

Guten Morgen,

ich habe versucht eine Löschabfrage die alle Datensätze mit dem Datum heute - 1Tag
bis 15Tage löschen soll zu schreiben. Kann mir bitte jemand sagen was ich falsch
gemacht habe.

Code:
<?php
	$db=mysql_connect($mysql_server, $mysql_user, $mysql_pass);
	mysql_select_db("usr_web159_1");
		
	for($i=1;$i>15;$i++)	{
		$tstamp=mktime(0, 0, 0, date(m), date(d)-$i, date(Y));
		$datum=date("d-m-Y", $tstamp);
		$anfrage="DELETE FROM tabelle WHERE spalte = '";
		$anfrage.=$datum;
		$anfrage.="'";
		$ergebnis=mysql_query($anfrage);
	}
        mysql_close($db);
?>


edit:\ hab gemerkt das ich voll auf dem Holzweg war, konnte das Script aber fertig-
stellen und zwar folgendermaßen

Code:
<?php
	// Verbindung zur mySql-Datenbank aufbauen
	$mysql_server="localhost";
	$mysql_user="user";
	$mysql_pass="pass";
	$db=mysql_connect($mysql_server, $mysql_user, $mysql_pass);
	mysql_select_db("usr_web159_1");
	
	
	// Löschabfrage generieren und an die Datenbank senden
			for($i=5;$i<20;$i++)	{
				$tstamp=mktime(0, 0, 0, date(m), date(d)-$i, date(Y));	// (Argument für die 
				$datum=date("d-m-Y", $tstamp);							// Löschabfrage)
				$anfrage="SELECT * FROM news WHERE datum = '";
				$anfrage.=$datum;
				$anfrage.="'";
				$ergebnis=mysql_query($anfrage);
				while($zeile=mysql_fetch_row($ergebnis))	{
					if($zeile[0]==$datum)	{
						$delanfrage="DELETE FROM news WHERE datum = '";
						$delanfrage.=$datum;
						$delanfrage.="'";
						$delergebnis=mysql_query($delanfrage);
					}
				}
			}
			mysql_close($db);
			echo "<center>";
			echo "<div>Löschabfrage erfolgreich durchgeführt.</div>";
			echo "<br>";
			echo "</div><a href='/intmain.php'>zurück</a></div>";
			echo "</center>";
?>
MfG M.D.Geist
 
warum willst du nur die letzten zwanzig tage löschen? hat das nen grund ? Denn die SQL datenbank versteht auch

.....WHERE 'datum' <= '$gestern' (vorrausgesetzt du hast dein feld als datum deklariert)

Ansonsten ist es immer einfacher die unix-zeit in die datenbank zu schreiben, macht einiges leichter..
 
Zurück
Oben