Autor | Zpráva | ||
---|---|---|---|
Sanjay Profil |
#1 · Zasláno: 20. 5. 2011, 20:42:01
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 |
#2 · Zasláno: 20. 5. 2011, 20:54:01
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 |
#3 · Zasláno: 20. 5. 2011, 21:01:03
Ten tzv. Cron funguje jak ?
|
||
l564 Profil |
#4 · Zasláno: 20. 5. 2011, 21:06:34
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 |
#5 · Zasláno: 20. 5. 2011, 21:07:02
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 |
#6 · Zasláno: 20. 5. 2011, 21:08:15
David1256:
Zaujimave, ze o tom ze je cron na ic.cz som este nepocul, a ani sa stym nechvalia na ich stranke... |
||
Sanjay Profil |
#7 · Zasláno: 20. 5. 2011, 21:09:14
No tak pokud je na ic.cz tak na hostingu je jenze casem budu kupovat placeny hosting a nevim jestli tam bude
|
||
David1256 Profil |
#8 · Zasláno: 20. 5. 2011, 21:10:57
Na úvodní stránce to sice nemají, ale věř mi, že v administraci ho mají.
|
||
l564 Profil |
#9 · Zasláno: 20. 5. 2011, 21:10:59 · Upravil/a: l564
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 |
#10 · Zasláno: 20. 5. 2011, 21:11:39
Tak si pořiď takový hosting, kde cron bude. Většina placených hostingů by ale cron měla mít.
|
||
Sanjay Profil |
#11 · Zasláno: 20. 5. 2011, 21:17:48
Kde to najdu na IC.CZ ? nemohu to tam najít.
|
||
David1256 Profil |
#12 · Zasláno: 20. 5. 2011, 21:18:08
Až v administraci pod IC tools myslím.
|
||
Sanjay Profil |
#13 · Zasláno: 20. 5. 2011, 21:20:51
ajo uz to mam diky
|
||
Sanjay Profil |
#14 · Zasláno: 20. 5. 2011, 21:23:35
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 |
#15 · Zasláno: 20. 5. 2011, 21:29:17
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 |
#16 · Zasláno: 20. 5. 2011, 21:30:35
ok diky ja už vím :D sorry
|
||
Bubák Profil |
#17 · Zasláno: 20. 5. 2011, 21:32:15
Bez CRONu to jde tak, že při prvním přístupu po půlnoci provedeš tebou požadovanou akci.
|
||
Sanjay Profil |
#18 · Zasláno: 20. 5. 2011, 21:36:36
Diky taky napad jenze to nemam jistotu ze se to provede pokaždé
|
||
okolojdouci Profil * |
#19 · Zasláno: 21. 5. 2011, 04:14:43
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 |
||
Časová prodleva: 13 let
|
0