Fórum Root.cz

Hlavní témata => Server => Téma založeno: Pavellll 09. 10. 2016, 19:19:30

Název: Pravidelný přepis hodnoty v databázi
Přispěvatel: Pavellll 09. 10. 2016, 19:19:30
Ahoj, potřebuji pomoct. Chtěl bych udělat to, že  se nějaké číslo v MySQL databázi resetuje každý den na 0. Nevíte, jak na to ? Děkuji
Název: Re:Pomoc s PHP
Přispěvatel: Kit 09. 10. 2016, 19:33:10
Nejlépe tak, že nám povíš, k čemu to potřebuješ a my ti to rozmluvíme.
Název: Re:Pomoc s PHP
Přispěvatel: Jenda 09. 10. 2016, 20:14:13
Dáš do cronu PHP skript, který se k DB připojí a udělá UPDATE.
Název: Re:Pomoc s PHP
Přispěvatel: to_je_jedno 09. 10. 2016, 20:24:58
Tady prikladam ukazku kodu z jednoho projektu ktery mam na Drupalu. Funkce variable_set() a variable_get() si nahrad necim jinym - uloz/nacti tu hodnotu ze souboru, z db, odkud chces..

Kód: [Vybrat]
function HOOK_cron() {
  if (variable_get('HOOK_cron_last') == date(DATE_FORMAT_DATE)) {
    return;
  }
  // tady si udelas reset pocitadla
  variable_set('HOOK_cron_last', date(DATE_FORMAT_DATE));
}

Pokud ukazku nedokazes prevest do sveho kodu tak to vzdej a venuj se nejaky humanitni sracce.
Název: Re:Pomoc s PHP
Přispěvatel: Trupik 09. 10. 2016, 20:40:30
Kód: [Vybrat]
man mysql
man cron
man crontab
man 5 crontab

Kód: [Vybrat]
crontab -e
Kód: [Vybrat]
#min hr day month dow cmd
0 0 * * * echo "UPDATE foo SET bar=0 WHERE whatever" | mysql dbname
Název: Re:Pomoc s PHP
Přispěvatel: Vladimír Drgoňa 09. 10. 2016, 21:21:32
Takéto niečo zvládne samotný mysql server, viac o tom je na https://dev.mysql.com/doc/refman/5.6/en/events-overview.html (https://dev.mysql.com/doc/refman/5.6/en/events-overview.html). Samozrejme musí byť mysql server nakonfigurovaný s podporou event shedulera.
Název: Re:Pomoc s PHP
Přispěvatel: e3k 09. 10. 2016, 23:32:14
Kód: [Vybrat]
man mysql
man cron
man crontab
man 5 crontab

Kód: [Vybrat]
crontab -e
Kód: [Vybrat]
#min hr day month dow cmd
0 0 * * * echo "UPDATE foo SET bar=0 WHERE whatever" | mysql dbname
aneb naseduluj si to v kronu!