om 24:00 uur database legen
ik zoek een script dat hij automatich om 24:00 uur de database leegt.
ik heb het zelf proberen te scripten maar dat lukte niet heeft iemand toevallig dat script liggen ?
Grtz,
je hoeft nooit je data te wissen, misschien dat je het later nog nodig hebt?
Natuurlijk kun je dit alles ook met cronjobs doen, maar ik durf te wedden dat de eerste optie veel beter is.
Ik zou het doen zoals Erwin al zegt, wil je het echt doorzetten is het niet zo ingewikkeld, gewoon droppen en weer opnieuw aanmaken.
kijk om 24:00 uur moet deze uitgevoerd worden:
2 Ik denk toch echt dat je cronjobs moet gebruiken...
Ik snap je verwoording ook niet helemaal. Is het de bedoeling dat je 24 uur moet wachten met stemmen? Voorbeeld:
ik stem om 23:59, mag ik dan om 00:00 weer stemmen of moet ik dan 24 uur wachten?
Gewijzigd op 01/01/1970 01:00:00 door Jurgen assaasas
als je 23:59 stemt dat je om 00:00 weer mag stemmen 24:00 was een foutje :P
Roy schreef op 10.06.2008 18:02:
nee echt nodig kijk bijv mensen stemmen 12 keer op iets en dan ze de volgende dag (dus na 24:00) weer kunnen stemmen maar dan moet er wel een
kijk om 24:00 uur moet deze uitgevoerd worden:
kijk om 24:00 uur moet deze uitgevoerd worden:
Dan sla je de stemmen op samen met de datetime wanneer ze stemden..
SELECT COUNT(*) AS aantal FROM stemmen WHERE user = :id AND tijd < INTERVAL(NOW(), 1 DAY)
als hier aantal meer dan 12 is, dan geef je melding dat ze maar 12 keer per 24u mogen stemmen...
(de SQL kan fouten bevatten, is even uit het hoofd gemaakt en niet getest)
dus gewoon selecteren van vandaag, of selecteren waar langer als 24 uur geleden gestemd is.
SELECT datum FROM votes WHERE DATE(datum) = CURRENT_DATE AND user_id =1;
Als het resultaat 0 is, mag er dus gestemd worden, als het 1 of meer is(wat ik me niet kan voorstellen) dan is er al gestemd (er is dus een rij getroffen met de SELECT) en geef je een melding
Het voordeel hiervan is dat je ook nog statistieken kan opvragen indien (ooit) nodig.
Quote:
Niet als je het over een database hebt. Het enige geldige formaat voor een datum is dan 'yyyy-mm-dd' dat je uiteraard in een DATE veld opslaat.is het zoiets als
Maar goed, volgens mij is het antwoord op je vraag al meerdere malen gegeven. Nu is het nog een kwestie van de gegeven advieze toepassen...
je kan toch ook zo doen
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<?php
if time("H/s/a") = "00/00/00"
{
mysql_query("UPDATE leden SET gestemt=0");
}else(
//anders
)
?>
if time("H/s/a") = "00/00/00"
{
mysql_query("UPDATE leden SET gestemt=0");
}else(
//anders
)
?>
of ben ik nou gek
Als je toevallig het formaat 'H:i:s' bedoelde, bedenk dan even hoe groot de kans is dat iemand op precies dat tijdstip jouw website bezoekt. Dat is namelijk het enige moment waarop het if-statement uitgevoerd zal worden. Dat is precies 1/86400, dus die kans in ontzettend klein.
Tenslotte snap ik niet ik niet dat je nog niets met de gegeven antwoorden gedaan hebt. Ik zal er even een paar quoten:
Quote:
elke keer op precies 00:00 dus? dan kun je toch gewoon kijken of de laatst gestemde datum gisteren niet vandaag was? Zoja dan kun je stemmen, zo nee melding oid geven.
Quote:
Dan sla je de stemmen op samen met de datetime wanneer ze stemden..
Quote:
Dan gooi je er een datum tijd stempel in. en dan:
SELECT datum FROM votes WHERE DATE(datum) = CURRENT_DATE AND user_id =1;
Als het resultaat 0 is, mag er dus gestemd worden
SELECT datum FROM votes WHERE DATE(datum) = CURRENT_DATE AND user_id =1;
Als het resultaat 0 is, mag er dus gestemd worden
Dit zijn stuk voor stuk verwijzingen naar een goede oplossing, maar daar wil je blijkbaar niets mee doen...
Gewijzigd op 01/01/1970 01:00:00 door Joren de Wit
het gaat niet per persoon maar elke dag 1 keer dan heeft dus user_id =1; geen definitie
ver vraag ik wat en krijg een vaage code terug
ik ben ook maar een beginner
dan haal je dat toch weg?? zo moeilijk is dat niet, selecteren en daarna DELETE...
Roy schreef op 10.06.2008 19:50:
nee jullie snappen mij niet -.-
het gaat niet per persoon maar elke dag 1 keer dan heeft dus user_id =1; geen definitie
ver vraag ik wat en krijg een vaage code terug
ik ben ook maar een beginner
het gaat niet per persoon maar elke dag 1 keer dan heeft dus user_id =1; geen definitie
ver vraag ik wat en krijg een vaage code terug
ik ben ook maar een beginner
Dit komt omdat iedereen hier jou probeert te helpen op de juiste manier.Het weggooien van data is bijna nooit de juiste manier en in jou voorbeeld wil je geen data weggooien
wat moet er bij WHERE DATE(datum) dit ?
WHERE DATE(00/00/00)
en dan moet er nog een ding zijn die de datum add
en moet de query er dan alsvolgt uitzien ?
Ik gaf je enkel een voorbeeld in mijn voorbeeld had ik dit in gedachte als datamodel.
votes
-----------
vote_id
user_id
datum
vote (aantal of wat dan ook)
Hoe ziet jou database er uit?
Gewijzigd op 01/01/1970 01:00:00 door Jurgen assaasas
PHP Beginnershandleiding
SQL Beginnershandleiding
Ik krijg het idee dat je eigenlijk geen idee hebt hoe je dit nu aan zou moeten pakken. Ook de adviezen die je gegeven worden klinken je blijkbaar heel vaag in de oren, terwijl ze toch echt vrij duidelijk zijn (mits je een klein beetje weet waar je mee bezig bent).
Lees dus bovenstaande tutorials eens door, dan heb je al wat meer van de basiskennis van PHP en SQL te pakken...
SQL Beginnershandleiding
Ik krijg het idee dat je eigenlijk geen idee hebt hoe je dit nu aan zou moeten pakken. Ook de adviezen die je gegeven worden klinken je blijkbaar heel vaag in de oren, terwijl ze toch echt vrij duidelijk zijn (mits je een klein beetje weet waar je mee bezig bent).
Lees dus bovenstaande tutorials eens door, dan heb je al wat meer van de basiskennis van PHP en SQL te pakken...