06. marts 2012 - 19:59
Der er
11 kommentarer og 1 løsning
Første ledige dato
Hej Jeg har en tabel som har en colum som er en dato. Jeg har brug for den første dato som ikke er i tabellen, dvs det kan være dags dato eller en anden ud fra tabellen. eks: (dags dato=2012-03-06) ----------------------- | tabel | ----------------------- | id | dato | ----------------------- | 1 | 2012-03-06 | | 1 | 2012-03-07 | | 1 | 2012-03-08 | ----------------------- Forventer resultat: 2012-03-09 Hvis tabellen så sådan her ud (dags dato=2012-03-06): ----------------------- | tabel | ----------------------- | id | dato | ----------------------- | 1 | 2012-03-08 | ----------------------- Forventer resultat: 2012-03-06 Nogle forslag til hvordan jeg nemmest får dato'en?
Annonceindlæg tema
Cloud & AI
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
06. marts 2012 - 20:03
#1
Er det implicit at dato ikke må være < dags dato?
06. marts 2012 - 20:06
#2
Hej Det må gerne være dags dato, bare dags dato ikke er i tabellen. Hvis dags dato er i tabellen, så er næste kandidat dags dato+1 hvis den heller ikke er i tabellen. /Jesper
06. marts 2012 - 20:11
#3
Hvilket format ligger dato i?
06. marts 2012 - 20:12
#4
Hej Det ligger sådan her: 2012-03-20 yyyy-mm-dd
06. marts 2012 - 20:14
#5
er det en varchar(10)?
06. marts 2012 - 20:17
#6
Nej Typen "date" i mysql /Jesper
06. marts 2012 - 20:30
#7
Nå, ok, jeg plejer at bruge time - men logikken er vel den samme. Lav en select order by date where date >= today. Sæt $match = false Lav derefter en mysql_fetch_array med en (if $match==false) hvor du tæller dagen op med en for hvert gennemløb. Sæt $match = true første gang du har et hit.
06. marts 2012 - 20:45
#8
Det vil jeg forsøge mig med. SMider du et svar?
06. marts 2012 - 20:55
#9
JA - når du melder tilbage at det virker :-)
07. marts 2012 - 08:55
#10
Æhem. Hva ska han gøre hvis han skal gennem øvelsen to gange på samme dag?
01. april 2012 - 19:53
#11
Jeg kom frem til det her: date_default_timezone_set("Europe/Paris"); //$db = new Database; // create the $db object $db = new Database(DB_SERVER, DB_USER, DB_PASS, DB_DATABASE); // connect to the server $db->connect(); $ts = time(); $try_date = date("Y-m-d", $ts); $date_count=1; while ($date_count <> 0) { $sql = "SELECT COUNT(*) as free_date FROM bookingdate WHERE booking_date = '".$try_date."'"; $record = $db->query_first($sql); $date_count = $record['free_date']; $try_date = date("Y-m-d", strtotime($try_date. ' + 1 day')); } $try_date = date("j-n-Y", strtotime($try_date. ' - 1 day')); echo $try_date;
01. juli 2012 - 20:01
#12
lukker
Vi tilbyder markedets bedste kurser inden for webudvikling