Kod
$ocena_ad = $_POST['ocena_ad'];
echo "coś "; // pokaże się
if ($ocena_ad)
{
echo "coś tam"; //nie pokaże się
if ($ocena_ad >= 1 && $ocena_ad <= 5) // zabezpieczna przed wysłaniem zawyrzonych lub zaniżonych ocen
{
echo "coś tam coś"; //nie pokaże się
$zmiana_oceny = $ocena + $ocena_ad;
$ile_ocen_new = $ile_ocen+1;
$zmien_ocene=mysql_query("UPDATE $galeria SET ocena='$zmiana_oceny' WHERE id='$id_fot'");
$zmien_ocene1=mysql_query("UPDATE $galeria SET ile_ocen='$ile_ocen_new' WHERE id='$id_fot'");
$sr = round($zmiana_oceny/$ile_ocen_new,2);
$zmien_ocene2=mysql_query("UPDATE $galeria SET ocena_pok='$sr' WHERE id='$id_fot'");
// powyższe zapytania wykonają się oczywiście dla odpowiednich ocen
echo "coś tam coś tam "; //nie pokaże się
}
else // dla postrachu tych którzy wysyłają oszukańczą ocenę
{
$twoje_ip=pobierz_ip();
echo "<h2>wykryto próbę oszustwa, twój adres ip: $twoje_ip został zapisany</h2>"; // nie pokaże się
if ($_SERVER['HTTP_REFERER'])
{
$adres_ataku=$_SERVER['HTTP_REFERER'];
echo "adres strony z której to zrobiłeś to: $adres_ataku "; // nie pokaże się
}
}
}
To też jest fragment bo całość to duży skrypt IMGallery chcę trochę to zmodyfikowałem bo mi ludzie oceny zawyżone wysyłali. dozwolone są oceny 1 2 3 4 5 a ktoś z innej strony wysyłał formularz który niósł ocenę np 3333. oryginalnie nie ma takiego zabezpieczenia.
Cytat
A po co dałeś to if ($zmienna)
jeśli zmianna bedzie miała wartość inną niż pusta lub 0 to if zwróci true
Gdyby to samo zrobić za pomocą $_GET to zadziała poprawnie oczywiście w formularzu nie pomyliłem method="post" z method="get"