Stoj.dat + 20 = bezi.dat – PHP – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Stoj.dat + 20 = bezi.dat – PHP – Fórum – Programujte.comStoj.dat + 20 = bezi.dat – PHP – Fórum – Programujte.com

 

Leopik
~ Anonymní uživatel
9 příspěvků
4. 1. 2008   #1
-
0
-

Mam taky problem. Potrebujem spravit to, ze ak niekto klikne na niejaky odkaz tak si program zapamata cislo ake bolo v subore bezi.dat . To cislo sa ulozi do suboru stoj.dat a ak bude stoj.dat + 20 = bezi.dat tak sa nieco stane. Neviem ci ste ma pochopili co chcem ale dufam ze ano.
A este ze do suboru bezi.dat sa bude ripocitavat kazdu minutu 1.

Dakujem
Leopik

Nahlásit jako SPAM
IP: 85.159.105.–
ench0
Stálý člen
4. 1. 2008   #2
-
0
-

Ono by to teoreticky šlo pomoci cronu každou minutu zvyšovat (v crontab v Linuxu pokud se nepletu jde nastavit pro každou minutu) ale nevím zda ti to nějaký server povolí.. pokud bys to teda neměl celé u sebe na počítači (serveru).

mno k tomu čtení a zápisu z / do souboru: fopen, fscanf a fwrire - tam si to číslo přečteš, uložíš atd....

Možná být tebou bych pracoval s databází... tam bys to měl mnohem jednodušší...


Rozhodně se mi to zdá nějaké divné...

Nahlásit jako SPAM
IP: 88.146.205.–
I programování je pudová záležitost. Buď to pude, nebo to nepude
Anonymní uživatel
~ Anonymní uživatel
0 příspěvků
4. 1. 2008   #3
-
0
-

No ja by som aj mozno pracoval s databazou ale to som este nikdy neskusal...ako by to bolo s tatabazou?

Nahlásit jako SPAM
IP: 85.159.105.–
Leopik
~ Anonymní uživatel
9 příspěvků
4. 1. 2008   #4
-
0
-

No ja by som aj mozno pracoval s databazou ale to som este nikdy neskusal...ako by to bolo s tatabazou?

Nahlásit jako SPAM
IP: 85.159.105.–
hrach
~ Redaktor
+1
Boss
4. 1. 2008   #5
-
0
-

ja bych se spis zeptal co chces udelat....

Nahlásit jako SPAM
IP: 193.179.169.–
http://jan.skrasek.com@hrachcz – webdeveloper
ench0
Stálý člen
4. 1. 2008   #6
-
0
-
Nahlásit jako SPAM
IP: 88.146.205.–
I programování je pudová záležitost. Buď to pude, nebo to nepude
Leopik
~ Anonymní uživatel
9 příspěvků
4. 1. 2008   #7
-
0
-

No bude to takto:
Registrovany uzivatel bude na stranke a klikne na odkaz. Celych 20 min. co na to klikol uz nebude moct kliknut znova na ten link a ked uplynie 20 min tak sa do suboru napr. uzivatel.dat pripise 1. Bude to taky bodovy system.....ten co si "naklika" najviac bodov bude mat niejake prava. A chcem to spravit tak ako som uz pisal ze klikne po 20 min sa mu pripise 1 do suboru a potom moze znova kliknut.
Mozno si budete mysliet ze to je trocha blbe ale...

Nahlásit jako SPAM
IP: 85.159.105.–
ench0
Stálý člen
4. 1. 2008   #8
-
0
-

to bys musel mít spooousty souborů, nebo by práce se nimi byla dost nepříjemná... na toto bych použil určitě databázi...
příklad sloupců:

id
uzivatel
time
body

mno a pak po kliknutí zkontroluješ zda time + 20min <= time() a pak když tak zvýšíš v db body nebo co budeš chtít..

Takto můžeš mít i přehled o tom kdo na tom je, a celé to budeš mít jednodušší

Nahlásit jako SPAM
IP: 88.146.205.–
I programování je pudová záležitost. Buď to pude, nebo to nepude
Leopik0
Duch
5. 1. 2008   #9
-
0
-

ok a s tou databazou...ako to mam robit? Videl som ze na wz.cz maju mysql...no a ako a co tam treba robit?

Nahlásit jako SPAM
IP: 85.159.105.–
Leopik0
Duch
5. 1. 2008   #10
-
0
-
Nahlásit jako SPAM
IP: 85.159.105.–
pawlik0
Grafoman
5. 1. 2008   #11
-
0
-
Nahlásit jako SPAM
IP: 84.42.152.–
Sa Nata A Na. Howgh
Leopik0
Duch
5. 1. 2008   #12
-
0
-

No uz mi nieco malo o MySQL vysvetlil kamos takze uz viem zhruba ako sa robia tabulky. No a teraz ako pisal ench....


to bys musel mít spooousty souborů, nebo by práce se nimi byla dost nepříjemná... na toto bych použil určitě databázi...
příklad sloupců:

id
uzivatel
time
body

mno a pak po kliknutí zkontroluješ zda time + 20min <= time() a pak když tak zvýšíš v db body nebo co budeš chtít..



a teraz ze to time + 20 <= time() to mam napisat v PHP? a co je to time() a time?
Diki

Nahlásit jako SPAM
IP: 85.159.105.–
ench0
Stálý člen
5. 1. 2008   #13
-
0
-

takže příklad je na tabulce:

CREATE TABLE `klik` (

`id` int(6) NOT NULL AUTO_INCREMENT,
`uzivatel` varchar(30) NOT NULL,
`time` datetime NOT NULL,
`body` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE = innodb;


vytvořil jsem nového uživatele:
INSERT INTO `test`.`klik` (

`id` ,
`uzivatel` ,
`time` ,
`body`
)
VALUES (
'1', 'BFU', NOW( ) , '0'
);

a teď jednoduchý odkaz s dotazem v php... (žádné zabezpečení, to si zvládneš sám, ne ;o) )

<a href="?akce=plus_bod&user_id=1" title="po kliknutí přidá bod">Klik</a>

<?php
$doba = 20 ; //v minutach

$MySQL_server="localhost";
$MySQL_db="test";
$MySQL_user="root";
$MySQL_user_password="*********";

$spojeni=mysql_connect($MySQL_server,$MySQL_user,$MySQL_user_password);
$spojenidb=mysql_select_db($MySQL_db);

mysql_query("SET NAMES 'cp1250'");
mysql_query("SET character_set_client=cp1250");
mysql_query("SET character_set_connection=cp1250");
mysql_query("SET character_set_results=cp1250");


if(isset($_GET["user_id"]) && isset($_GET["akce"])){
if(is_numeric($_GET["user_id"]) && $_GET["akce"] == "plus_bod"){
$id = $_GET["user_id"];

$dotaz = "SELECT date_add(k.time, interval 20 minute) as klik_limit FROM klik as k WHERE k.id=".$id;

if($result = mysql_query($dotaz)){
if(@mysql_num_rows($result) == 0){
echo "Uzivatel neni v db";
}else{
if($sql = @mysql_fetch_object($result)){
$dot_pridej_body = "UPDATE klik as k SET k.body=k.body+1 , k.time=now() WHERE date_add(k.time, interval 20 minute) <= now() AND k.id =".$id." LIMIT 1";

if($res_pridej_body = mysql_query($dot_pridej_body)){
switch(mysql_affected_rows($spojeni)){
case 0:
echo "nelze přidat body, přidat lze až v ".$sql->klik_limit;
break;
case 1:
echo "byl přidán bod, další kliknutí je možné za ".$doba." minut";
break;
default:
echo "nějaká chybička";
}
}
}

}
}else{
echo "Chyba ve zpracování";
}
}
}
?>

Nahlásit jako SPAM
IP: 88.146.205.–
I programování je pudová záležitost. Buď to pude, nebo to nepude
Leopik0
Duch
5. 1. 2008   #14
-
0
-

Dakujem ench! Velmi si mi pomohol!!! Vdaka! A to zabezpecenie si uz spravim sam. Este raz dik

Leopik

Nahlásit jako SPAM
IP: 85.159.105.–
Anonymní uživatel
~ Anonymní uživatel
0 příspěvků
7. 1. 2008   #15
-
0
-

a este ze ten stredny kod mam dat do akeho suboru?

INSERT INTO `test`.`klik` (


`id` ,

`uzivatel` ,

`time` ,

`body`

)

VALUES (

'1', 'BFU', NOW( ) , '0'

);


Nahlásit jako SPAM
IP: 147.213.201.–
ench0
Stálý člen
7. 1. 2008   #16
-
0
-

To Anonymní uživatel : to je normální sql dotaz.
takže napíšeš něco takového:



$dotaz = "INSERT INTO `test`.`klik` (
`id` ,
`uzivatel` ,
`time` ,
`body`
)
VALUES (
'1', 'BFU', NOW( ) , '0'
);"

mysql_query($dotaz);


a to je celé :-) doporučuju pak ošetřit o to, zda se to zpracovalo, a podobné chyby...

Nahlásit jako SPAM
IP: 88.146.205.–
I programování je pudová záležitost. Buď to pude, nebo to nepude
Anonymní uživatel
~ Anonymní uživatel
0 příspěvků
7. 1. 2008   #17
-
0
-

ale kde to mam dat? do akeho suboru

Nahlásit jako SPAM
IP: 147.213.201.–
Leopik0
Duch
20. 1. 2008   #18
-
0
-

Prepacte ze az o 13 dni zonova otvaram toto tema ale az teraz som sa nato niejako zameral. Skusal som to, este som to niejako doladil ale stale mi to nefunguje...Tabulky v MySQL mam, chyby na stranke kde to je to nevypisuje...proste len ked stlacim na klik nic sa nestane...

Nahlásit jako SPAM
IP: 85.159.105.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 7 hostů

Podobná vlákna

Dopocitani dat — založil Pepek7

Struktury dat — založil oxidián

[C#] Vypis dat z while do c# — založil gledy

C# - Filtrování dat — založil Malag

Kontrola dat — založil pejtrik

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý