[ 10001011 @ 21.05.2008. 10:03 ] @
Evo kako sam ja zamislio ocenjivanje necega:

Code:
<?php
$idd = je definisam jos gore
$ip = getenv('REMOTE_ADDR');
$upit = mysql_query("SELECT * FROM wm_gls WHERE id=$idd AND ip=$ip");
if(!$upit)


echo "<form method='post' action='?voted=".$idd."'>
<input type='hidden' name='id' value='".$idd."'>

<select name='vote'>
    <option value='gl'>Glasaj</option>
    <option value='0'>0 </option>
    <option value='1'>1 </option>
    <option value='2'>2 </option>
    <option value='3'>3 </option>
    <option value='4'>4 </option>
    <option value='5'>5 </option>
</select>

<input type='submit' name='submit' value=' Glasaj '>
</form>";
 }
else


echo'vec si glasao';

}
?>


id predstavlja id onoga sto se glasa a ip ip glasaca.


Sada nastaje problem kada treba da proveri da li je trenutni glasac vec ocenio pod tim id-om. Jedan isti glasac moze da glasa vise puta za isti id, a trebalo bi da po ip-u moze da postavi samo jedan glas u jedan id, gde sam pogresio.

Hvala unapred.

[Ovu poruku je menjao 10001011 dana 21.05.2008. u 14:26 GMT+1]
[ Man-Wolf @ 21.05.2008. 18:06 ] @
Mislim da ti je ovde problem:

Code:

if(!$upit)


Zato sto ako se ne varam, ovaj uslov ce uvek biti tacan. Bolje stavi proveru:
Code:

if (mysql_num_rows = 0) 


Posto ce na taj nacin da prikaze RATING samo ukoliko ne postoji takav unos ( broj redova sa tim Ip-em je 0)

+ Mozda bi bilo pametno da dodas i cookie-je, cisto da jos malo osiguras :-)
[ 10001011 @ 24.05.2008. 09:00 ] @
Hvala, tako nesto mi palo napamet, ali me drugar ubeduje da je ono bolja varijanta. BTW a sta mislite da baziram samo na kolacice.
[ Man-Wolf @ 25.05.2008. 16:37 ] @
Znas kako, sve ima svoje prednosti i mane:

1. Ako koristis Ip za proveru, uvek moze da se desi ( mozda nisu velike sanse, ali moze ), da neko drugi dobije tu istu adresu i kad pokusa da glasa ne uspe :-) Da pojasnim: Osoba A se konektuje i dobije IP ( 1.2.3.4 ) i glasa. Onda se diskonektuje, a konektuje se osoba B koja dobije istu tu IP adresu i proba da glasa, ali nece uspeti, zato sto je taj IP vec upisan u bazu. Mozda bi resenje bilo da odredis neki vremenski interval ( npr. 60 min ) nakon kog moze ponovo da se glasa sa iste adrese.

2. kolacici - problem je ste korisnik moze da ih obrise u svakom trenutku :-)

Tako da dodjes do odgovora da nista nije 100% sigurno. Jedino da probas neki zajednicki mix - Cookies + IP + neki dodaci tipa Browser koji klijent koristi ....

[ 10001011 @ 26.05.2008. 19:40 ] @
Da znam za to vezano za IP. Mozda je bolje da stavim da samo registrovani clanovi glasaju.