04. juli 2004 - 20:24Der er
24 kommentarer og 1 løsning
Select indenfor 30 dage virker ikke!?
JEg har denne kode som vælger fra databasen hvor der står 30 dage fra eller til datoen i dag. Men det virker ikke, uanset hvilken dato jeg skriver om det så er et halvt år fremme virker det ikke! Den står til datetime i databasen, skal det ændres? Eller er det koden der skal ændres?
<?
include("acces.php"); $s = ("SELECT user FROM login WHERE DATE_SUB(CURDATE(),INTERVAL 30 DAY) <= ddate"); $result = mysql_query($s)or die("MySQL fejl: " . mysql_error()); $log = mysql_fetch_array($result); echo $log['user'];
De fleste virksomheder har efterhånden bevist, at AI virker.
Pilotprojekter leverer resultater. Medarbejdere bruger generative AI-værktøjer. Nye use cases dukker op på tværs af organisationen.
nå ja okay, det virker jo også, jeg gik fremefter. valgte 2004-08-04. Okay, så en ting mere, hvornår opdateres dette felt i databasen? Altså er der ikke noget med at den automatisk skifter når den bliver updated i rækken eller hvad? ER det kun timestamp der gør det?
Det er kun timestamp, og kun det første af slagsen, hvis du skulle have flere. Men du kan bare gøre det i din SQL, når du selv siger UPDATE eller INSERT.
det jeg tænkte på var angående noget med at vise de brugere der er online. Så sal den også gerne kunne regne den tid man har været online i ud, men det kan jeg ikke få den til! For hvis jeg bruger normalt, og han så sidder på ved et dato skifte, så kan den jo ikke sige 01 (den 1.) - 30 (DEN 30.) Så bliver det jo ikke online tid. JEg kan jo sige Logud tid = 12:12:07 - 11:12:07 = Logind tid. Så finder den jo ud af at brugeren har været online i 01:00:00 , men det går galt ved datoskifte, hvordan fikser jeg den?
lav dato og tid til en unixtimestamp, som er antal sekunder siden verdens skabelse. Har du to af den slags kan du trække dem fra hinanden og få antal sekunder mellem de to tidspunkter. Verdens skabelse var som bekendt den 1. januar 1970.
$s = unix_timestamp($row['time']); så får jeg det i sekunder siden den tid, hvordan afrunder jeg så til hele tal når jeg går til timer og minutter.
siger jo $a = $s * 60; < minutter
og $b = $a * 60; < timer
Det skal jo ikke hedde 1,1 timer og 2,05 minutter, så skal den afrunde, jeg skal have læst lidt på alt det, men hvordan gør jeg nu? og er det herover rigtigt?
Det er en god idé at gøre sig fortrolig med manualerne til de ting man bruger ;) $r = mysql_query("SELECT UNIX_TIMESTAMP(time) as time FROM login WHERE user = '$user'"); eller kan du ikke bruge $t['time'] - ellers brug din sql og $t[0]
Nå okay, men du skal i hvert fald have mange mange tak for hjælpen! :)
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.