Finns det något sätt att få fram bildens storlek på i PHP? (i pixlar alltså)
Jag tänkte så att man kan stänga ute bilder som är över 100 px i bredd och höjd... got any ideas? :e
Bild storlek
15 svar · 353 visningar · startad av Webslave
$size = GetImageSize (bildensnamn.jpg);
Det funkar inte... om jag inte har " framför och bakom bildnamnet så händer inget, och om jag har det så står det endast "Array"
sätt dit enkla ' ' och testa
Står bara array... måste bilden vara i samma mapp?
$size = GetImageSize ($bildnr . ".jpg");
så ser den ut hoss mig iaf och det funkar hur bra som helst
Webslave skrev:
Står bara array... måste bilden vara i samma mapp?
ja det måste den
sätt annats mapp/bildensnamn.jpg istället
Funkar inte... jag har testat det osså... det står bara array.
Jag får detta felmedelande om jag inte använder "":
getimagesize: Unable to open 'nopicgif' for reading. in c:\apache\htdocs\viewuser.php on line 72
förlåt
detta måste vara med oxå
// skriver ut bilden samt hur stor den skall vara
echo ("<img src=bildensnamn.jpg " . $size[3] . "><br>");
Webslave skrev:
Funkar inte... jag har testat det osså... det står bara array.
Jag får detta felmedelande om jag inte använder "":getimagesize: Unable to open 'nopicgif' for reading. in c:\apache\htdocs\viewuser.php on line 72
Är det rätt sökväg och har du tillräckliga rättigheter på katalogen?
getimagesize returnerar en array. Värdena kan fås med $size[0] osv. Tag en koll på:
$size = getimagesize ($bildnr . ".jpg");
foreach($size as $val) echo $val."<br>";
Manualen förklarar vad du får i din array: http://www.php.net/manual/en/function.getimagesize.php
Ok... det är ordnat. Kan någon komma på något hur man får ut rena tal från $size[3]. Alltså det man får ut av den är ju height="100" width="100"... jag skulle vilja kunna plocka fram de där 100 från $size[3] och lägga dem i två olika variablar... kan man göra det med explode och i så fall hur?
Kan det vara,
$imagewidth = $size[0];
$imageheight = $size[1];
ser ut som att det är så man ska göra när man läser om det här http://www.php.net/manual/en/function.getimagesize.php, har dock inte provat själv.
/Viktor
Aha... tackar så JÄTTE mycket... jag hade missat det där ;)
Kom på att ni som kikar kanske vill se hur den slutliga koden blev:
<?
//Kollar om bilden är ifylld, om inte så returneras en default bild
if(!($rad["user_pic"])){
echo "<img src=\"images/users/nopic.gif\" width=\"100\" height=\"100\" alt=\"".$rad["username"]." har ingen bild\">";
}
else{
echo "<img src=\"http://".$rad["user_pic"];
$size = GetImageSize ("http://".$rad["user_pic"]);
//Om bildens storlek över skrider 100px åt något håll kläms den ihop till max 100*100px
if($size[0]>100 || $size[1]>100){
echo "\" height=\"100\" width=\"100\" alt=\"".$rad["username"]."'s bild\">";
}
else{
echo "\" {$size[3]} alt=\"".$rad["username"]."'s bild\">";
}
}
?>
Lite rörigt kanske men det fungerar hur bra som helst... tackar till er alla som hjälpt mig :bire