Ik wil uit m'n database alle leden halen die zich de dag zelf geregistreerd hebben. Ik doe dit via deze query:
mysql_query("SELECT * FROM forum_users WHERE user_active = '1' && UNIX_TIMESTAMP(NOW()) = user_regdate")
Toch krijg ik niet het gewenste effect. Soms geeft het eens een resultaat, maar meestal duurt dit niet lang. Ik vermoed dat de uren/minuten ook meegerekend worden.
Kan iemand mij dus eens uitleggen hoe ik via die unix-time resultaten kan weergeven van een bepaalde datum ('vandaag' in dit geval)?
De query is naar mijn weten niet juist...
In jou geval staat er dan een kolom met de naam UNIX_TIMESTAMP(NOW()) en een record met user_regdate...
Waarschijnlijk moet je dit hebben:
mysql_query("SELECT * FROM forum_users WHERE user_active = 1 && user_regdate = UNIX_TIMESTAMP(NOW())");
ohjah: integers (getallen) hoeven niet tussen single-quotes... Geen '1', maar gewoon 1 Aldoende leert men...
Geen van de oplossingen blijkt te werken, jammer genoeg.
user_regdate is van het type int(11), en een voorbeeld van een waarde daarin is: "1110646828". Nu heb ik jullie code uitgeprobeerd maar het heeft geen effect. Ik snap het niet...
Wat je kan doen: je berekent de UNIX TIME voor vandaag, 00:00, en de huidige. En dan haal je alle rijen op waar die tijd kleiner is dan nu en hoger dan 00:00..? Kan omslachtig zijn, maar het zal toch werken
mysql_query("SELECT * FROM forum_users WHERE user_active = 1 AND CURDATE() = user_regdate");
- Cijfers buiten quotes!
- && is fout. Ook al kan het wel, AND is de juiste.
Ik ga ervanuit dat je user_regdate opslaat als DATE (dat is het formaat: YYYYMMDD). CURDATE() geeft de huidige datum weer. Ga nu niet zitten knoeien met TIMESTAMPS, maar gebruik deze oplossing gewoon.
@Henri: dat is het nu net. De datum wordt helemaal niet opgeslagen in het formaat YYYYMMDD, want dan had ik er ook geen last mee. Het script (phpBB) gebruikt unixtime, en in die reeks cijfers kan je de datum niet uithalen (zie het als een soort codering).
Aangezien het niet zo evident is om even het hele forum te herschrijven omdat ik DATE wil gebruiken ipv die UNIX_TIME had ik dus graag een oplossing gehad om die unixtime te vergelijken.
Ik ga de Murfy zijn idee eens uittesten. Ik hou jullie op de hoogte!