NOW(); Naar Nederlandse Datum

Gestart doorMarv24 reacties23 weergaven

25 berichten · pagina 1 van 2

Marv

Lid · Topicstarter

Berichten
3.092
Reputatie
1
Punten
0,21
Lid sinds
Laatst gezien
Hallo,

Ik heb een datum in de tabel staan:

2012-02-20 20:57:36


Die wil ik als output zo hebben:

20 Februari 12, om 20:57


Hoe krijg ik dat voor elkaar?

Iemand die me kan helpen?

Alvast bedankt,
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
DATE_FORMAT()

En van te voren run je deze query om de Nederlandse Locale te gebruiken.

mysql_query("SET lc_time_names = NL_nl");
0
Marv

Lid · Topicstarter

Berichten
3.092
Reputatie
1
Punten
0,21
Lid sinds
Laatst gezien
Aarclay schreef:
DATE_FORMAT()

En van te voren run je deze query om de Nederlandse Locale te gebruiken.

mysql_query("SET lc_time_names = NL_nl");
SELECT DATE_FORMAT(" . $mysql->real_escape($TopicFetch[datum]) . ", %d %m %Y, om %H:%i);

Maar nu krijg ik engelse maand toch?

Hoe zet ik deze in een query en hoe echo ik hem?
0
Berichten
3.112
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Probeer het zou ik zeggen?
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
Waar komt $TopicFetch[datum] vandaan?
normaal hoef je alleen POST, GET, COOKIE te escapen, met een DATETIME formatted date is echt geen SQL-injection mogelijk.

Verder klopt je SELECT DATE_FORMAT functie niet helemaal
Notatie is:

DATE_FORMAT(date,format)
0
Marv

Lid · Topicstarter

Berichten
3.092
Reputatie
1
Punten
0,21
Lid sinds
Laatst gezien
Aarclay schreef:
Waar komt $TopicFetch[datum] vandaan?
normaal hoef je alleen POST, GET, COOKIE te escapen, met een DATETIME formatted date is echt geen SQL-injection mogelijk.

Verder klopt je SELECT DATE_FORMAT functie niet helemaal.
die Topicfetch komt uit een query. Waarmee ik alle topics uit de tabel topics haal.

Maar hoe zet ik hem in een query en hoe output ik hem?

En ik krijg een engelse maand toch? Hoe maak ik dat nederlands?
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
Die DATE_FORMAT voer je in je SELECTquerie uit in je mysql_query().
De vraag om de datum Nederlandstalig te maken, had ik al beantwoord....
0
Berichten
20.364
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
$datum = date(j, strtotime($variable)). .$maanden[date(n, strtotime($variable))]. .date(Y, strtotime($variable)). om .date(H:i, strtotime($variable));

// Datum
$dagen = array(
                    1 => maandag,  
                    2 => dinsdag,
                    3 => woensdag, 
                    4 => donderdag, 
                    5 => vrijdag, 
                    6 => zaterdag, 
                    7 => zondag 
                );
                
$maanden = array( 
                    1  => januari, 
                    2  => februari, 
                    3  => maart, 
                    4  => april, 
                    5  => mei, 
                    6  => juni, 
                    7  => juli, 
                    8  => augustus, 
                    9  => september,
                    10 => oktober, 
                    11 => november, 
                    12 => december 
                );


Bedoel je dit? smile
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
Shahiem schreef:
$datum = date(j, strtotime($variable)). .$maanden[date(n, strtotime($variable))]. .date(Y, strtotime($variable)). om .date(H:i, strtotime($variable));

// Datum
$dagen = array(
                    1 => maandag,  
                    2 => dinsdag,
                    3 => woensdag, 
                    4 => donderdag, 
                    5 => vrijdag, 
                    6 => zaterdag, 
                    7 => zondag 
                );
                
$maanden = array( 
                    1  => januari, 
                    2  => februari, 
                    3  => maart, 
                    4  => april, 
                    5  => mei, 
                    6  => juni, 
                    7  => juli, 
                    8  => augustus, 
                    9  => september,
                    10 => oktober, 
                    11 => november, 
                    12 => december 
                );
Bedoel je dit? smile
Nee onnodig, mijn manier is al voldoende.
0
Berichten
6.485
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Die van Aarcly werkt al idd, en voor de rest kan je

setlocale(LC_TIME, NL_nl);
date(j n Y H i, strtotime($var));

doen. Nadat je de gegvens hebt opgehaald. (dit doet zelfde als shahiems ding)
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
waarom date()? Date_format is precies wat je wilt, omdat je met DATETIME werkt wink
setlocale(LC_TIME, NL_nl);


Dit geldt overigens alleen voor strftime()
0
Berichten
6.485
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Omdat als je met date_format werkt je beperkt wordt in de notatie? H:iconfused kan niet met date_format.

Dus wink
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
Rogier schreef:
Omdat als je met date_format werkt je beperkt wordt in de notatie? H:iconfused kan niet met date_format.
Dus wink
Je kan zelf de notatie instellen hoor?
Daarom heet het DATE_FORMAT()

5-3-2012, 3-5-2012, 5 Mar 2012, Mar, 5 2012...
Het is allemaal onbeperkt mogelijk., zelf met tijden....

Lees de documentatie nog eens door, want ik heb het idee dat je het nog niet helemaal begrijpt.
0
Berichten
6.485
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
en wat is dan het voordeel tegenover date() ? Dat werkt altijd en dan hoeft de string niet precies DATETIME te zijn.

Ik hoef niet elke functie ui mijn kop te kennen, dit is gewoon geen doen. En juist omdat ik het al in de mysql zou doen heeft dat natuurlijk geen nut.

Dus accepteer nou maar dat jouw manier niet de enige is en ook zeker niet de beste...
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
date en strftime zijn beiden verschillend net als DATETIME in MySQL.

In dit geval gaat het om een datum uit de database, en waarom zou je dit niet direct in je query in de juiste formaat uit willen spugen? Dat is nou juist het voordeel....

Datas wil je het liefst alleen maar in DATETIME in de database plaatsen, daarmee kan je zo makkelijk mee sorteren en rekenen.

En geloof me, dit is dan ook de beste oplossing.
met een functie die je aangeeft kan je ook werken, maar dat is minder efficient in het geval van DATETIME, geloof me.

Rogier, ik wil je alsnog eens aanraden om de uitleg op op de genoemde link eens te bekijken, want ik heb niet echt het idee dat je het snapt.
0

Jouw reactie

Deel je idee, stel een vraag of help een ander verder.

Editor laden…

Praat mee met de One2xs-community.

Inloggen om te reageren