Zbudowałem sobie bardzo ubogi skrypt do wgrywania obrazków na serwer. Teraz prośba o pomoc: jak zmodyfikować ten skrypt by przyjmował tylko formaty obrazów (jpg, jpeg, png, gif) oraz czy istnieje w ogóle taka możliwość jak ustawienie czasowe (np. co 1 h) dla każdego IP, które wysyła zdjęcie? Nie będzie skryptu rejestracji więc pewnie odbywałoby się spamowanie, a tak przynajmniej co określony czas. IP można wyciągnąć przez:
if ($_SERVER['REMOTE_ADDR'] == '')
{
$ip = $_SERVER['REMOTE_ADDR'];
} else $ip = $_SERVER['REMOTE_ADDR'];
ale niestety dalej już nie wiem, jeśli to jest zbyt skomplikowane lub inne uwarunkowania z przyczyn losowych nie pozwolą na budowę tego kodu to chociaż będę wdzięczny za część pierwszą mojego zapytania :P Najwyżej skrypt obejmę w CAPTCHA i myślę, że też by było ok.
Skrypt:
formularz.php
<form action="img.php" method="post" enctype="multipart/form-data">
Add image: <input type="file" name="images">
<br><input type="submit" value="Send">
</form>
img.php
<?php
include('mysql.php');
$file = $HTTP_POST_FILES["images"]["tmp_name"];
$zapisz = $HTTP_POST_FILES["images"]["name"];
if (!copy($file, "images/" . $zapisz)) {
print ("Kopiowanie nie powiodło się.<br>\n");
}
print "<BR>Nazwa pliku: ".$HTTP_POST_FILES["images"]["name"];
print "<BR>Rozmiar pliku: ".$HTTP_POST_FILES["images"]["size"];
print "<BR>tymczasowo: ".$HTTP_POST_FILES["images"]["tmp_name"];
print "<BR>Typ przesłanego pliku: ".$HTTP_POST_FILES["images"]["type"];
$query = "INSERT INTO images (filename) VALUES ('$zapisz')";
mysql_query($query);
echo "Dodawanie zakonczone";
?>