Díky, ale co to odpočítávání? A lze nastavit, aby tam to odpočítávání bylo i třeba po zavření stránky a kdybych přišel třeba za hodinu, furt by to odpočítávalo?
Odesláno pomocí super appky ze super telefonu.
PhP čas a datum - odčítání
- Kim Spotcom
- Level 3
- Příspěvky: 580
- Registrován: leden 14
- Pohlaví:
- Stav:
Offline
Re: PhP čas a datum - odčítání
Hmm, tohle není jednoduchá věc. Šel bych na to, že bych uživateli v session při zadání hodnoty uložil counter. Dál je otázka, co má být akcí po odzvonení timeru, resp. jak to má být časově přesné. Protože 1 věc je udělat cronem periodickou kontrolu odzvoněných counterů, ale ten cron má nějakou časovou granularitu. Má li jít realtime věc, pak je to složitější a neumím poradit, zřejmě PHP na to stačit nebude. Je potřeba, aby na serveru běžel nějaký daemon (což může být i součást toho skriptu, bude li naspaný v ruby/node.js), a došlo by i ke změně algoritmu, už by se záznamy teoreticky neukládaly někam do DB, ale /ještě/ by se ty záznamy regsitrovaly jako eventy do toho deamonu)...
Ano, jde to, ID uživatele bude uloženo v session (musí být nastaveno, tak, aby platila i po zavření browseru). Dál je důležité si uvědomit, že uživateli se bude posílat pouze absolutní čas, kdy má k hodnotě dojít, což je jediná smysluplná hodnota , pmocí JS lze vykrestli tikající hodinky atd...
Ano, jde to, ID uživatele bude uloženo v session (musí být nastaveno, tak, aby platila i po zavření browseru). Dál je důležité si uvědomit, že uživateli se bude posílat pouze absolutní čas, kdy má k hodnotě dojít, což je jediná smysluplná hodnota , pmocí JS lze vykrestli tikající hodinky atd...
Nejlepší obrana proti trollům je nereagova na ně.
- iTerminator
- Level 1.5
- Příspěvky: 132
- Registrován: únor 14
- Pohlaví:
- Stav:
Offline
Re: PhP čas a datum - odčítání
Nedělej to složitější.
Na php tedy nemusí ani dojít, dojde ale při insertu do DB. Uživatel zadá datum, to se převede na sekundy a přes ajax se to pod jeho IP uloží do DB, uloží se ten rozdíl těch dat v sekundách, což je vlastně to, kolik zbývá. A pokud příjde na stránku, tak to zkusí najít jeho IP v DB, pokud najde, tak to načte ten čas a ten se bude odpočítávat, každou setinu uložíš do DB aktuální odpočet, takže to bude více méně naprosto přesný.
Na php tedy nemusí ani dojít, dojde ale při insertu do DB. Uživatel zadá datum, to se převede na sekundy a přes ajax se to pod jeho IP uloží do DB, uloží se ten rozdíl těch dat v sekundách, což je vlastně to, kolik zbývá. A pokud příjde na stránku, tak to zkusí najít jeho IP v DB, pokud najde, tak to načte ten čas a ten se bude odpočítávat, každou setinu uložíš do DB aktuální odpočet, takže to bude více méně naprosto přesný.
... na co jsem se v Nette podíval a co by většina programátorů napsala špatně, to bylo správně, vzorově. - Jakub Vrána
Do SZ mi píšete zbytečně, neboť problémy řeším pouze v tématech.
Za radu je slušné poděkovat.
Važ si rady, práci za tebe neudělám.
Používej Google!
Do SZ mi píšete zbytečně, neboť problémy řeším pouze v tématech.
Za radu je slušné poděkovat.
Važ si rady, práci za tebe neudělám.
Používej Google!
- Kim Spotcom
- Level 3
- Příspěvky: 580
- Registrován: leden 14
- Pohlaví:
- Stav:
Offline
Re: PhP čas a datum - odčítání
Taky řešení... to už je víceméně jedno, jesli je uživatel identifikován pomocí IP nebo Session, ale pokud by tam v případě IP neby žádná kontroloa, pak by to bylo semeniště pro XSS A CSRF útoky, naštěstí jsou tyto nebezpeší už dlouhá léta popsána,ale je potřeba programovat tak, aby byla tato chyba automaticky vyloučena a né na každém místě si vzpomínat na XSS ochranu. A ukládat relativní časy je dost riskatní hra.
Jak se provede "každou setinu"?
Záleží na té požadovéné časové granularitě, ne vždy je potřeba realtime event handling, ale stačí triggernout kontrolu cronem nebo dokonce i jen při každém requestu...
Jak se provede "každou setinu"?
Záleží na té požadovéné časové granularitě, ne vždy je potřeba realtime event handling, ale stačí triggernout kontrolu cronem nebo dokonce i jen při každém requestu...
Nejlepší obrana proti trollům je nereagova na ně.
- iTerminator
- Level 1.5
- Příspěvky: 132
- Registrován: únor 14
- Pohlaví:
- Stav:
Offline
Re: PhP čas a datum - odčítání
Riskantní hra? Další profík na pc-helpu.
... na co jsem se v Nette podíval a co by většina programátorů napsala špatně, to bylo správně, vzorově. - Jakub Vrána
Do SZ mi píšete zbytečně, neboť problémy řeším pouze v tématech.
Za radu je slušné poděkovat.
Važ si rady, práci za tebe neudělám.
Používej Google!
Do SZ mi píšete zbytečně, neboť problémy řeším pouze v tématech.
Za radu je slušné poděkovat.
Važ si rady, práci za tebe neudělám.
Používej Google!
Re: PhP čas a datum - odčítání
Na netu jsem našel dotaz, který je stejný jako ten můj. Je u něj napsáno vyřešeno, ale moc ho nechápu. Mohla by mi nějaká hodná duše dát prosím ty skripty z té stránky do jednoho? Díky. http://diskuse.jakpsatweb.cz/?action=vt ... pic=115601
edit: Zkusim to s tou databází a dám vědět, jak to dopadlo!
Odesláno pomocí super appky ze super telefonu.
edit: Zkusim to s tou databází a dám vědět, jak to dopadlo!
Odesláno pomocí super appky ze super telefonu.
- CZechBoY
- Master Level 9.5
- Příspěvky: 8813
- Registrován: srpen 08
- Bydliště: Brno
- Pohlaví:
- Stav:
Offline
- Kontakt:
Re: PhP čas a datum - odčítání
IP a session že je jedno? No to asi těžko... Můžeš mít klidně 50 kompů s jednou IP, na kterých pojedou 4 prohlížeče zároveň. Každej prohlížeč by měl mít svojí session.
Konečně jsme se dostali (po 4 stránkách sra*** - ničeho) k zadání problému. hip hip hurá.
Takže klikneš na tlačítko odpracovat 8 hodin, do databáze se zapíše čas time() + 8*60*60 jako koncový.
Jestli chceš i odpočet tak si přidej javascript funkci (někde jsem ji tu na fóru nedávno psal).
Výplatu potom můžeš výplacet při přihlášení uživatele, nebo jestli je potřeba ji zapsat hned tak při nějaké jiné akci. Myslím, že v gladiatusu se dalo o tý peníze rovnou bojovat, tzn. já makám a nějakej zmetek mě napadne a jsem zas bez peněz. Tohle vyřešili tak, že se peníze z výplaty dávaly do inventáře a ažpotom sám hráč si je vybral do peněženky
Nějaké otázky? Ne, nebudu to za tebe celý psát.
Konečně jsme se dostali (po 4 stránkách sra*** - ničeho) k zadání problému. hip hip hurá.
Takže klikneš na tlačítko odpracovat 8 hodin, do databáze se zapíše čas time() + 8*60*60 jako koncový.
Jestli chceš i odpočet tak si přidej javascript funkci (někde jsem ji tu na fóru nedávno psal).
Výplatu potom můžeš výplacet při přihlášení uživatele, nebo jestli je potřeba ji zapsat hned tak při nějaké jiné akci. Myslím, že v gladiatusu se dalo o tý peníze rovnou bojovat, tzn. já makám a nějakej zmetek mě napadne a jsem zas bez peněz. Tohle vyřešili tak, že se peníze z výplaty dávaly do inventáře a ažpotom sám hráč si je vybral do peněženky
Nějaké otázky? Ne, nebudu to za tebe celý psát.
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW
Re: PhP čas a datum - odčítání
Tu výplatu bych asi dal:
Kód: Vybrat vše
if ($cas_konec = strtotime(Time()))
{
$penize = $hodiny * 100;
$query = mysql_query ("update greece set drachmy = drachmy + $penize where id = $id;");
Echo "Práce dokončena. Získali jste $penize drachem."
}
else
Odpočítávání do $cas_konec
- CZechBoY
- Master Level 9.5
- Příspěvky: 8813
- Registrován: srpen 08
- Bydliště: Brno
- Pohlaví:
- Stav:
Offline
- Kontakt:
Re: PhP čas a datum - odčítání
dejme tomu, ale potřebuješ tam minimálně 2 rovnítka ==
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW
Re: PhP čas a datum - odčítání
Jj, já vím, tohle bylo jen jak by to zhruba mělo být.
Re: PhP čas a datum - odčítání
Super, všechno to funguje, až na dvě věci: Odpočítávání a přepisování peněz. Ty skripty chci dva, oba budou mít stejnou funkci. U obou blbne počítání a přidávání peněz blbne jen u druhého. Takže ty chyby: To odpočítávání se v pohodě spustí, ale když dopočítá do nuly, spustí odpočítávání jednoho dne, Když ale obnovím stránku, peníze jsou přičtené a odpočítávání je pryč. A ta druhá chyba: Prostě se nepřepíšou peníze. I po skončení jsou peníze stejné jako na začátku. Prosím o kontrolu skriptů, děkuji všem předem. Vím že tam mám hodně chyb (jako například trojité if isset), ale teď prosím o kontrolu jen těch závažných chyb. Dík.
První skript(název gg_prace1.php):
Druhý skript (název gg_prace2.php):
Ještě jednou díky!
První skript(název gg_prace1.php):
Kód: Vybrat vše
<?php
session_start();
header('Content-type: text/html;charset=UTF-8');
require_once 'db.php';
if(!empty($_SESSION['login']) AND !empty($_SESSION['heslo']))
{
$login = $_SESSION['login'];
$heslo = $_SESSION['heslo'];
$over = mysql_query("SELECT `id` FROM `greece` WHERE `login`='".$login."' AND `pass`='".$heslo."'");
if(mysql_num_rows($over)!=0)
{
$res_over = mysql_fetch_assoc($over);
} else {
exit("Vstup na tuto stránku je povolen pouze přihlášeným uživatelům.");
}
} else {
exit("Vstup na tuto stránku je povolen pouze přihlášeným uživatelům.");
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250" />
<title>Greece game - server 1</title>
<style type="text/css">
body{
background-image:url(http://jpeg.cz/images/2013/11/11/LtUEo.jpg);
background-repeat:no-repeat;
background-color:#000000;
background-position: center top;
background-size: 100% ;
}
a {text-decoration: none;}
a: hover {text-decoration: underline;}
a:link {color: #8b0000;} /* nenavštívený link */
a:visited {color: #8b0000;} /* navštívený link */
</style>
</head>
<body>
<?php
$id = $_SESSION['id'];
mysql_connect("sql.endora.cz:3313", "kuxik009", "moje heslo") or die("Pravděpodobně se nepodařilo připojit k DB!" . mysql_error());
mysql_select_db("greece") or die("Pravděpodobně nebyla nalezena databáze!" . mysql_error());
$query = mysql_query("SELECT * FROM `greece` WHERE `id`='$id'");
while($result = mysql_fetch_array($query))
{
$drachmy = $result['drachmy'];
$lepta = $result['lepta'];
$duhovky = $result['duhovky'];
$konec = $result['konec'];
$pracujici = $result['pracujici'];
$hodiny = $result['hodiny'];
$konec2 = $result['konec2'];
$pracujici2 = $result['pracujici2'];
$hodiny2 = $result['hodiny2'];
}?>
<font style="font: bold 25px Verdana" color="#000000">Herní menu - práce na poli</font>
<font style="font: bold 20px Verdana"><div><a href="index.php">Hlavní stránka</a>
| <a href="game_menu.php"><i>Herní menu</i></a>
| <a href="uzivatel.php?id='.$_SESSION['id'].'">Profil</a>
| <a href="all_users.php">Seznam uživatelů</a>
| <a href="chat.php">Chat pro hráče</a>
| <a href="index.php?action=odhlasit_se">Odhlásit se</a></div></font><hr>
<font color="#0000ff" style="font: bold 25px Verdana">
<?php echo "Drachmy:" . $drachmy . " Lepta:" . $lepta . " Duhovky:" . $duhovky;?></font><hr>
<font style="font: bold 22px Verdana" color="#800000">
Z dáli na tebe mávají vesničané. Potřebují pomoci na poli při sklizni. A než odmítneš, pořádně si to rozmysli - za každou odpracovanou vteřinu ti dají jednu drachmu! Ale nezapomeň - když práci zrušíš, nedostaneš zaplaceno!
<br><br><br><br><br> </font>
<form method="POST" action="gg_prace1.php">
<table border=10 align="center" width=750 height="175" text="align_center">
<tr>
<td align="center">
<font style="font: bold 22px Verdana" color="#800000">
Pracovat <input type="number" min="1" max="12" name="hodiny" size=3> hodin <input type="submit" name="ok" value="Pracovat"><br>
<?php
if (isset ($_POST["hodiny"]))
{
$hodiny = $_POST["hodiny"]*60*60;
$cas_ted = Time();
$cas_konec = $cas_ted + $hodiny;
mysql_connect("sql.endora.cz:3313", "kuxik009", "moje heslo") or die("Pravděpodobně se nepodařilo připojit k DB!" . mysql_error());
mysql_select_db("greece") or die("Pravděpodobně nebyla nalezena databáze!" . mysql_error());
$query = mysql_query("update greece set pracujici = 1 where id = $id limit 1;");
$query = mysql_query("update greece set konec = $cas_konec where id = $id limit 1;");
$query = mysql_query("update greece set hodiny = $hodiny where id = $id limit 1;");
header("Location: gg_prace1.php");
exit;
}
if ($pracujici == 1)
{
if ($konec <= Time())
{
mysql_connect("sql.endora.cz:3313", "kuxik009", "moje heslo") or die("Pravděpodobně se nepodařilo připojit k DB!" . mysql_error());
mysql_select_db("greece") or die("Pravděpodobně nebyla nalezena databáze!" . mysql_error());
$query = mysql_query("update greece set pracujici = 0 where id = $id limit 1;");
$query = mysql_query("update greece set konec = 0 where id = $id limit 1;");
$query = mysql_query("update greece set drachmy = $drachmy + $hodiny where id = $id limit 1;");
$query = mysql_query("update greece set hodiny = 0 where id = $id limit 1;");
}
}
if ($pracujici == 1)
{
$datum = date("j/n/Y H:i:s", $konec);
$datum2 = date("j. n. Y v H:i:s", $konec);
?>
<script>
var vterina = 1000;
var minuta = vterina * 60;
var hodina = minuta * 60;
var den = hodina * 24;
var rok = den * 365.24219;
var slova = {
roku: ["rok", "roky", "let"],
dnu: ["den", "dny", "dnů"],
hodin: ["hodina", "hodiny", "hodin"],
minut: ["minuta", "minuty", "minut"],
vterin: ["vteřina", "vteřiny", "vteřin"]
};
function sklonovani(pocet, co) {
if (pocet == 1) return slova[co][0];
if (pocet < 5 && pocet > 0) return slova[co][1];
return slova[co][2];
}
function odpocet(el) {
var konec = new Date(el.getAttribute("data-konec"));
var ted = new Date();
var rozdil = konec - ted;
if (rozdil < vterina) {
el.innerHTML = el.getAttribute("data-hlaska");
return;
}
var zbyva = {
hodin: Math.floor((rozdil % den) / hodina),
minut: Math.floor((rozdil % hodina) / minuta),
vterin: Math.floor((rozdil % minuta) / vterina)
}
var vypis = el.getAttribute("data-zbyva");
for (co in zbyva) {
var pocet = zbyva[co];
if (pocet > 0) vypis += " " + pocet + " " + sklonovani(pocet, co);
}
el.innerHTML = vypis;
setTimeout(function() {
odpocet(el);
}, vterina);
}
</script>
<p id="odpocet" data-konec="<?php echo $datum;?>" data-hlaska="Práce dokončena!" data-zbyva="Do konce práce zbývá:">Do konce práce zbývá:</p>
<script>
odpocet(document.getElementById('odpocet'));
</script>
<?php
echo "(končí $datum2)";
}
?>
</div>
</font>
</td>
</tr>
</table>
</font>
</form>
</p>
</body>
</html>
Druhý skript (název gg_prace2.php):
Kód: Vybrat vše
<?php
session_start();
header('Content-type: text/html;charset=UTF-8');
require_once 'db.php';
if(!empty($_SESSION['login']) AND !empty($_SESSION['heslo']))
{
$login = $_SESSION['login'];
$heslo = $_SESSION['heslo'];
$over = mysql_query("SELECT `id` FROM `greece` WHERE `login`='".$login."' AND `pass`='".$heslo."'");
if(mysql_num_rows($over)!=0)
{
$res_over = mysql_fetch_assoc($over);
} else {
exit("Vstup na tuto stránku je povolen pouze přihlášeným uživatelům.");
}
} else {
exit("Vstup na tuto stránku je povolen pouze přihlášeným uživatelům.");
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250" />
<title>Greece game - server 1</title>
<style type="text/css">
body{
background-image:url(http://jpeg.cz/images/2013/11/10/hrgn.jpg);
background-repeat:no-repeat;
background-color:#000000;
background-position: center top;
background-size: 100% ;
}
a {text-decoration: none;}
a: hover {text-decoration: underline;}
a:link {color: #8b0000;} /* nenavštívený link */
a:visited {color: #8b0000;} /* navštívený link */
</style>
</head>
<body>
<?php
$id = $_SESSION['id'];
mysql_connect("sql.endora.cz:3313", "kuxik009", "moje heslo") or die("Pravděpodobně se nepodařilo připojit k DB!" . mysql_error());
mysql_select_db("greece") or die("Pravděpodobně nebyla nalezena databáze!" . mysql_error());
$query = mysql_query("SELECT * FROM `greece` WHERE `id`='$id'");
while($result = mysql_fetch_array($query))
{
$drachmy = $result['drachmy'];
$lepta = $result['lepta'];
$duhovky = $result['duhovky'];
$konec = $result['konec'];
$pracujici = $result['pracujici'];
$hodiny = $result['hodiny'];
$konec2 = $result['konec2'];
$pracujici2 = $result['pracujici2'];
$hodiny2 = $result['hodiny2'];
}?>
<font style="font: bold 25px Verdana" color="#000000">Herní menu - práce pro bohy</font>
<font style="font: bold 20px Verdana"><div><a href="index.php">Hlavní stránka</a>
| <a href="game_menu.php"><i>Herní menu</i></a>
| <a href="uzivatel.php?id='.$_SESSION['id'].'">Profil</a>
| <a href="all_users.php">Seznam uživatelů</a>
| <a href="chat.php">Chat pro hráče</a>
| <a href="index.php?action=odhlasit_se">Odhlásit se</a></div></font><hr>
<font color="#0000ff" style="font: bold 25px Verdana">
<?php echo "Drachmy:" . $drachmy . " Lepta:" . $lepta . " Duhovky:" . $duhovky;?></font><hr>
<font style="font: bold 22px Verdana" color="#800000">
Při svých toulkách jsi se dostal až k hoře Olymp. Když jsi vystoupal nahoru, všimnul si tě Zeus. "Potřebuji nějakého schopného smrtelníka!" říká. Pomůžeš mu? Pokud ano, za pět hodin práce dostaneš jednu duhovku! Ale pokud práci zrušíš, nedostaneš zaplaceno!
<br><br><br><br><br> </font>
<form method="POST" action="gg_prace2.php">
<table border=10 align="center" width=750 height="175" text="align_center">
<tr>
<td align="center">
<font style="font: bold 22px Verdana" color="#800000">
Pracovat <select name="hodiny"><option value="0" selected disabled>0<option value="5">5 <option value="10">10 <option value="15">15 <option value="20">20 <option value="25">25 </select>hodin <input type="submit" name="ok" value="Pracovat"><br>
<?php
if (isset ($_POST["hodiny"]))
{
$hodiny = $_POST["hodiny"]*60*60;
$cas_ted = Time();
$cas_konec = $cas_ted + $hodiny;
mysql_connect("sql.endora.cz:3313", "kuxik009", "moje heslo") or die("Pravděpodobně se nepodařilo připojit k DB!" . mysql_error());
mysql_select_db("greece") or die("Pravděpodobně nebyla nalezena databáze!" . mysql_error());
$query = mysql_query("update greece set pracujici2 = 1 where id = $id limit 1;");
$query = mysql_query("update greece set konec2 = $cas_konec where id = $id limit 1;");
$query = mysql_query("update greece set hodiny2 = $hodiny where id = $id limit 1;");
header("Location: gg_prace2.php");
exit;
}
if ($pracujici2 == 1)
{
if ($konec2 <= Time())
{
$penize = $_POST["hodiny"]/10*2;
mysql_connect("sql.endora.cz:3313", "kuxik009", "moje heslo") or die("Pravděpodobně se nepodařilo připojit k DB!" . mysql_error());
mysql_select_db("greece") or die("Pravděpodobně nebyla nalezena databáze!" . mysql_error());
$query = mysql_query("update greece set pracujici2 = 0 where id = $id limit 1;");
$query = mysql_query("update greece set konec2 = 0 where id = $id limit 1;");
$query = mysql_query("update greece set duhovky = $duhovky + $penize where id = $id limit 1;");
$query = mysql_query("update greece set hodiny2 = 0 where id = $id limit 1;");
}
}
if ($pracujici2 == 1)
{
$datum = date("j/n/Y H:i:s", $konec2);
$datum2 = date("j. n. Y v H:i:s", $konec2);
?>
<script>
var vterina = 1000;
var minuta = vterina * 60;
var hodina = minuta * 60;
var den = hodina * 24;
var rok = den * 365.24219;
var slova = {
roku: ["rok", "roky", "let"],
dnu: ["den", "dny", "dnů"],
hodin: ["hodina", "hodiny", "hodin"],
minut: ["minuta", "minuty", "minut"],
vterin: ["vteřina", "vteřiny", "vteřin"]
};
function sklonovani(pocet, co) {
if (pocet == 1) return slova[co][0];
if (pocet < 5 && pocet > 0) return slova[co][1];
return slova[co][2];
}
function odpocet(el) {
var konec = new Date(el.getAttribute("data-konec"));
var ted = new Date();
var rozdil = konec - ted;
if (rozdil < vterina) {
el.innerHTML = el.getAttribute("data-hlaska");
return;
}
var zbyva = {
hodin: Math.floor((rozdil % den) / hodina),
minut: Math.floor((rozdil % hodina) / minuta),
vterin: Math.floor((rozdil % minuta) / vterina)
}
var vypis = el.getAttribute("data-zbyva");
for (co in zbyva) {
var pocet = zbyva[co];
if (pocet > 0) vypis += " " + pocet + " " + sklonovani(pocet, co);
}
el.innerHTML = vypis;
setTimeout(function() {
odpocet(el);
}, vterina);
}
</script>
<p id="odpocet" data-konec="<?php echo $datum;?>" data-hlaska="Práce dokončena!" data-zbyva="Do konce práce zbývá:">Do konce práce zbývá:</p>
<script>
odpocet(document.getElementById('odpocet'));
</script>
<?php
echo "(končí $datum2)";
}
?>
</div>
</font>
</td>
</tr>
</table>
</font>
</form>
</p>
</body>
</html>
Ještě jednou díky!
- Kim Spotcom
- Level 3
- Příspěvky: 580
- Registrován: leden 14
- Pohlaví:
- Stav:
Offline
Re: PhP čas a datum - odčítání
Doplnil bych, že tady by bylo více než vhodné, jednotlivé eventy logovat (vložen timer, timer zrušen, trigger proveden(včetně toho, jaká akce ho vyvolala, pokud nejde o realtime event), peníze přesunuty odkud kam)
Nejlepší obrana proti trollům je nereagova na ně.
-
- Mohlo by vás zajímat
- Odpovědi
- Zobrazení
- Poslední příspěvek
-
- 3
- 2393
-
od petr22
Zobrazit poslední příspěvek
01 říj 2023 20:16
-
-
Jak hromadně změnit datum a čas souborů?
od atari » 11 črc 2023 14:41 » v Programování a tvorba webu - 3
- 3500
-
od X
Zobrazit poslední příspěvek
14 črc 2023 15:17
-
Zpět na “Programování a tvorba webu”
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 10 hostů