[php][sql]newsscript - plaatsing van datum raar

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • gitaarwerk
  • Registratie: Augustus 2001
  • Niet online

gitaarwerk

Plays piano,…

Topicstarter
Ik ben gister begonnen aan een nieuwsscript, de frontpage is al af grotendeels maar ik blijf haken op de volgende fout..

er hebben wat mensen me al geholpen maar komen er ook niet echt uit.
tijd voor wat professionelere hulp :Y) (nee niet de psychiater, die wil me niet meer 8)7 hehe)

ok

het niewsscript wordt ongeveer hetzelfde als de mainpage van t.net ...afgezaagd ja, en ik ga later wel wat aan de layout doen.

nu heb ik het volgende probleem.

Ik verdeel het nieuws onder in "vandaag" "gister" "eergister"
net zoals t.net wordt alleen de "vandaag" weergegeven.

met behulp van de unix timestamp en zelfgemaakt tijden van de dagen verdeel ik ze onder zodat ieder stukje de juiste infomatie toe krijgt.

hier maak ik de datum / tijd tussen waar het nieuws gelzen moet worden
PHP:
1
2
$today  = mktime (0, 0, 0, date("m"),     date("d") , date("Y"));
$yesterday  = mktime (0, 0, 0, date("m"),     date("d") - 1, date("Y"));


hier is de query die ik opvraag om het nieuws hiertussen te lezen
PHP:
1
2
$query2 = "SELECT * FROM news where dateline < '$today AND dateline > 
$yesterday' ORDER BY dateline ASC";


wat doe ik nou fout? :?

[ Voor 8% gewijzigd door gitaarwerk op 17-03-2003 11:23 ]

Ontwikkelaar van NPM library Gleamy


Acties:
  • 0 Henk 'm!

  • whoami
  • Registratie: December 2000
  • Laatst online: 23:07
Wat doe je nu fout?

Geen idee. Als je nu eens zegt wat er fout gaat ofzo....

https://fgheysels.github.io/


Acties:
  • 0 Henk 'm!

  • sjroorda
  • Registratie: December 2001
  • Laatst online: 12-09 16:32
Kijk eens naar de quotes in je query: je opent '$today, maar sluit hem pas weer af na $yesterday'

Acties:
  • 0 Henk 'm!

  • gitaarwerk
  • Registratie: Augustus 2001
  • Niet online

gitaarwerk

Plays piano,…

Topicstarter
whoami schreef op 17 maart 2003 @ 11:28:
Wat doe je nu fout?

Geen idee. Als je nu eens zegt wat er fout gaat ofzo....
had ik dat niet verteld? :? sorry
dat dacht ik..

ok.. hij zet de "vandaag' geposte berichten in de database, maar leest ze niet op deze dag uit, sterker nog, deze laat ie zitten..

de geposte "gisteren" en "eergisteren" leest ie uit onder "vandaag"

daarbij komt ook nog dat ie "eergisteren" onder het kopje "gister" plaatst
(eergister staat niet boven bij de query maar is logisch dat er d -2 komt te staan )
sjroorda schreef op 17 maart 2003 @ 11:32:
Kijk eens naar de quotes in je query: je opent '$today, maar sluit hem pas weer af na $yesterday'
en dat ga ik nu even doen :)

[ Voor 6% gewijzigd door gitaarwerk op 17-03-2003 11:36 ]

Ontwikkelaar van NPM library Gleamy


Acties:
  • 0 Henk 'm!

  • gitaarwerk
  • Registratie: Augustus 2001
  • Niet online

gitaarwerk

Plays piano,…

Topicstarter
edit:
ow.. had ook ff kunnen editten |:(

PHP:
1
2
$query2 = "SELECT * FROM news WHERE dateline < '$today' AND dateline > 
'$yesterday' ORDER BY dateline DESC";

hmz.. je bedoelt dus zoiets meer sjroorda ?
deze werkt niet.. hier komt er helemaal geen output..

zelf denk ik (maar wie ben ik :X ) dat de 1e query gewoon goed was (kwam bijna letterlijk van php.net )

[ Voor 22% gewijzigd door gitaarwerk op 17-03-2003 11:44 ]

Ontwikkelaar van NPM library Gleamy


Acties:
  • 0 Henk 'm!

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 12-09 10:54

Janoz

Moderator Devschuur®

!litemod

MySQL heeft zelf ook datum functies. Het is in principe wel beter om dit gewoon daar mysql af te laten handelen (Je hebt de data natuurlijk in een datum veld gestopt he :) )

Dan kun je gewoon iets als:
SELECT velden FROM news WHERE DATE(dateline) = DATE(NOW())
Gaat er om dat je uit de datum + tijd alleen de datum met elkaar vergelijkt.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Acties:
  • 0 Henk 'm!

  • gitaarwerk
  • Registratie: Augustus 2001
  • Niet online

gitaarwerk

Plays piano,…

Topicstarter
eeh.. eens kijken :)
ik gebruik om eerlijk te zijn niet de datum uit mysql *bloos*
ik heb een int 10 waarde genomen, dat komt omdat ik redelijk veel manipuleer (ik heb nog geen sql databases op school gehad dus ik kan behoorlijk wat fout doen)

in princiepe moet ik de velden niet echt vergelijken .. maar meer een selectie tussen 2 data doen.. waarin alleen de dag verschilt.. vandaar dat ik aparte tijden zelf maak
dus een "=" zal ik niet kunnen gebruiken ook :)

Ontwikkelaar van NPM library Gleamy


Acties:
  • 0 Henk 'm!

  • sjroorda
  • Registratie: December 2001
  • Laatst online: 12-09 16:32
Twee dingen:

Gebruik eens $today = time(), is stuk netter :).

Stel dat ik nu je query run, krijg ik geen berichten van vandaag, omdat hij berichten pakt die eerder gepost zijn dan 12 uur afgelopen nacht. Daar heb je geen last meer van als je time() gebruikt.

En volgens mij zou die query het dan wel moeten doen, ziet er wel goed uit iig... alleen zou ik toch nog eens naar die quotes kijken, want nu gaat dat niet goed! Eigenlijk zijn er helemaal geen quotes nodig omdat je met ints werkt.

Acties:
  • 0 Henk 'm!

  • gitaarwerk
  • Registratie: Augustus 2001
  • Niet online

gitaarwerk

Plays piano,…

Topicstarter
ik heb time(); overwogen , en heb daar eerst mee gewerkt.. maar ik denk als je de huidige tijd pakt, tot het vorige dag, dan krijg je minder te zien dus

stel : iemand post om 0:01 snachts op maandag dan is de datum getal lager dan dat je de huidige tijd zal opvragen om te vergelijken..dus dat leek mij juist niet echt netter...
of ik kan nu fout denken :?

die quotes ga ik er even uithalen..dan zie ik wat het gaat doen :)

Ontwikkelaar van NPM library Gleamy


Acties:
  • 0 Henk 'm!

  • sjroorda
  • Registratie: December 2001
  • Laatst online: 12-09 16:32
Als jij berichten van vandaag wil hebben, dan moet je niet gaan kijken naar berichten met de tijd < (12 uur afgelopen nacht)...

Acties:
  • 0 Henk 'm!

  • gitaarwerk
  • Registratie: Augustus 2001
  • Niet online

gitaarwerk

Plays piano,…

Topicstarter
ok dan zit ik fout te denken :)
hehe..
eerst ga ik even sokken en trui aan doen en dan ga ik naar de winkel om maar weer 10 pakken senseo te halen.. heb een week zonder koffie gezeten, wellicht beinvloed dat het wat :7 (en men webserver is tijdelijk nu down :( even wachten todat ie weer reset is )

Ontwikkelaar van NPM library Gleamy


Acties:
  • 0 Henk 'm!

  • gitaarwerk
  • Registratie: Augustus 2001
  • Niet online

gitaarwerk

Plays piano,…

Topicstarter
even melden dat het probleem is opgelost..

heel vreemd..
ik heb de datum variabele ($today en &yesterday) omgedraaid en ook even daarbij de < en > tekens omgedraaid..
nu werkt het wel 8)7
nagoed..

even daarbij nog iedereen bedanken!
tnx _/\o_

Ontwikkelaar van NPM library Gleamy

Pagina: 1