webForumDet fria alternativet

Bredd och höjd på klientens dator

PHP

5 svar · 324 visningar · startad av Melea

Medlem sedan juli 20033 147 inlägg
Frågan#1

Hejsan wF!

Har sökt och sökt men får det fortfarande inte och funka (vet inte ens om det är möjligt)...

Men! Det jag vill göra är att kolla bildens storlek (bredd och höjd) innan den laddas upp på servern... Är detta möjligt? Och isåfall hur? Har försökt med

<form method="post" enctype="multipart/form-data" action="admin/sponsors_pic.php">
<table cellspacing="0" cellpadding="2" border="0">
	<tr>
		<td><b>Picture:</b></td>
	</tr>
	<tr>
		<td><input type="file" name="fil" size="40" class="input"></td>
	</tr>
	<tr>
		<td><input type="submit" value="Upload this picture" class="submit"></td>
	</tr>
</table>
</form>

Och uploadkoden:

...

$bildstorlek = GetImageSize($_FILES['fil']['name']);
$bredd = $bildstorlek[0];
$hojd = $bildstorlek[1];

if($bredd <> 152 AND $hojd <> 50) {
	Header("Location: ../admin.php?show=sponsors_pic&url=error");
}

	if (is_uploaded_file($_FILES['fil']['tmp_name'])){
		move_uploaded_file($_FILES['fil']['tmp_name'],"../sponsors/".$_FILES['fil']['name']);
	}

$url = "sponsors/".$_FILES['fil']['name'];

$sql = "INSERT INTO teamswe_sponsors (url) VALUES ('$url')";
mysql_query($sql);

Header("Location: ../admin.php?show=sponsors_pic&url=$url");

Tacksam för svar!

Mvh

Medlem sedan juni 2002346 inlägg
#2

har du testat skriva ut värderna på $bredd och $hojd?

Medlem sedan juli 20033 147 inlägg
#3

Problemet är att koden ger felmeddelande på:

$bildstorlek = GetImageSize($_FILES['fil']['name']);
Warning: getimagesize(): Unable to access bild.jpg in /www/teamswe/admin/sponsors_pic.php on line 4

Warning: getimagesize(bild.jpg): failed to open stream: No such file or directory in /www/teamswe/admin/sponsors_pic.php on line 4
Medlem sedan jan. 2000372 inlägg
#4

Du ska använda $_FILES['fil']['tmp_name'] för att få fram sökväg och filnamn på den uppladdade filen.

Medlem sedan juli 20033 147 inlägg
#5

Hm... de ger mig ett annat fel :OO

Warning: getimagesize(): open_basedir restriction in effect. File(/tmp/phpDdCDFm) is not within the allowed path(s): (/home/s/starcraft) in /home/s/starcraft/www/teamswe/admin/sponsors_pic.php on line 4

Warning: getimagesize(/tmp/phpDdCDFm): failed to open stream: Operation not permitted in /home/s/starcraft/www/teamswe/admin/sponsors_pic.php on line 4
*
Medlem sedan juli 20033 147 inlägg
#6

Ingen?

257 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)