Avatar billede dingkee Nybegynder
06. januar 2006 - 19:04 Der er 14 kommentarer og
2 løsninger

Hente billedets størrelse

Hej,

Kan man hente en størrelse på et billed og så gemme det, for at bruge det senere??

Til at give en position på siden...
Avatar billede jaw Nybegynder
06. januar 2006 - 19:15 #1
$size = getimagesize("billede.jpg");

www.php.net/getimagesize
Avatar billede dingkee Nybegynder
06. januar 2006 - 19:29 #2
Okay, det kunne jeg så ikke få til at virke :(

            if ($mode == "") {
            $sql1 = mysql_query("SELECT * FROM billed WHERE uid = '" . $id . "'");
            while ($r1 = mysql_fetch_array($sql1)) {
            $size = getimagesize($r1[navn]);
            echo"
                    <img src=\"images/" . $r1[navn] . "\" alt=\"\" border=\"0\" />" . $size . "
           
            ";
                  }
            }
            ?>

Der kommer ingen ting frem her... hvad kan problemet være??
Avatar billede dingkee Nybegynder
06. januar 2006 - 19:29 #3
Forresten så er det bredden på billedet jeg skal finde
Avatar billede jaw Nybegynder
06. januar 2006 - 19:36 #4
Det er fordi du ikke har læst mit link at du ikke kan få det til at virke, ikke?

Du skal bruge $size[0] for bredden af billedet. Getimagesize opretter et array med forskellige dimensioner på billedet.
Avatar billede thomaskleist Nybegynder
06. januar 2006 - 19:40 #5
hej
det her er nok det letteste list($width,$heigh)=getimagesize($src)

så kan du echo width og height
Avatar billede dingkee Nybegynder
06. januar 2006 - 19:58 #6
Det virker bare ikke :(

når jeg indsætter den linie her:
list($width,$height)=getimagesize($r1[navn])

Kommer der ingenting
Avatar billede jaw Nybegynder
06. januar 2006 - 20:02 #7
Nej, den bliver også for bøvlet efter min mening. For det første kræver den en ekstra linie (dén linie) og for det andet opretter den 2 ekstra variabler som der ingen grund er til. Men de 2 løsninger vil være henholdsvis:
echo"
  <img src=\"images/" . $r1[navn] . "\" alt=\"\" border=\"0\" />" . $size[0] . "
";

og:
list($width,$heigh)=getimagesize($r1['navn'])
echo"
  <img src=\"images/" . $r1[navn] . "\" alt=\"\" border=\"0\" />" . $width . "
";
Avatar billede dingkee Nybegynder
06. januar 2006 - 20:11 #8
kan jeg heller ikk få til at virke :(

Det jeg skal bruge det til er at sætte positionen på det næste billed, som skal bære på positionen 5px efter det forgående bileld
Avatar billede jaw Nybegynder
06. januar 2006 - 20:13 #9
Hvad er det du ikke kan få til at virke? Du har 2 forskellige løsninger, så du må lige i første omgang bestemme dig for hvilken du vil bruge, ellers er det svræt at gætte sig til hvad det er du prøver på.

Viser den billedet rigtigt? Er det størrelsen du ikke kan få udskrevet? Evt. paste dit script igen som du har det nu.
Avatar billede thomaskleist Nybegynder
06. januar 2006 - 20:24 #10
Jeg har lavet det sådanne her og det virker fint

$sql3="select catbesk from billede_kategori where catid=$catid";
      $result3=mysql_query($sql3) or die(mysql_error());
      $result2 = mysql_query($sql2,$conn) or die(mysql_error());
     
      $text = urldecode(mysql_result($result3,0,'catbesk'));
      }
      if(mysql_num_rows($result)<1)
      {
      echo "Ingen billeder";
      }
      else
      { ?>
          <table width="100%" border="0" cellpadding="0" cellspacing="0"  class="formcss">
      <tr><td ><p align="left"><?php echo $text; ?></td></tr>
      <tr><td>&nbsp;&nbsp;&nbsp;</td></tr>
      </table>
      <?php
     
      while($row2=mysql_fetch_array($result2))
      {
      $image=  $row2['largepicture'];
    list($width,$height,$attr)=getimagesize($image);
    echo $width ."  ". $height;
Avatar billede dingkee Nybegynder
06. januar 2006 - 20:26 #11
ingen af dem vil virke...

Den udskriver ingen ting, og billederne bliver fint vist...

Scriptet ser sådan ud her:
            <?PHP
            //henter webside
           
            if ($mode == "") {
            $sql1 = mysql_query("SELECT * FROM billed WHERE uid = '" . $id . "'");
            while ($r1 = mysql_fetch_array($sql1)) {
            list($width,$height)=getimagesize($r1['navn'])
            echo"
                    <img src=\"images/" . $r1[navn] . "\" alt=\"\" border=\"0\" />" . $width . "
           
            ";
                  }
            }
            ?>

Når jeg har det stående kommer der slet ikke noget på siden...
Avatar billede dingkee Nybegynder
06. januar 2006 - 20:33 #12
fejlen med det manglende ; har jeg rettet...

Og det der ikke kommer frem på siden er $width
Avatar billede jaw Nybegynder
06. januar 2006 - 20:47 #13
Det er jo klart, for billedet findes under images:
list($width,$height)=getimagesize("images/".$r1['navn'])
Avatar billede dingkee Nybegynder
06. januar 2006 - 21:09 #14
Mange tak...

Bare sådan nogle små fejl man ser sig blindt på...

Svar = point :)
Avatar billede thomaskleist Nybegynder
06. januar 2006 - 21:15 #15
svar
Avatar billede jaw Nybegynder
06. januar 2006 - 21:49 #16
Selv tak.
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