Hola
prueba usando getimagesize para determinar el tipo u el tamaño del archivo, y tambien prueba cambiando los operadores de este IF
Código PHP:
if($_FILES['foto']['type'] <> "image/gif" OR $_FILES['foto']['type'] <> "image/pjpeg" OR $_FILES['foto']['type'] <> "image/jpeg") {
Código PHP:
$info = getimagesize($_FILES['foto']['tmp_name']);
if( $info[2] == "image/gif" || $info[2] == "image/pjpeg" || $info[2] == "image/jpeg") {
Un saludo