Datum Cijfers naar Datum in Letters

Status
Niet open voor verdere reacties.

eeyk

Terugkerende gebruiker
Lid geworden
28 mrt 2007
Berichten
1.232
Hoe kan ik er voorzorgen dat bijvoorbeeld.

17-08-09 word geschreven op een php pagina als

Maandag 17 Augustus. 2009.

Zonder de database te hoeven aanpassen want mijn systeem werkt op DATATIME 00-00-000 00:00:00
 
Kijk eens naar de PHP functie date.

Ik zou zoiets proberen:
PHP:
$date = "2009-08-17";
echo date ("l dd F YYYY", strtotime ($date));
 
Je zou ze direct uit de database zo kunnen halen
[sql]
SELECT DATE_FORMAT(date, '%w %d %M %Y')
FROM tabel
[/sql]
http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html#function_date-format
Die zal echter altijd in het engels zijn.

Deze werkt niet

Kijk eens naar de PHP functie date.

Ik zou zoiets proberen:
PHP:
$date = "2009-08-17";
echo date ("l dd F YYYY", strtotime ($date));

Deze kan niet want dan moet ik telkens een nieuwen aanmaken en het is voor een nieuws site
 
Onzin, voer de query maar eens in phpMyAdmin uit.

Het enige foutje dat er in zit is dat het %W moet zijn i.p.v. %w maar dat geeft alleen een ander resultaat, geen foutmelding.

Dat ie volgens jou niet werkt komt omdat er geen AS {iets} achter staat.
Jij kunt hem dus niet "makkelijk" aanroepen.

Doe dit maar eens
[sql]
SELECT DATE_FORMAT(date, '%W %d %M %Y' ) AS datum
FROM dummy_projects
[/sql]
Vervolgens kun je hem met $row['datum'] of iets dergelijks aanroepen.

De code van AJT is prima te gebruiken, jij haalt $date uit je database i.p.v. hardcoded en klaar.

Je doet niet erg veel moeite om zaken aan te passen/uit te zoeken moet ik zeggen. :rolleyes:
 
ik krijg ook geen error maar het blijft het zelfde kijk zelf maar http://crime-ware.nl/Games/index.php kijk onder de Blauwen links

$revie = mysql_query("SELECT * FROM `revie` ORDER BY `id` DESC LIMIT 1");
$rev = mysql_fetch_object($revie);

$berichts = mysql_query("SELECT * FROM `nieuws1` ORDER BY `id` DESC LIMIT 1");
$nieuwss = mysql_fetch_object($berichts);

$date = mysql_query("SELECT DATE_FORMAT(datum, '%w %d %m %y') FROM `revie` ORDER BY `id` DESC LIMIT 1");
$datem = mysql_query("SELECT DATE_FORMAT(datum, '%w %d %m %y') FROM `nieuws1` ORDER BY `id` DESC LIMIT 1");


aanroepen als

$datem;
$date;

nu geeft ie dit weer

Resource id #8

Resource id #7

Zo dra ik er as datum achter zet dan Weergeeft ie niks
 
Laatst bewerkt:
Ik zei toch ook:
Dat ie volgens jou niet werkt komt omdat er geen AS {iets} achter staat.

Dus
PHP:
$date = mysql_query("SELECT DATE_FORMAT(datum, '%W %d %M %Y') AS datum FROM `revie` ORDER BY `id` DESC LIMIT 1");
$only = mysql_fetch_object($date);
echo $only->datum;
 
Ik zei toch ook:


Dus
PHP:
$date = mysql_query("SELECT DATE_FORMAT(datum, '%W %d %M %Y') AS datum FROM `revie` ORDER BY `id` DESC LIMIT 1");
$only = mysql_fetch_object($date);
echo $only->datum;

Hij werkt is er een mogelijkheid voor nederlands?
 
Die zal echter altijd in het engels zijn.
:rolleyes:

Voor zover ik weet kan je de taal niet binnen MySQL aanpassen zodat de nederlandse benamingen er uit komen.

Je zou dan de datum moeten ophalen vanuit de database, door een array halen en dan weergeven.
PHP:
$language['nl']['days'][] = 'Zondag';
$language['nl']['days'][] = 'Maandag';
$language['nl']['days'][] = 'Dinsdag';
$language['nl']['days'][] = 'Woensdag';
$language['nl']['days'][] = 'Donderdag';
$language['nl']['days'][] = 'Vrijdag';
$language['nl']['days'][] = 'Zaterdag';

$language['nl']['month'][] = 'Januari';
$language['nl']['month'][] = 'Februari';
$language['nl']['month'][] = 'Maart';
$language['nl']['month'][] = 'April';
//etc


$query = "SELECT DATE_FORMAT(datum, '%w-%e-%c-%Y') as datum FROM revie";
$result = mysql_query($query);
if(!$result) {
  echo 'Er is een fout opgetreden! MySQL zegt: '. mysql_error();
} else {
  while($row = mysql_fetch_assoc($result)) {
    $date = explode('-', $row['datum']);
    echo $language['nl']['days'][$date[0]] .' '. $date[1] .' '. $language['nl']['month'][$date[3]-1] .' '. $date[4];
  }
}
?>
Iets in die geest
 
Laatst bewerkt:
oke het werkt maar hij geeft de Maandn iet weer alleen de dag


PHP:
$queryr = "SELECT DATE_FORMAT(datum, '%w-%e-%c-%Y') as datum FROM revie ORDER BY `id` DESC LIMIT 1";
$result = mysql_query($queryr);
if(!$result) {
  echo 'Er is een fout opgetreden! MySQL zegt: '. mysql_error();
} else {
  while($row = mysql_fetch_assoc($result)) {
    $date = explode('-', $row['datum']);
	echo ' '.$language['nl']['days'][$date[0]] .' '. $date[1] .' '. $language['nl']['month'][$date[3]-1] .' '. $date[4];
  }
}

Aangepast.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan