Avatar billede christian-s Nybegynder
20. oktober 2001 - 21:47 Der er 12 kommentarer og
2 løsninger

Dato-periode skal hentes ud fra tabel

Jeg har nogle arrangementer tastet ind, nogle med en start dato og en slut dato.
Jeg vil så have hentet alle arrangementer ud, der forehår i dag. Den skal så se om perioden løber \"igennem\" dagen idag. Jeg har to felter det er date felter der hedder datofra og datotil.
Hvordan skal sådan en kodes strikkes sammen?
Avatar billede myplacedk Nybegynder
20. oktober 2001 - 22:08 #1
Kort: ... WHERE datofra <= \"idag\" AND datotil >= \"idag\"

Jeg strikker lige en mere detaljeres en sammen... :)
Avatar billede myplacedk Nybegynder
20. oktober 2001 - 22:10 #2
Hmm... Faktisk ret enkelt. Prøv dette:
... WHERE datofra <= NOW() AND datotil >= NOW()

/Niels Andersen
Avatar billede christian-s Nybegynder
20. oktober 2001 - 22:20 #3
nu har jeg fået bikset denne kode sammen:

mysql_connect($mysql_server_navn,$mysql_server_bruger,$mysql_server_kode) or die(\"Kan ikke få forbindelse til database serveren, send venligst en e-mail til <a href=\\\"mailto:$email\\\">webmasteren</a>, og fortæl om problemet - Tak.\");
mysql_select_db($mysql_database_navn) or die(\"Kan ikke finde databasen, send venligst en e-mail til <a href=\\\"mailto:$email\\\">webmasteren</a>, og fortæl om problemet - Tak.\");

$result = mysql_query( \"SELECT * FROM arrangementer WHERE $datofra <= NOW() AND $datotil >= NOW()\");

while ($row = mysql_fetch_array($result)) {

      $titel        = $row[\"titel\"];

if ($titel == \'\') { echo \"Ingen arrangementer i dag!\"; }

else {
echo \"$titel\";
}

}

men denne fejl komme:
Warning: Supplied argument is not a valid MySQL result resource
Avatar billede myplacedk Nybegynder
20. oktober 2001 - 22:44 #4
Du har en \"or die()\" på både mysql_connect og mysql_select_db - hvorfor i alverden har du ikke en på mysql_query? :)

$result = mysql_query( \"SELECT * FROM arrangementer WHERE $datofra <= NOW() AND $datotil >= NOW()\") or die(\'MySQL fejl: \'.mysql_error());

/Niels Andersen
Avatar billede coderdk Praktikant
21. oktober 2001 - 01:53 #5
i kan lave WHERE NOW() BETWEEN $datofra AND $datotil

:)
Avatar billede christian-s Nybegynder
21. oktober 2001 - 10:37 #6
hvis jeg bruger coderdk\'s, siger den denne fejl:
Parse error: parse error, expecting `T_STRING\' or `T_VARIABLE\' or `T_NUM_STRING\' in /usr/local/plesk/apache/vhosts/akvariesiden.dk/httpdocs/arrangementer/kalender.php3 on line 42
Avatar billede jensgram Nybegynder
21. oktober 2001 - 13:48 #7
HOVHOV

Sådan burde det virke:
WHERE NOW() BETWEEN datofra AND datotil

Jens Gram - www.jensgram.dk
Avatar billede christian-s Nybegynder
21. oktober 2001 - 15:39 #8
Den kommer stadig med denne fejl:
Parse error: parse error, expecting `T_STRING\' or `T_VARIABLE\' or `T_NUM_STRING\' ...
Det er samme fejl, som da jeg havde \'$\' med, som da jeg fjernede dem
Avatar billede myplacedk Nybegynder
21. oktober 2001 - 19:42 #9
Det er lidt svært at hjælpe, når du ikke viser os linjen... :)
Avatar billede bunjiboys Nybegynder
22. oktober 2001 - 10:16 #10
christian-s: prøv at sætte denne linie ind:

$result = mysql_query( \"SELECT * FROM arrangementer WHERE $datofra <= NOW() AND $datotil >= NOW()\");
print mysql_error();

på den måde vil du så oftest få en mere beskrivende fejl. F.eks. vil den så sige hvis du har en syntaks fejl, eller om den ikke kan få fat i din database.

Det er altid en god ting at bruge mysql_error() hvis du har problemer med dine mysql sætninger :)
Avatar billede myplacedk Nybegynder
22. oktober 2001 - 11:18 #11
bunjiboys >> Det får han ikke meget ud af nu, for med en parse error bliver querien aldrig kørt. :)
Avatar billede christian-s Nybegynder
22. oktober 2001 - 17:15 #12
Okay her er fejlen:
You have an error in your SQL syntax near \'<= NOW() AND >= NOW()\' at line 1
Warning: Supplied argument is not a valid MySQL result resource

OG her er koden:
mysql_connect($mysql_server_navn,$mysql_server_bruger,$mysql_server_kode) or die(\"Kan ikke få forbindelse til database serveren, send venligst en e-mail til <a href=\\\"mailto:$email\\\">webmasteren</a>, og fortæl om problemet - Tak.\");
mysql_select_db($mysql_database_navn) or die(\"Kan ikke finde databasen, send venligst en e-mail til <a href=\\\"mailto:$email\\\">webmasteren</a>, og fortæl om problemet - Tak.\");

$result = mysql_query( \"SELECT * FROM arrangementer WHERE $datofra <= NOW() AND $datotil >= NOW()\");
print mysql_error();


while ($row = mysql_fetch_array($result)) {

      $titel        = $row[\"titel\"];

if ($titel == \'\') { echo \"Ingen arrangementer i dag!\"; }

else {
echo \"$titel\";
}

}
Avatar billede christian-s Nybegynder
22. oktober 2001 - 17:24 #13
Har løst det!! Jeg skulle selvfølgelig bare fjerne \'$\'. Tal for hjælpen!
Avatar billede jensgram Nybegynder
22. oktober 2001 - 19:18 #14
Jamen så siger jeg tak for points\'ene!

Jens Gram - www.jensgram.dk
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester