Autor | Zpráva | ||
---|---|---|---|
kn_h Profil |
#1 · Zasláno: 13. 1. 2009, 16:05:43
cau vsichni.
pls potreboval bych poradit, jestli jde treba kdyz chci nekomu dejme tomu na 500 minut zakazat psani na fora.. jestli jako jde normalne vyplnit formular, ale aby funkce INSERT byla jen na tech 500 minut nebo proste aby se to za 500 minut vymazalo z DTB jakoze skoncil trest. poradte pls. diky |
||
Casero Profil |
#2 · Zasláno: 13. 1. 2009, 16:09:18
kn_h
Vlož si tam čas začátku trestu a po uplynutí (kontrola v php) proveď delete. |
||
Tomasds Profil |
#3 · Zasláno: 13. 1. 2009, 16:10:17
A co takhle vložit IDosoby, trestOd, trestDo ?
A při každém vložení zároveň smazat tresty, kde trestDo > NOW() |
||
kn_h Profil |
#4 · Zasláno: 13. 1. 2009, 16:14:39
noo..:)
a to by neslo ze kdybych to includoval na hlavni a pri kazdym vstupu se to provadelo to trestDo.. a proste az by se tam kliklo a odpovidalo to, tak by se to smazalo? a v jakym formatu bych musel to trestDo ukladat? 2009-1-13 15:00:00? |
||
Tomasds Profil |
#5 · Zasláno: 13. 1. 2009, 16:25:58 · Upravil/a: Tomasds
se to provadelo to trestDo
Nevím co myslíš tím "se to provádělo". Jestli chceš někomu zakázat přístup, stačí při každém pokusu o otevření promáznout staré tresty a následně zjistit, jestli je v tabulce trestů dané IDosoby (COUNT()) O tom, jak ukládat do databáze čas, se psalo naposled před půlhodinou tady. Já používám unix timestamp. |
||
kn_h Profil |
#6 · Zasláno: 13. 1. 2009, 17:27:50
$dotaz = "SELECT id,datum_ukonceni,nick,iduz FROM bobri WHERE nick='{$_SESSION['uziv_jmeno']}'"; $query = mysql_query($dotaz); $fetch = mysql_fetch_row($query); $ukonceni = $fetch['datum_ukonceni']; $id = $fetch['id']; $now = NOW(); if ($ukonceni > $now){ $delete = MYSQL_QUERY("DELETE FROM bobri WHERE id='$id' and nick='{$_SESSION['uziv_jmeno']}' and iduz='{$_SESSION['id_uzivatele']}'") or die(mysql_error()); } nefunguje to now.. vsechno je normal ulozeny v dtb ale now nejde. halsi to tohle: Fatal error: Call to undefined function: now() in /3w/wz.cz/h/hynais-web/zrusit_bobra.php on line 8 |
||
Tomasds Profil |
#7 · Zasláno: 13. 1. 2009, 17:45:08
oceňuju snahu, ale zbytečně si to komplikuješ
$qry=mysql_query("DELETE FROM Tresty WHERE trestDo < NOW()"); $jetrest = mysql_result(mysql_query("SELECT COUNT(*) FROM Tresty where IDosoby=".$_SESSION["id_uzivatele"] ), 0); pak if $jetrest== 0 , zobrazíš supertajný obsah, jinak ne. syntaxi NOW v mysql si přesně nepamatuju. Určitě to dohledáš sám. |
||
kn_h Profil |
#8 · Zasláno: 13. 1. 2009, 17:47:50
Tomasds
a k cemu je teda to $jetrest? |
||
Joker Profil |
#9 · Zasláno: 13. 1. 2009, 17:55:23
Tomasds
Teoreticky by ani nebylo potřeba tresty mazat a jestli je trest by se pak zjistilo: "SELECT COUNT(*) FROM Tresty where trest_do > NOW() AND IDosoby=".$_SESSION["id_uzivatele"] Výhodu to má v tom, že by se držela i historie, tj. dalo by se pak dohledat, kdo, kdy a jak dlouhé tresty dostal (a třeba za 5 trestů dávat ban nebo něco takového). |
||
Časová prodleva: 15 let
|
0