Avatar billede unsafe Nybegynder
05. april 2005 - 18:58 Der er 11 kommentarer og
1 løsning

Finde billedets størrelse ved upload

Hej alle, har min lille upload avatar billede kode. Den vil jeg gerne have til at tjekke om filen er over 75 x 75 px bred og høj.

Kan i klare det?

if ($_FILES["avatar"])
{
    $avatar = $_FILES["avatar"]["tmp_name"];
    $avatar_name = $_FILES["avatar"]["name"];

    if (eregi("(\.gif)$", $avatar_name))
    {
        @unlink("images/avatar/$rs[id].gif");
        copy($avatar, "images/avatar/$rs[id].gif");

        mysql_query("UPDATE forum_users SET anavn = '$rs[id].gif' WHERE username = '$_SESSION[username]'");
    }
}

:) på forhånd tak.
Avatar billede bromer Nybegynder
05. april 2005 - 19:04 #1
Avatar billede unsafe Nybegynder
05. april 2005 - 19:45 #2
Ville blive gladere for en eksempel og en forklarning måske?
Avatar billede unsafe Nybegynder
05. april 2005 - 19:48 #3
At hvis den størrelsen ved upload er over 75x75 så print "For stor?";

hvis i forstår?
Avatar billede bromer Nybegynder
05. april 2005 - 19:55 #4
Jeg vil gerne give dig et eksempel, men der var nu ingen grund til at afvise mig svar. Hvis dit billede ligger i $avatar = $_FILES["avatar"]["tmp_name"]; kan du finde størrelsen ved følgende kode:

<?
list($width, $height, $type, $attr) = getimagesize($avatar = $_FILES["avatar"]["tmp_name"]);
?>
Avatar billede unsafe Nybegynder
05. april 2005 - 19:59 #5
jamen den skal jo tjekke og billedet er over 75 x75 px.
Og hvis det er så skal den returene med et en besked der siger filen er for stor.
Avatar billede bromer Nybegynder
05. april 2005 - 20:02 #6
heh, ja okay.. jeg kan da godt skrive det fuldt ud, hvis det skal være det:

if ($_FILES["avatar"]) {
    list($width, $height, $type, $attr) = getimagesize($avatar = $_FILES["avatar"]["tmp_name"]);
  if ($width <= 75 && $height <= 75) {
    $avatar = $_FILES["avatar"]["tmp_name"];
    $avatar_name = $_FILES["avatar"]["name"];

    if (eregi("(\.gif)$", $avatar_name))
    {
        @unlink("images/avatar/$rs[id].gif");
        copy($avatar, "images/avatar/$rs[id].gif");

        mysql_query("UPDATE forum_users SET anavn = '$rs[id].gif' WHERE username = '$_SESSION[username]'");
    }
  } else {
  print "billedet må ikke være større end 75x75";
  }
}
Avatar billede unsafe Nybegynder
05. april 2005 - 20:05 #7
takk :)
Avatar billede bromer Nybegynder
05. april 2005 - 20:08 #8
det var så lidt. Tak for point.
Avatar billede unsafe Nybegynder
05. april 2005 - 20:25 #9
Så lidt :)

En ting til, så kan jeg egentlig også godt sige

if($type != "jpg" OR "jpeg" OR "gif")
{
print "Forkert filtype.";
}

?
Avatar billede bromer Nybegynder
05. april 2005 - 20:29 #10
så ville jeg gøre det på den -rigtige måde- som her

if ($_FILES["avatar"]) {
    list($width, $height, $type, $attr) = getimagesize($_FILES["avatar"]["tmp_name"]);
    list($top_mime,$low_mime) = explode("/",strtolower(mime_content_type($_FILES["avatar"]["tmp_name"])));
  if ($top_mime == 'image' && ($low_mime == 'jpeg' || $low_mime == 'gif')) {
  if ($width <= 75 && $height <= 75) {
    $avatar = $_FILES["avatar"]["tmp_name"];
    $avatar_name = $_FILES["avatar"]["name"];

    if (eregi("(\.gif)$", $avatar_name))
    {
        @unlink("images/avatar/$rs[id].gif");
        copy($avatar, "images/avatar/$rs[id].gif");

        mysql_query("UPDATE forum_users SET anavn = '$rs[id].gif' WHERE username = '$_SESSION[username]'");
    }
  } else {
  print "billedet må ikke være større end 75x75";
  }
} else {
print "billedet er af en forkert type";
}
}
Avatar billede unsafe Nybegynder
05. april 2005 - 20:35 #11
:) okej, mange tak!
Avatar billede bromer Nybegynder
05. april 2005 - 20:35 #12
så lidt
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester