# mysql eintrag (automatisch) nach 3 tagen löschen



## Operator_Jon (10. Juli 2003)

HI!
Ich brauche ein script, oder eine möglichst genaue erklärung, wie man mit php+mysql einen eintrag automatisch nach 3 tagen löscht. es MUSS nicht automatisch sein, es kann auch das script alle 3 tage ausgefürhrt werden, ich bräuchte es aber erstmal. wär super, wenn ihr mir da helfen könntet 

THX
cu
OP_Jon


----------



## bn (10. Juli 2003)

du benötigst ein der entsprechenden tabelle in feld für einen timestamp (z.b. datum).
darin speicherst du beim eintragen des datensatzes den aktuellesn timestamp

```
$sql = "INSERT INTO tabelle (das, dies, jenes, datum) VALUES ('bla', 'bla', 
bla', '".time()."')";
```

nun mußt du beim aufruf des scriptes lediglich prüfen, ob datensätze mit timestamps älter als 3 tage vorhanden sind und löscht diese dann entsprechend:

```
$sql = "DELETE FROM tabelle WHERE datum < '".(time() - 60*60*24*3)."'";
```

cu bloddy


----------



## Operator_Jon (11. Juli 2003)

super cool, THX
ich habe bereits in 2 anderen foren nachgefragt, nie habe ich so eine präzise und gute antwort bekommen, die man auch sofort versteht !!!
thx
cu
OP_Jon

//EDIT:
Das scipt muss dann jeden tag ausgeführt werden, da lieg ich doch richtig oder^^


----------



## bn (11. Juli 2003)

ich würde die abfrage direkt in das script einfügen, welches die entsprechenden daten ausliest...und zwar vor dem auslesen ;-).

es ist egal ob das script dann alle 5 tage oder alle 5min ausgelesen wird, da durch das löschen aller einträge, die zum zeitpunkt des scriptaufrufs älter als 3 tage sind, die daten immer jünger als 3 tage und damit "aktuell" sind - und darauf kommt es ja an.

cu bloddy


----------



## Operator_Jon (11. Juli 2003)

stimmt, klar bin ich heut ma wieder dumm:-( 
thx!


----------



## Operator_Jon (13. Juli 2003)

> _Original geschrieben von bloddy newbie _
> 
> ```
> $sql = "DELETE FROM tabelle WHERE datum < '".(time() - 60*60*24*3)."'";
> ```



Ich habe das jetzt richtig verstanden, das dieses script schon auf 3 tage eingtestellt ist und fuktioniert, richtig?

Danke
cu
OP_Jon


----------



## bn (13. Juli 2003)

du mußt natürlich den taberllen- und feldnamen nach deinen gegebenheiten anpassen.


----------



## Operator_Jon (13. Juli 2003)

Ja, das ist klar, ich meine das deletescript als solches


----------



## bn (13. Juli 2003)

jup


----------



## Operator_Jon (13. Juli 2003)

cool, thx^^


----------

