Avatar billede Slettet bruger
24. oktober 2008 - 19:07 Der er 14 kommentarer og
1 løsning

Visning af dato

Hej

Jeg sidder og er ved at lave en lille event-kalender, som egentlig er ret så simpelt bygget op. Man skriver eventen ind i en form hvorefter den bliver tilføjet i min database.

Problemet er:
Selv om jeg har indtastet en masse events ind i min "liste", så viser den stadig dem alle sammen.
Jeg ønsker kun den skal vise events der er aktuelle fra dags dato og frem, hvordan kan dette lade sig gøre?

Koden ser således ud:
<?php
require("config7.php");

// Retrieve data from database
$sql="SELECT * FROM kalender WHERE enhed='bæver' ORDER BY date";
$result=mysql_query($sql);
?>

<table width="525px" border="0" cellspacing="0" cellpadding="3">
<tr>
<td width="80px"><strong>Dato</strong></td>
<td width="225px"><strong>Aktivitet</strong></td>
<td width="220px"><strong>Bemærkninger</strong></td>
</tr>
<?
// Start looping rows in mysql database.
while($rows=mysql_fetch_array($result)){
?>

<tr>
<td width="80px"><? print date("d-m-Y",strtotime($rows['date'])); ?></td>
<td width="225px"><? echo $rows['aktivitet']; ?></td>
<td width="220px"><? echo $rows['bemaerkninger']; ?></td>
</tr>


<?
// close while loop
}
?>
Avatar billede majbom Novice
24. oktober 2008 - 19:18 #1
$sql="SELECT * FROM kalender WHERE enhed='bæver' AND WHERE date>NOW() ORDER BY date";

dette kræver at dit datofelt er af datatypen date eller datetime
Avatar billede Slettet bruger
24. oktober 2008 - 20:29 #2
Så får jeg bare en:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/virtual/w2u95/spejderneaabybro.dk/public_html/enheder/spejdersenior/spejdersenior.php on line 56
Avatar billede Slettet bruger
24. oktober 2008 - 20:34 #3
ahh :D WHERE skal ikke være med!!
Avatar billede majbom Novice
24. oktober 2008 - 20:34 #4
der skal heller ikke stå "WHERE" efter "AND"
Avatar billede majbom Novice
24. oktober 2008 - 20:35 #5
der var du sq hurtigst ;)
Avatar billede Slettet bruger
24. oktober 2008 - 22:36 #6
hmm... den springer jo over dags dato, den skulle jo gerne tage dags dato med samt alle efterfølgende!!
Avatar billede majbom Novice
25. oktober 2008 - 07:15 #7
$sql="SELECT * FROM kalender WHERE enhed='bæver' AND `date`=>NOW() ORDER BY date";

date er et reserveret ord, så du skal lige have glyffer rundt om, eller ændre navnet i databasen
Avatar billede Slettet bruger
25. oktober 2008 - 10:18 #8
det virker stadig ikke, og ønsker at undgå at ændre i datebasen, så vidt muligt.

Nu ser linien således ud:
$sql="SELECT * FROM kalender WHERE enhed='spejdersenior' AND `date`=>NOW() ORDER BY date";

Får følgende fejl:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/virtual/w2u95/spejderneaabybro.dk/public_html/enheder/spejdersenior/spejdersenior.php on line 56
Avatar billede Slettet bruger
25. oktober 2008 - 10:23 #9
skal lige siges at i line 56 står der:
while($rows=mysql_fetch_array($result)){
Avatar billede Slettet bruger
25. oktober 2008 - 10:26 #10
haha... måske slamkode eller hvad? men nu virker det med:
$sql="SELECT * FROM kalender WHERE enhed='spejdersenior' AND date>NOW() OR date=NOW() ORDER BY date";
Avatar billede showsource Seniormester
25. oktober 2008 - 10:53 #11
$sql="SELECT * FROM `kalender` WHERE `date` >= CURDATE() AND `enhed` = 'spejdersenior' ORDER BY `date` ASC";

CURDATE() er datoen i dag.
NOW() er datoen i dag med timer og minutter og sekunder

Brugen af "plinger" ` sikrer at du altid mener et feltnavn, selvom du evt. skulle komme til at bruge et navn som er reserveret.
Avatar billede majbom Novice
25. oktober 2008 - 11:20 #12
ja, jeg havde da lige fået byttet om på = og >

og ja, CURDATE er selvfølgelig mere korrekt i denne sammenhæng
Avatar billede Slettet bruger
12. august 2009 - 10:06 #13
splazz angiv lige svar så jeg kan give dig dine point!
Avatar billede majbom Novice
12. august 2009 - 15:44 #14
kommer her
Avatar billede majbom Novice
13. august 2009 - 07:12 #15
tak for point
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