» Poradna » Programy

Automaticke odhlasenie

Odpovědět  |  Zobrazit bez stromu  |  Upozornit redakci  |  nových odpovědí: 10/10
 |   |   |  [195.78.44.---]

Zdrawim,

ako urobit automaticke vymazanie zaznamu z DB MySQL pomocou PHP, ak cas ulozeny v stlpci last (vo formate Y-m-d H:i:s) je o 30 minut nizsi ako aktualny.

mysql_query ("DELETE FROM tabulka WHERE last ... ");

Dakujem za pomoc

Odpovědi na otázku

 |   |   |  [147.229.209.---]
 |   |   |  [195.78.44.---]

ale toto vymazanie by sa malo vykonavat vzdy po nacitani stranky.... takze cron je uplne k nicomu

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |   |  [195.78.44.---]

dalo by sa to urobit takto ale newiem ako odpocitat od aktualneho datumu a casu 30 minut


mysql_query ("DELETE FROM tabulka WHERE last <= '".$aktualnycas-30min."'");

prosim ako mam teda dostat tu premmenu ??? dakym jednoduchym sposobom

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |   |  [195.78.44.---]

myslim ze takto by to mohlo ist ale newiem ako teraz z $aktual dostat datum a cas vo formate datetime (Y-m-d H:i:s)

$aktual = time() - 1800; // 1800 je 30 minut

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |   |  [217.64.5.---]

no skusil by som to obchvatom. Vlozit do tabulky popri datumu aj udaj time() a potom jednoducho pouzit time()-1800

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |   |  [84.42.163.---]

mrkni v php na mktime

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |   |  [195.78.44.---]

takze ani cron ani mktime netraba na jednoduche vyriesenie tohoto problemu.

riesenie:

$aktual = time() - 1800;
$aktual = date("Y-m-d H:i:s", $aktual);
mysql_query ("DELETE FROM tabulka WHERE last <= '".$aktual."'");

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |   |  [217.64.5.---]

pokial nechces zobrazovat datum a cas, vobec by som tam nedaval tento udaj a ak, tak len ako samostatnu polozku.
mazal by som podla polozky kde mam ulezene time(). Polozka last by bola cislo.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |   |  [195.78.44.---]

nechcem zobrazovat cas... ten tam len sluzi ako kontrola ci je clovek na strankach aktivny... Mozem vediet preco by som tam nemal davat tento udaj?? Som len zaciatocnik, mozno tomu tak nechapem ako ty.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |   |  [84.47.78.---]

ked chces mazat zaznamy na zaklade nejakeho kriteria, v nasom pripade time()-1800, tak je najlepšie pri prihlaseni vlozit do polozky last (datovy typ int) hodnotu time(). To je skupima cisiel, teda sekundy. Neviem ci od pociatku sveta alebo od polnoci. To si najdi v googli. Ak su to sekundy od pociatku sveta, tak je to bez problemu. Ak nie, tak tam este daj polozku s datumom vo formate date("Y-m-d"). Musis si ale pozriet v akom formate ti mysql uklada datum. Mal by to byt datovy typ date v tvare RRRR-MM-DD. No a mazes od time()-1800. Mozes pridat este podmienku pre dany den

asi tak :bla, bla where last <= time()-1800 and prihlasenie = date("Y-m-d") ;
pricom prihlasenie je nazov polozky s datumom .

Souhlasím  |  Nesouhlasím  |  Odpovědět

Související témata: Last



Určitě si přečtěte


USB-C je konektor, který by chtěl vládnout všem

USB-C je konektor, který by chtěl vládnout všem

** USB-C se tváří jako nejuniverzálnější konektor všech dob ** Pravda je to však jen z části ** Při výběru příslušenství s USB-C dobře studujte parametry

20.  1.  2018 | Stanislav Janů | 59

Přechod z Windows na macOS: Co vás čeká a nemine

Přechod z Windows na macOS: Co vás čeká a nemine

** 5 kroků, které vás čekají, když se rozhodnete přejít z Windows na počítač značky Apple se systémem macOS ** macOS umí přenést data z počítače s Windows ** Při přechodu si budete zvykat na nové funkce a chování systému

17.  1.  2018 | Stanislav Janů | 148


Aktuální číslo časopisu Computer

Zachraňte nefunkční Windows

Jak nakupovat a prodávat kryptoměny

Otestovali jsme konvertibilní notebooky

Velký test 14 herních myší