Tuesday, February 19, 2013

Ustvarjanje skripta za Upload

"Upload_file.php" datoteka vsebuje kodo za nalaganje datoteke:

<?php
if ($_FILES["file"]["error"] > 0)
{
echo "Error: " . $_FILES["file"]["error"] . "<br>";
}
else
{
echo "Upload: " . $_FILES["file"]["name"] . "<br>";
echo "Type: " . $_FILES["file"]["type"] . "<br>";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
echo "Stored in: " . $_FILES["file"]["tmp_name"];
}
?>
 
Z uporabo globalnega PHP $_FILES matrike lahko prenesete datoteke iz računalnika odjemalca z oddaljenim strežnikom.
Prvi parameter je ime vnosa v obliki in lahko drugi indeks "ime", "tip", "velikost", "tmp_name" ali "napake". všeč mi je:
 
 $_FILES["file"]["name"] - ime prenesene datoteke
$_FILES["file"]["type"] - vrsta prenesene datoteke 
$_FILES["file"]["size"] - velikost v kilobajtih prenesene datoteke
 $_FILES["file"]["tmp_name"] - ime začasno kopijo datoteke, shranjene na strežniku
 $_FILES["file"]["error"] - koda napake, ki izhajajo iz file upload
 To je zelo preprost način za nalaganje datotek. Zaradi varnostnih razlogov, morate dodati omejitve na kaj je uporabniku omogočen upload.
 
 
Omejitve na Upload
 
V ta scenarij smo dodali nekatere omejitve za nalaganje datotek. Uporabnik lahko upload, .gif, .jpeg, .png datoteke; in in velikost datoteke mora biti pod 20 kB:
 
 <?php
$allowedExts = array("jpg", "jpeg", "gif", "png");
$extension = end(explode(".", $_FILES["file"]["name"]));
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/png")
|| ($_FILES["file"]["type"] == "image/pjpeg"))
&& ($_FILES["file"]["size"] < 20000)
&& in_array($extension, $allowedExts))
{
if ($_FILES["file"]["error"] > 0)
{
echo "Error: " . $_FILES["file"]["error"] . "<br>";
}
else
{
echo "Upload: " . $_FILES["file"]["name"] . "<br>";
echo "Type: " . $_FILES["file"]["type"] . "<br>";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
echo "Stored in: " . $_FILES["file"]["tmp_name"];
}
}
else
{
echo "Invalid file";
}
?>
 Opomba: Za IE spoznati jpg datoteke tipa morajo biti pjpeg, za FireFox mora biti jpeg.

No comments:

Post a Comment