datum probleempje
Verreweg de mooiste manier om dat te doen is door alleen de betreffende rijen uit de database te selecteren.
En dan is het NOG mooier om ook alleen de benodigde velden op te halen ipv *
SELECT veld1, veld2, veld3 FROM events WHERE date >=NOW()
Allemaal al heel erg bedankt voor de hulp! Het werkt!
Nu de volgende stap is daar natuurlijk één of meerdere gebruikers aanmaken, die de agenda mogen aanpassen. Maar dat zal een ander paar mouwen worden, vrees ik. Het probleem van de data is nu opgelost. Ik heb dit op de volgende manier gedaan:
He bah!
Werkt het zo niet gewoon?
SELECT DATE_FORMAT(datum, '%d-%m-%Y'), event FROM events WHERE datum >= NOW() ORDER BY datum
En dan het nieuw_datum gedeelte weghalen.
Als je blijft programmeren zoals nu krijg je later gegarandeerd een keer problemen.
Dan krijg ik foutboodschappen. Bedoel je zo?
Sowieso heb je $nieuw_datum laten staan.
Verander dat even in $aBerichten['ndatum'] en verander je query naar dit:
Welke fout?
Haal iig de backtickets weg ` dan werkt het nog steeds, maar heb je een nettere query :) Dan laat je het bij het oude :)
Correct me if I'm wrong... Ik zou CURRENT_DATE() i.p.v. NOW() gebruiken. Deze zal altijd alle evenementen van vandaag geven. Als je NOW() gebruikt zullen evenementen aan het begin van de dag niet weergegeven worden, omdat deze in het verleden liggen.
Blanche:
En dan is het NOG mooier om ook alleen de benodigde velden op te halen ipv *
SELECT veld1, veld2, veld3 FROM events WHERE date >=NOW()
Gewijzigd op 01/01/1970 01:00:00 door Klaasjan Boven
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<?php
mysql_connect('localhost','root','');
mysql_select_db('jvanattenhoven') or die (mysql_error());
$today = date("Y-m-d");
if(mysql_result(mysql_query("SELECT COUNT(id) FROM `events` WHERE `datum`>='$today'"),0) == 0)
{
echo 'Er staan nog geen events in de database';
}
else
{
?>
<table border=1 cellpadding=2 cellspacing=0>
<tr>
<td style="width:300px;">Datum:</td>
<td>Event:</td>
</tr>
<?php
$qSelect_berichten = mysql_query("SELECT * FROM `events` WHERE `datum`>='$today' ORDER by `datum`") or die (mysql_error());
while($aBerichten = mysql_fetch_array($qSelect_berichten))
{
$datum = $aBerichten['datum'];
$nieuw_datum = substr( $datum, 8, 2 ) . '-' . substr( $datum, 5, 2 ) . '-' . substr( $datum, 0, 4 );
echo '<tr>
<td>'.$nieuw_datum.'</td>
<td>'.$aBerichten['event'].'</td>
</tr>';
}
echo '</table>';
}
?>
<br />
mysql_connect('localhost','root','');
mysql_select_db('jvanattenhoven') or die (mysql_error());
$today = date("Y-m-d");
if(mysql_result(mysql_query("SELECT COUNT(id) FROM `events` WHERE `datum`>='$today'"),0) == 0)
{
echo 'Er staan nog geen events in de database';
}
else
{
?>
<table border=1 cellpadding=2 cellspacing=0>
<tr>
<td style="width:300px;">Datum:</td>
<td>Event:</td>
</tr>
<?php
$qSelect_berichten = mysql_query("SELECT * FROM `events` WHERE `datum`>='$today' ORDER by `datum`") or die (mysql_error());
while($aBerichten = mysql_fetch_array($qSelect_berichten))
{
$datum = $aBerichten['datum'];
$nieuw_datum = substr( $datum, 8, 2 ) . '-' . substr( $datum, 5, 2 ) . '-' . substr( $datum, 0, 4 );
echo '<tr>
<td>'.$nieuw_datum.'</td>
<td>'.$aBerichten['event'].'</td>
</tr>';
}
echo '</table>';
}
?>
<br />
Allemaal al heel erg bedankt voor de hulp! Het werkt!
Nu de volgende stap is daar natuurlijk één of meerdere gebruikers aanmaken, die de agenda mogen aanpassen. Maar dat zal een ander paar mouwen worden, vrees ik.
Quote:
SELECT * FROM `events` WHERE `datum`>='$today' ORDER by `datum`
He bah!
Werkt het zo niet gewoon?
SELECT DATE_FORMAT(datum, '%d-%m-%Y'), event FROM events WHERE datum >= NOW() ORDER BY datum
En dan het nieuw_datum gedeelte weghalen.
Als je blijft programmeren zoals nu krijg je later gegarandeerd een keer problemen.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php
mysql_connect('localhost','root','');
mysql_select_db('jvanattenhoven') or die (mysql_error());
$today = date("Y-m-d");
if(mysql_result(mysql_query("SELECT COUNT(id) FROM `events` WHERE `datum`>='$today'"),0) == 0)
{
echo 'Er staan nog geen events in de database';
}
else
{
?>
<table border=1 cellpadding=2 cellspacing=0>
<tr>
<td style="width:300px;">Datum:</td>
<td>Event:</td>
</tr>
<?php
$qSelect_berichten = mysql_query("SELECT DATE_FORMAT(datum, '%d-%m-%Y'), event FROM events WHERE datum >= NOW() ORDER BY datum
") or die (mysql_error());
while($aBerichten = mysql_fetch_array($qSelect_berichten))
{
$datum = $aBerichten['datum'];
echo '<tr>
<td>'.$nieuw_datum.'</td>
<td>'.$aBerichten['event'].'</td>
</tr>';
}
echo '</table>';
}
?>
<br />
mysql_connect('localhost','root','');
mysql_select_db('jvanattenhoven') or die (mysql_error());
$today = date("Y-m-d");
if(mysql_result(mysql_query("SELECT COUNT(id) FROM `events` WHERE `datum`>='$today'"),0) == 0)
{
echo 'Er staan nog geen events in de database';
}
else
{
?>
<table border=1 cellpadding=2 cellspacing=0>
<tr>
<td style="width:300px;">Datum:</td>
<td>Event:</td>
</tr>
<?php
$qSelect_berichten = mysql_query("SELECT DATE_FORMAT(datum, '%d-%m-%Y'), event FROM events WHERE datum >= NOW() ORDER BY datum
") or die (mysql_error());
while($aBerichten = mysql_fetch_array($qSelect_berichten))
{
$datum = $aBerichten['datum'];
echo '<tr>
<td>'.$nieuw_datum.'</td>
<td>'.$aBerichten['event'].'</td>
</tr>';
}
echo '</table>';
}
?>
<br />
Dan krijg ik foutboodschappen.
Sowieso heb je $nieuw_datum laten staan.
Verander dat even in $aBerichten['ndatum'] en verander je query naar dit:
Sorry, ik snap wat je wil zeggen, maar ik krijg het niet te goei, sorry. :(
Haal iig de backtickets weg ` dan werkt het nog steeds, maar heb je een nettere query :)
Correct me if I'm wrong...
DToch heel erg bedankt. Ik ga me er wel eens mee bezig houden, om die code geïntegreerd te krijgen. Dit was trouwens mijn eerste codering in MySQL/PHP. Ik weet het, ik moet nog heel veel leren.