Nadat ik nu al 3 uur bezig ben met te zoeken om mijn datum als DD-MM-JJJJ en als 2e optie als DD Maand volledig uitgeschreven JJJJ
Hieronder mijn script:
<?
$selecteer = mysql_query("SELECT * FROM nieuws ORDER BY nieuwsDatum LIMIT 1") or die(mysql_error());
while($obj = mysql_fetch_object($selecteer)){
echo"<font size='5'>Meest recent nieuwsbericht</font><font size='2'> was op datum van $obj->nieuwsDatum <br> <b><u>$obj->nieuwsTitel</u></b></font><br>$obj->nieuwsBericht <br><br>";
}
?>
$obj->nieuwsDatum moet ik dus als DD-MM-JJJJ en als DD Maand volledig uitgeschreven JJJJ kunnen schrijven. Ik heb gegoogled en al vele dingen geprobeert , maar telkens krijg ik te lezen dat er een fout zit in de MySQL syntax... Raar , maar weet iemand hoe ik dit als hierboven vermeld kan weergeven?
@Sickness: het is nooit slim om een alias dezelfde naam te geven als een bestaande kolomnaam. Dat zorgt er onder andere voor dat je in die query dus niet meer op de betreffende kolomnaam kunt sorteren...
Maar hij sorteert op nieuwsDatum... en op deze manier hoeft hij niets anders aan te roepen in zijn script ;) Dat is bewust gedaan.
Echter ik had er niet eens bij nagedacht dat je dan niet meer op kan sorteren. Wist het stiekem ook niet eens, maar had het wel kunnen weten als ik eraan had gedacht :P
maar dat betekend ook dat nieuwsDatum de kolom is die eruit moet komen. Blanche heeft gelijk, er zijn meer redenen om een andere naam op te geven:
- Je kan de gewone datum notatie nog nodig hebben/ handig kunnen gebruiken in verschillende gevallen, bijv:
- Wanneer je tevens het andere nieuws van eenzelfde dag wilt hebben als je een nieuwsbericht aanklikt. (de headlines zullen we maar zeggen)
Daarnaast is voor jou (of iemand anders die het script gebruikt/ aan wil passen, niet al in het script duidelijk waarvoor je die kolom gebruikt. Als je nu in je script ergens 'echo $row['datum']' hebt staan wordt daar ook verwacht dat je de datum rechtstreeks uit de tabel weergeeft. Maar dit is een opgemaakte datum, dus je kan dan beter $row['view_date'] (datum opgemaakt voor het bekijken) van maken, dat schept al veel meer duidelijkheid.
$selecteer = mysql_query("SELECT DATE_FORMAT(datum, '%d-%m-%Y') as datum, * FROM nieuws ORDER BY nieuwsDatum LIMIT 1") or die(mysql_error());
voila
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '* FROM nieuws ORDER BY nieuwsDatum LIMIT 1' at line 1
Neej hoor, dat zou niet uit mogen maken, er staat ', *'
@Joren
probeer dit eens:
$selecteer = mysql_query("SELECT *, DATE_FORMAT(datum, '%d-%m-%Y') as datum_nl FROM nieuws ORDER BY nieuwsDatum LIMIT 1") or die(mysql_error());
iChris schreef op 24.10.2008 11:58
je heb een komma na die date_format. Dat geeft die fout ;)
Zag die * niet...
Moet die * er dan niet voor? Dus SELECT *, date_format() FROM ? Edit: Damn, te snel bewerkt, te kort gelezen. Jij had dit ook al geplaatst.
Geeft niets kan niet alles weten en zien he... en eerlijk is eerlijk ik zag die * eerst ook niet, kwam hem tegen toen ik 't stukje ff in m'n editor plakte.
Neej hoor, dat zou niet uit mogen maken, er staat ', *'
@Joren
probeer dit eens:
$selecteer = mysql_query("SELECT *, DATE_FORMAT(datum, '%d-%m-%Y') as datum_nl FROM nieuws ORDER BY nieuwsDatum LIMIT 1") or die(mysql_error());
[quote='iChris schreef op 24.10.2008 11:58']je heb een komma na die date_format. Dat geeft die fout ;)
Zag die * niet...
Moet die * er dan niet voor? Dus SELECT *, date_format() FROM ? Edit: Damn, te snel bewerkt, te kort gelezen. Jij had dit ook al geplaatst.
Geeft niets kan niet alles weten en zien he... en eerlijk is eerlijk ik zag die * eerst ook niet, kwam hem tegen toen ik 't stukje ff in m'n editor plakte.[/quote]Dankzij dit stukje werkte het ! Bedankt aan iedereen die me heeft voortgeholpen :)