Antworten auf deine Fragen:
Neues Thema erstellen

Datensatz mit php aus Tab. löschen?

sumpfbarbe

Nicht mehr ganz neu hier

Hallo,

ich möchte das aus einer Tab. alle infos nach z.B. 7 Tagen gelöscht werden.
Das Ganze soll quasi automatisch gehen.
Wie schreib ich das in PHP?

Grüße
 

dalmarog

Nicht mehr ganz neu hier

AW: Datensatz mit php aus Tab. löschen?

Naja, das Datum, wann das letzte mal gelöscht wurde, in eine Datenbank abspeichern und wenn die Zeitdifferenz über 7 Tage hinaus geht, dann soll gelöscht werden... das wäre jetzt meine Idee.
 

Doitsu

Aktives Mitglied

AW: Datensatz mit php aus Tab. löschen?

'Automatisch' geht das mit purem PHP gar nicht, dazu muesstest du dann einen Cronjob einstellen, der dann eine PHP-Datei ausfuehrt die dann die entsprechenden Daten loescht..
ansonsten halt
DELETE FROM `databse`.`table` WHERE `table`.`time_col` < time()-604800
 

sokie

Mod | Web

AW: Datensatz mit php aus Tab. löschen?

Dafür braucht man nicht zwingend einen Cronjob. Man kann es ja auch beim SeitenAufruf prüfen, ob Einträge da sind, die alter als der gewünschte Zeitraum sind. Die löscht man dann als erstes.
dazu bietet es sich an dem Datensatz das erstellungsdatum zB als unix-zeit mitzugeben.
 

sumpfbarbe

Nicht mehr ganz neu hier

AW: Datensatz mit php aus Tab. löschen?

Hallo,
@Sokie
genau so stell ich mir as vor.
Habe in der Tab. eine Spalte die das Erstelldatum speichert.
Hast Du ein allgemeines codeschnippsel dafür?

Danke vorab,
 

zome

Multimedia-Artist

AW: Datensatz mit php aus Tab. löschen?

hallo Sumpfbarbe (übrigens lustiger Name),

ich würde die Geschichte auch beim Seitenaufruf machen:
aktuelles Datum in Variable speichern. Und die Variable mit deinen Timestamps der Tabelleneinträge vergleichen. Bei 7 Tagen "einfach" alle selektieren die davor lagen. Also Selektion < z.B. (26-7).10.2010;
Und diese dann löschen.
Das mit dem subtrahieren beim Timestamp ist wahrscheinlich nicht ganz so einfach umzusetzen. Da musst Du mal kucken ob das überhaupt zu machen ist.
Vielleicht gibt es da noch noch bessere Lösungen. Viel Glück;)
 

sumpfbarbe

Nicht mehr ganz neu hier

AW: Datensatz mit php aus Tab. löschen?

Hab das mal so gemacht
PHP:
DELETE FROM `u12345678`.`ws_warenkorb` WHERE `ws_warenkorb`.`time_col` < time()-604800;
und in phpmyadmin zum testen eingegeben dann kam

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')-604800' at line 1

grüße
 

MrAzrael

Nicht mehr ganz neu hier

AW: Datensatz mit php aus Tab. löschen?

Hab das mal so gemacht
PHP:
DELETE FROM `u12345678`.`ws_warenkorb` WHERE `ws_warenkorb`.`time_col` < time()-604800;
und in phpmyadmin zum testen eingegeben dann kam

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')-604800' at line 1

grüße

da muss noch ne Klammer um dein (time()-604800) :)
 

Doitsu

Aktives Mitglied

AW: Datensatz mit php aus Tab. löschen?

PHPMyAdmin kennt time() nicht - dewegen der Fehler. Du musst das schon in ein PHP-Script schreiben oder time() mit einem gueltigen Timestamp austauschen.
.. Dazu bezweifel ich, dass deine Spalte, wo die Zeit gespeichert wird, wirklich 'time_col' heisst.
 

Doitsu

Aktives Mitglied

AW: Datensatz mit php aus Tab. löschen?

Hm, die Art von Timestamp benutzt du .. Wir hatten alle von Unix-timsestamps gesprochen. ^^

Also muesste die Abfrage irgendwie so lauten:
DELETE FROM `ws_warenkorb` WHERE DATEDIFF(NOW(), `w_timestamp`) > 7;
Kenne mich in den Datumsfunktionen von MySQL aber auch nicht sonderlich aus - also muss nicht stimmen. Ich Speicher immer Unix-Timestamps, finde ich leichter.

hier mal nen Link, viel Spass beim lesen:
http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html
 

sumpfbarbe

Nicht mehr ganz neu hier

AW: Datensatz mit php aus Tab. löschen?

Hallo,

ok seh ich ein aber wie bekomm ich das hin das in der Tabelle das Datum als unix-timestamp gespeichert wird?
Unter Typ-date and time hab ich versch. möglichkeiten aber da steht nix von unix...

Grüße

Edit:
Danke an Euch für Eure Hilfe!!
Habe es jetzt mit dem bestehenden Timestamp lösen können.

Grüße und bis zum nächsten Problem...
 
Zuletzt bearbeitet:
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Statistik des Forums

Themen
118.564
Beiträge
1.538.064
Mitglieder
67.487
Neuestes Mitglied
MichaelSEivy
Oben