webForumDet fria alternativet

fel på bilduppladdning

PHPur PHP

4 svar · 321 visningar · startad av Emil W

Medlem sedan mars 2009512 inlägg
Frågan#1

Hej alla kan ej ladda upp bilder längre

mitt uppladdnings fält heter file

är det någon som ser något fel ?


if((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/jpg"))
&& ($_FILES["file"]["size"] <894*1024))
{
if($_FILES["file"]["error"] > 0)
{
echo "Return code".$_FILES["file"]["error"]."<br />";
}
else
{
if(file_exists("profilbilder/" .$_FILES["file"]["name"]))
{
echo "<br>Din bild är nu uppladdad och väntar på grakning";
}
else
{
move_uploaded_file($_FILES["file"]["tmp_name"],
"profilbilder/" . $_FILES["file"]["name"]);
}
}
}
else
{
echo "Aj detta är fel format eller så är bilden förstor";
}
Medlem sedan aug. 20039 340 inlägg
#2

Vad får du för felmeddelanden?
Får du inga fel, så lägg dett högst upp i koden och se om du får några fel då.

error_reporting(E_ALL);
ini_set('display_errors', '1');
Medlem sedan mars 2009512 inlägg
#3

jag får detta när jag försöker ladda upp

Aj detta är fel format eller så är bilden förstor
Medlem sedan mars 2009512 inlägg
#4

Man måste skriv pjpeg för att det ska funka

Medlem sedan aug. 20039 340 inlägg
#5

Lite allmänna tankar...

Ett bra sätt att debugga saker som ligger i arrayer, såsom $_FILE, är med funktionen print_r.

echo '<pre>';
print_r($_FILES);
echo '</pre>';

Det skriver ut vad som finns i arrayen. Raderna med pre är till för att utskriften ska bli snyggare.

Lär dig att indentera din kod! Det gör den enklare att läsa. Det gör du enklast med tabb-tangenten.

if((($_FILES["file"]["type"] == "image/gif") 
|| ($_FILES["file"]["type"] == "image/jpeg") 
|| ($_FILES["file"]["type"] == "image/pjpeg")) 
&& ($_FILES["file"]["size"] <894*1024)) 
{ 
	if($_FILES["file"]["error"] > 0) 
	{ 
		echo "Return code".$_FILES["file"]["error"]."<br />"; 
	} 
	else 
	{ 
		if(file_exists("profilbilder/" .$_FILES["file"]["name"])) 
		{ 
			echo "<br>Din bild är nu uppladdad och väntar på grakning"; 
		} 
		else 
		{ 
			move_uploaded_file($_FILES["file"]["tmp_name"], 
			"profilbilder/" . $_FILES["file"]["name"]); 
		} 
	} 
} 
else 
{ 
	echo "Aj detta är fel format eller så är bilden förstor"; 
}

Dessutom, MIME-typen image/jpg existerar inte. Den korrekta typen är image/jpeg, fast IE envisas att skicka typen image/pjpeg så det måste du kolla efter också. Men alltså inte image/jpg.

137 ms totalt · 3 externa anrop · v20260731065814-full.b746b907
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)