Vrijeme u PHP-u

poruka: 14
|
čitano: 2.167
|
moderatori: Lazarus Long, XXX-Man, vincimus
1
+/- sve poruke
ravni prikaz
starije poruke gore
16 godina
neaktivan
offline
Vrijeme u PHP-u
pitanje

Hello-u,

 

Napravio sam u php-u jedan textbox i jedno button dugme. Pritiskom na dugme podatak iz textbox-a se upisuje u bazu podataka. Ono sto ja zelim je da se zabrani 2 puta u toku istog mjeseca upis preko tog textbox-a u mysql bazu podataka. Znaci, prvi put kad se u toku tog istog mjeseca upisuje u bazu koristeci textbox i button dugme, upis bude uspjesan. Drugi put, u toku tog istog mjeseca je zabranjen upis u bazu podataka preko te iste forme.Ponovni, drugi upis je dozvoljen tek u 00:00:01  1. dana narednog mjeseca.

 

Je li postoji neko gotovo rjesenje u php-u ili neko da zna kako rijesiti problem ?? 

 

 

Pozdrav

 
0 0 hvala 0
17 godina
offline
RE: Vrijeme u PHP-u

Mozes li biti malo opsirniji, jel to samo jedan korisnik moze mjesecno, jel to samo za odredjeni upis moze biti mjesecno.

 

U svakom slucaju rijesenje ovisi o potrebi, mozes preko cookija, a mozes preko baze...

 

 

I'm going woo woo
16 godina
neaktivan
offline
RE: Vrijeme u PHP-u
autorov komentar

DA,

 

Svaki korisnik moze samo jedanput mjesecno uraditi insert u bazu podataka. Znaci, samo ya ovu formu koja sadrzi jedan textbox i jedno submit dugme.

 

Kako je najlakse ? Da li moze preko baze i kako ?

16 godina
neaktivan
offline
RE: Vrijeme u PHP-u
autorov komentar

 

Fol je u tome da se korisnik registruje i pristupi aplikaciji koja sadrzi jedan textbox i jedan submit box. Znaci on kao registrovani pristupa ovoj aplikaciji. i promjeni prvi put u mjesecu podatak u textboxu. Onda se opet registruje, ali vise ne moze promijeniti do kraja toga mjeseca taj isti podatak. 

 

 

Help ???

16 godina
neaktivan
offline
Vrijeme u PHP-u

mozes si zapisati rezultati time() funkcije u posebno polje korisnika i onda pri slijedecem upisu provjeravati ako je ($vrijeme_zadnjeg_upisa+2419200)>+time()

 

ako je, onda dopustis upis i ponovo zapises time()

 

time() daje vrijeme u sekundama, a 2419200 je trajanje 4 tjedna u sekundama.

 

*edit* ah zanemari, ovo moje nije ono sto ti treba, tek sam sada uocio detalj XD

 

*edit 2* ovo bi ti moglo pomoci http://www.highlystructured.com/comparing_dates_php.html

Poruka je uređivana zadnji put sub 11.10.2008 12:50 (Dr. Zoidberg).
Moj PC  
0 0 hvala 0
17 godina
offline
Vrijeme u PHP-u

Dobro si poceo ali si krivo zavrsio.

 

Znaci u tablici useri dodas npr polje "zadnji_unos"

 

Gledas da li je korisnik vec unosio taj mjesec... ja cu ti napisat ekvivalent u VB pa ti skuzi kako ide

 

if zadnji_unos < month(sadasnje_vrijeme) then

   unesi submit formu

   zadnji_unos = month(sadasnje_vrijeme)

End if

I'm going woo woo
 
0 0 hvala 0
16 godina
neaktivan
offline
RE: Vrijeme u PHP-u
ada kaže...

 

Fol je u tome da se korisnik registruje i pristupi aplikaciji koja sadrzi jedan textbox i jedan submit box. Znaci on kao registrovani pristupa ovoj aplikaciji. i promjeni prvi put u mjesecu podatak u textboxu. Onda se opet registruje, ali vise ne moze promijeniti do kraja toga mjeseca taj isti podatak. 

 

 

Help ???

 zanima me.... dali misliš pod registruje da se prijavi s imenom i lozinkom.... ili napravi novi račun????
16 godina
neaktivan
offline
RE: Vrijeme u PHP-u
autorov komentar

 

registruje se s imenom i lozinkom

16 godina
neaktivan
offline
RE: Vrijeme u PHP-u

tada imaš dvije opcije...
Jedna je cookies - lakše izvedivo - ali to se može zeznut jer se oni spremaju na klijentovom kompu.

Bolji način je da u mySQL u tablici gdje su ti korisnici napraviš jedno datetime polje.... recimo 'datumunosa'
no budući da ti je koliko sam razumio bitan samo kalendarski mjesec - tada je vrlo jednostavno....

samo malo zaštiti od SQL injectiona.... ovo je samo kratak opis


$datum=date("Y-m-d H:i:s");

$zadnjipostgod=mysql_result(mysql_query("SELECT year(datumunosa) FROM korisnik WHERE login=".$korisnik),0));
$zadnjipostmj=mysql_result(mysql_query("SELECT month(datumunosa) FROM korisnik WHERE login=".$korisnik),0));

if((date("m")==$zadnjipostmj)&&((date("Y")==$zadnjipostgod)){
echo "Već ste unjeli poruku ovaj mjesec";}


else

{
$sql="UPDATE korisnik SET poruka='".$_POST['poruka']."', datumunosa='$datum' WHERE login='$korisnik'";

mysql_query($sql);
}

puno sam za kompom, imam život, nemam grobno mjesto
Poruka je uređivana zadnji put sub 11.10.2008 15:51 (danijel2006).
16 godina
neaktivan
offline
RE: Vrijeme u PHP-u
autorov komentar

 

Ok, ovo mi je savrseno jasno .... Samo jos jedno kratko pitanje. Kako da iz naredbe: $datum=date("Y-m-d H:i:s");     izdvojim vrijednost dana (d)  tako da mogu da usporedjujem :

 

if(d==1) then  ....      if (d==2) then ....       samo jos to.

16 godina
neaktivan
offline
RE: Vrijeme u PHP-u
prihvaćeno rješenje

za trenutni dan (serverski) imaš naredbu date("d"), ali ako želiš iz baze tada u sql utrpaš day(datumunosa) 

puno sam za kompom, imam život, nemam grobno mjesto
16 godina
neaktivan
offline
RE: Vrijeme u PHP-u
autorov komentar

 $b=time();

 

echo date("d-m-Y");
echo date("g:i:s",$b);

 

ovaj slijed prikazuje vrijeme 2008-28-10  13:20:16   .... mene zanima da i tisucinke sekunde budu ubacene u sistemski prikaz vremena. tako da prikaze  13:20:16:237  npr.

 

je li neko zna kako ubaciti tisucinke u sistemski prikaz vremena na osnovu ovih gore naredbi ? 

 

 

 

 

16 godina
neaktivan
offline
RE: Vrijeme u PHP-u
autorov komentar

?

17 godina
neaktivan
offline
Vrijeme u PHP-u

joj, dajte se ljudi molim vas naucite citat upute: http://www.php.net/manual/en/function.date.php

 

na njoj lijepo pisu svi mogci formati.... pa tako imas i ovaj:

u      Microseconds (added in PHP 5.2.2)      Example: 54321

Kao sta vidis u ti baci mikrosekunde, ali to je podrzano samo od PHP verzije 5.2.2 tako da na nekim serverima mozda nece raditi....

 

 

a da si malo pitao google [i trazio php microseconds],  prvi rezultat bi ti bila uputa opet sa php.net-a i to o funkciji microtime
uzivaj...

 
0 0 hvala 0
1
Nova poruka
E-mail:
Lozinka:
 
vrh stranice