Goedenavond,

Ik ben bezig met een nieuwsscriptje. Het opslaan uitlezen lukt allemaal.
De datum sla ik op als datetime zodat er ook een tijd is van hoe laat iets gepost is.
<? echo $row['datum'] ?> dan krijg ik datum en die tijd te zien.

Maar nu wil ik de tijd en datum apart hebben zodat ik wat meer mogelijkheden om het te laten zien. Dat ik bij voorbeeld linksboven een datum heb staan en rechtsonder de tijd.
hoe doe ik dat?
ik hoop dat mijn bedoeling duidelijk is
Zie de vele datumfuncties op de mysql-site.
En wat snap je niet?
Je kan de datum/tijd in php én sql splitsen. Net wat je wilt.
Persoonlijk zou ik SQL kiezen, dus zoiets:

SELECT TIME(datetime) AS tijd, DATE(datetime) AD datum, ....


Je krijgt dan $row['tijd'] en $row['datum'].

Met strftime() kan je dan mooi de tijd/datum echoen.
Wellicht is dat sneller dan in php de tijd/datum splitsen, wat net zo makkelijk is. (wellicht sneller...).
Ik heb nu dit bij het toevoegen van het nieuws
<? $sql = "
INSERT INTO
news
(
id,
title,
writer,
datum,
bericht
)
VALUES
(
'',
'". mysql_real_escape_string( $_POST['title'] ) ."',
'". mysql_real_escape_string( $_POST['writer'] ) ."',
NOW(),
'". mysql_real_escape_string( $_POST['bericht'] ) ."'
)";
?>

Dus daar moet ik dan nog een tijd veld bij voegen dan?

En dan bij het ophalen die query van jou toe passen?
Je hebt een datetime veld in je eerste post, daarbij heeft Eddy al de oplossing gegeven voor het selecteren van gegevens.
Roland schreef op 04.11.2008 18:58
Dus daar moet ik dan nog een tijd veld bij voegen dan?

Nee, het ophalen doe je iets aangepaster. Zie de andere posts.
Oke dus die query laat ik voor wat het is.

Dit heb ik nu:
<?
$sql = "SELECT id, title, writer, bericht, datum FROM news ORDER BY datum DESC";
?>
En daar moet dit nog tussen dan?
TIME(datetime) AS tijd, DATE(datetime) AD datum,
DATE(datetime) AD datum,

die AD moet ook AS zijn!

<?php
 $sql = "SELECT id, title, writer, bericht, TIME(datum) AS tijd, DATE(datum) AS datum FROM news ORDER BY datum DESC";
?>


Dit zou hem moeten zijn volgens mij.
Vervolgens kun je de datum eruit halen met $row['datum'] wat je al had alleen nu is de tijd apart erbij gekomen en die kun je pakken met $row['tijd']

Reageren