Autor Zpráva
Sanjay
Profil
Dobrý den,
potřeboval bych poradit jak napsat php kód, který bude každou půlnoc odčitat 0.25 v MySQL databazi z tabulky vampire u všech řádku na sloupku krev. Pokud čislo dosáhne 0 nebude odčítat u daného řádku ale u zbitku ano. Pomohl bi mi prosim někdo z tímto kódem vúbec nevím jak na to.
Předem děkuji za všechny rady a nápady.

Z pozdravem Sanjay.
David1256
Profil
Zkus Cron. Přes něj spusťíš ten script přesně kdy potřebuješ. Kód by moh vypadat zhruba takto, jen pro inspiraci a velmi stručně:
$vsechnyradky=dotaz který ti zjistí počet rádků v tabulce vampire;
for($i=0;$i=$vsechnyradky;$i++)
{$krev=dotaz který vybere krev z tabulky vampire;
if(krev!=0)
{
krev=krev-0.25;
}
}
Sanjay
Profil
Ten tzv. Cron funguje jak ?
l564
Profil
Sanjay:
Ten tzv. Cron funguje jak ?

Máš ho vůbec na hostingu?
Máš interval např.: 5minut a ten cron bez přítomnosti uživatele spouští požadovaný script v daném intervalu.
David1256
Profil
Je to taková věcička je to např. na ic.cz. Tam si přes rozhraní zadáš, kdy chceš a jaký script chceš spouštět.
pcmanik
Profil
David1256:
Zaujimave, ze o tom ze je cron na ic.cz som este nepocul, a ani sa stym nechvalia na ich stranke...
Sanjay
Profil
No tak pokud je na ic.cz tak na hostingu je jenze casem budu kupovat placeny hosting a nevim jestli tam bude
David1256
Profil
Na úvodní stránce to sice nemají, ale věř mi, že v administraci ho mají.
l564
Profil
No ono je to skoro všude na placeném hostingu
David1256:
Na úvodní ho nemají, ale pak pod pokličkou (co nabízí) to tam musí být vypsané.
David1256
Profil
Tak si pořiď takový hosting, kde cron bude. Většina placených hostingů by ale cron měla mít.
Sanjay
Profil
Kde to najdu na IC.CZ ? nemohu to tam najít.
David1256
Profil
Až v administraci pod IC tools myslím.
Sanjay
Profil
ajo uz to mam diky
Sanjay
Profil
Díky všem za rady

jen ještě jedna otazka

jaký je MySQL dotaz ke zjištění počtu řádku v tabulce?

a jaky je dotaz který vybere krev z tabulky vampire
pcmanik
Profil
Sanjay:
To by si asi mal vedet ty nie, ked si si tu tabulku navrhoval...
Ale asi to bude nieco v zmysle
SELECT krev FROM vampire
Sanjay
Profil
ok diky ja už vím :D sorry
Bubák
Profil
Bez CRONu to jde tak, že při prvním přístupu po půlnoci provedeš tebou požadovanou akci.
Sanjay
Profil
Diky taky napad jenze to nemam jistotu ze se to provede pokaždé
okolojdouci
Profil *
Sanjay:
to nemam jistotu ze se to provede pokaždé

Bylo to tady už několikrát řešeno.
Ty ve skutečnosti nepotřebuješ tu akci provést o půlnoci. Potřebuješ si provést přesně v intervalu mezi půlnocí a prvním zobrazením toho čísla komukoliv. Takže stačí, když při každém otevření stránky, na které se ta hodnota má jakkoliv projevit, ověříš, jestli ta akce od půlnoci už proběhla. Pokud ne, provedeš ji.

A určitě bude lepší udělat to takhle, než v cyklu:
UPDATE vampire SET krev = krev - 0.25 WHERE krev > 0

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0