Qualcuno mi può aiutare a capire perchè non funziona questo codice? Grazie...Io non capisco

codice:
<?php
if (($_FILES['file']['type'] == "image/gif") 
|| ($_FILES['file']['type'] == "image/jpeg") 
|| ($_FILES['file']['type'] == "image/pjpeg")) 
&& ($_FILES['file']['size'] < 2000)
{
if ($_FILES['file']['error'] > 0)
{
echo "Error: " . $_FILES['file']['error'] . "
";
}
else
{
echo "Upload: " . $_FILES['file']['name'] . "
";
echo "Type: " . $_FILES['file']['type'] . "
";
echo "Size: " . ($_FILES['file']['size'] / 1024) . " Kb
";
echo "Stored in: " . $_FILES['file']['tmp_name'];
}
}
else
{
echo "Invalid file";
}
?>