Sorteren op datum
Beste,
In mijn database heb ik nieuws staan met datum erbij.
dus:
$query = mysql_query("SELECT * FROM nieuws ORDER BY datum DESC");
Maar in de database staat de datum al volgt:
Fri, 11 Dec 2009 11:28:00 GMT
Dus sorteert hij niet correct.
Weet iemand een oplossing?
Bedankt
In mijn database heb ik nieuws staan met datum erbij.
dus:
$query = mysql_query("SELECT * FROM nieuws ORDER BY datum DESC");
Maar in de database staat de datum al volgt:
Fri, 11 Dec 2009 11:28:00 GMT
Dus sorteert hij niet correct.
Weet iemand een oplossing?
Bedankt
Gesponsorde koppelingen:
Als ik goed begrijp is hij dus niet opgeslagen als date..
Of
Wel ??
Want als je opslaat als date, datetime of time zou hij gewoon goed moeten ordenen...
Of
Wel ??
Want als je opslaat als date, datetime of time zou hij gewoon goed moeten ordenen...
Milo schreef op 11.12.2009 13:43:
Als ik goed begrijp is hij dus niet opgeslagen als date..
Of
Wel ??
Want als je opslaat als date, datetime of time zou hij gewoon goed moeten ordenen...
Of
Wel ??
Want als je opslaat als date, datetime of time zou hij gewoon goed moeten ordenen...
Nee, hij is opgeslagen als varchar, dus als tekst
Dan zul je hem dus als datetime moeten opslaan...
Zo mag je geen datum opslaan....
3x keer raden waarom niet?
Indd, het is gemaakt voor tekst en niet voor een datum
Als je hem opslaat als date kan je er op ordenen...
3x keer raden waarom niet?
Indd, het is gemaakt voor tekst en niet voor een datum
Als je hem opslaat als date kan je er op ordenen...
Maar, ik slaag de datum niet op, via rss feed slaag ik de datum op dus die moet ik wel via een varchar opslagen.
Is er een mogelijkheid om van Fri, 11 Dec 2009 11:28:00 GMT tot een datetime te maken?
Bedankt
Is er een mogelijkheid om van Fri, 11 Dec 2009 11:28:00 GMT tot een datetime te maken?
Bedankt
gewoon het veld veranderen naar datetime en inserten met NOW() oid. dan kwak je er zelf maar GMT achter.
Wat je er dan van maakt is een tekst die opgeslagen gaat worden als een datum...
Dit zou je zo kunnen doen:
MOMENT :P
Dit zou je zo kunnen doen:
MOMENT :P
Als je nu in je database van het veld varchar, datetime zal maken, zullen waarschijnlijk alle velden op 0000-00-00 00:00:00 komen te staan.
Ik denk dat dit:
wel volstaat om het om te zetten, ik zeg niet dat het de beste manier is maar het werkt...
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
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
$datum = 'Fri, 11 Dec 2009 11:28:00 GMT';
function maand()
{
$str_replace('Dec', '12', $blaat);
// etc
return $blaat;
}
$date = explode(' ', $datum);
/*
$date[0] => Fri,
$date[1] => 11
$date[2] => Dec
$date[3] => 2009
$date[4] => 11:28:00
$date[5] => GMT
*/
$nieuw = $date[3].'-'.maand($date[2]).'-'.$date[1].' '.$date[4];
?>
$datum = 'Fri, 11 Dec 2009 11:28:00 GMT';
function maand()
{
$str_replace('Dec', '12', $blaat);
// etc
return $blaat;
}
$date = explode(' ', $datum);
/*
$date[0] => Fri,
$date[1] => 11
$date[2] => Dec
$date[3] => 2009
$date[4] => 11:28:00
$date[5] => GMT
*/
$nieuw = $date[3].'-'.maand($date[2]).'-'.$date[1].' '.$date[4];
?>
wel volstaat om het om te zetten, ik zeg niet dat het de beste manier is maar het werkt...
Gewijzigd op 01/01/1970 01:00:00 door Milo
Milo schreef op 11.12.2009 14:06:
ยตIk denk dat dit:
wel volstaat om het om te zetten, ik zeg niet dat het de beste manier is maar het werkt...
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
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
$datum = 'Fri, 11 Dec 2009 11:28:00 GMT';
function maand()
{
$str_replace('Dec', '12', $blaat);
// etc
return $blaat;
}
$date = explode(' ', $datum);
/*
$date[0] => Fri,
$date[1] => 11
$date[2] => Dec
$date[3] => 2009
$date[4] => 11:28:00
$date[5] => GMT
*/
$nieuw = $date[3].'-'.maand($date[2]).'-'.$date[1].' '.$date[4];
?>
$datum = 'Fri, 11 Dec 2009 11:28:00 GMT';
function maand()
{
$str_replace('Dec', '12', $blaat);
// etc
return $blaat;
}
$date = explode(' ', $datum);
/*
$date[0] => Fri,
$date[1] => 11
$date[2] => Dec
$date[3] => 2009
$date[4] => 11:28:00
$date[5] => GMT
*/
$nieuw = $date[3].'-'.maand($date[2]).'-'.$date[1].' '.$date[4];
?>
wel volstaat om het om te zetten, ik zeg niet dat het de beste manier is maar het werkt...
Bij
Geeft hij de volgende error:
Function name must be a string
om je string om te zetten naar een datum-tijd kun je even hier naar kijken:
http://be2.php.net/manual/en/function.strtotime.php
http://be2.php.net/manual/en/function.strtotime.php
XD sorry foutje meost natuurlijk zijn:
Sorry my bad...
Sorry my bad...
@Hipska: bedankt dit heeft me geholpen.
@Milo bedankt dat je me wou helpen maar het idee van Hipska was iets gemakkelijker:)
@Milo bedankt dat je me wou helpen maar het idee van Hipska was iets gemakkelijker:)
Ja klopt, had er niet eens aan gedacht :$



