I dette særtema om aspekter af AI ser vi på skiftet fra sprogmodeller til AI-agenter, og hvordan virksomheder kan navigere i spændet mellem teknologisk hastighed og behovet for menneskelig kontrol.
Jeg er er ny i PHP sådu skal ikke tage mit svar helt for givet. Jeg tror ikke at posterne kan slette sig selv. Jeg tror du i din mySQL data base skal slette alle poster der er dateret 4 dage tilbage.
Men jeg er ikkke sikker, lad os se hvad de andre PHP eksperter siger.
Du kan f.eks. sætte et timestamp i tabellen, der markerer hvornår bilen er solgt. Derefter tilføjer du bare et check, der sletter alle biler, hvor denne tid/dato er overskredet med 4 dage.
Du kan f.eks. sætte et timestamp i tabellen, der markerer hvornår bilen er solgt. Derefter tilføjer du bare et check, der sletter alle biler, hvor denne tid/dato er overskredet med 4 dage.
Nu bruger jeg selv postgres, og mit mysql er lidt rustent. Men jeg prøver ;) Det du skal bruge er, hvor langt tid der er gået fra den tid bilen blev solgt til nu. Nu er tid og dato noget der irriterede mig grænseløst i mine mysql dage, så jeg vil holde mig til unix timestamps, så vi kan regne i sekunder.
du tilføjer en række til din tabel ala det her:
sold INT UNSIGNED DEFAULT NULL
når en bil bliver solgt skal du opdatere rækken med det nuværende timestamp:
UPDATE cars SET sold = UNIX_TIMESTAMP() WHERE id = 999;
når du så skal checke om bilen er solgt indenfor 4 dage:
4 dage = 60*60*24*4 = 345600 sekunder;
SELECT * FROM cars WHERE (UNIX_TIMESTAMP() - sold) < 345600;
Det kan sikkert gøres smartere i mysql nu om dage, og helt sikkert i postgres. Men her arbejder du kun med tal, som også er nemme at lege med i php.
Jeg har kigget noget på det. Jeg finder det værende en god ide med timestamp osv.
Den eneste lille ting er at jeg ikke kan se, hvordan jeg får den til at tjekke efter over 4 dage solgte biler hver dag. Som jeg ser løsningerne er jeg nødt til at lave tjekket selv, før jeg kan få dem slettet.
Eller har du en anden genial løsning til denne lille ting.
I samme åndedrag må du meget gerne sende et svar mere, da jeg mener du har givet mig tilfredsstillende hjælp. Mange tak for hjælpen!
Jeg mener at alle platforme kan arbejde med unix timestamps, men jeg er ikke 100% sikker. Det findes ihvertfald i PHP og de fleste SQL databaser.
Jeg ville nok overveje om det er det værd at slette bilerne rigtigt. Det er ofter en god ide at beholde oplysningerne til senere brug, f.eks. statistik eller regnskab. Jeg ville nok vælge at beholde bilerne i databasen, og bare ikke vise dem der er solgt.
Når du har et tidspunkt der markerer salg, kan du sagtens vælge bare ikke at vise biler der er solgt for mere end 4 dage siden.
Hvis du helt vil slette bilerne, kan du indsætte en DELETE query et eller andet sted i koden, eller bruge et cron-job eller noget lignedne til at køre den en gang imellem.
Selve checket kan du enten lave i PHP, eller i SQL.
MySQL har en funktion her hedder UNIX_TIMESTAMP(), som er den vi skal bruge. Den returnerer det aktuelle timestamp. Den værdi skal du så trække 4 dage fra, som er 345600 sekunder. Det eneste du så skal gøre er at holde det tal op mod salgstidspunktet.
Denne query skulle slette alle biler der er solgt for mece end 4 dage siden.
DELETE FROM cars WHERE (UNIX_TIMESTAMP() - time_sold) < 345600;
Du kan også få et timestamp igennem PHP, med funktionen time()
Du kunne evt. også oprette et view, der filtrerer de solgte biler fra.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.