Avatar billede lademan Novice
11. december 2003 - 18:35 Der er 9 kommentarer og
1 løsning

getimagesize() på filer fra eksterne servere?

Kan man bruge getimagesize() på filer fra eksterne servere?
Avatar billede Slettet bruger
11. december 2003 - 18:39 #1
Avatar billede Slettet bruger
11. december 2003 - 18:40 #2
Ja, i PHP-versioner efter 4.0.5

http://dk.php.net/getimagesize
Avatar billede lademan Novice
11. december 2003 - 18:43 #3
Dvs følgende script er fint nok, sålænge det er en nyere version af php:

<?php
list($width) = @getimagesize("http://www.eksperten.dk/img/eksperten_logo_new.gif");
if ($width > 350 || $width == "")$width = 20;
echo "<img src=\"http://www.eksperten.dk/img/eksperten_logo_new.gif\" width=\"$width\">";
?>
Avatar billede jakoba Nybegynder
11. december 2003 - 18:46 #4
Det forudsætter dog at den fremmede server tillader det. mange vil sige 'Nej'.
Avatar billede lademan Novice
11. december 2003 - 18:49 #5
Hvor stor procentdel vil sige nej?
Avatar billede lademan Novice
11. december 2003 - 18:50 #6
Ca
Avatar billede lademan Novice
11. december 2003 - 18:52 #7
Snakker vi halvdelen oder hvad er dit bud?
Avatar billede Slettet bruger
11. december 2003 - 19:53 #8
Jeg lavede lige denne til et andet spørgsmål... Måske du kan bruge det?

Her er noget kode, der burde lave alle [img=adresse] klumper i $t om til et normalt link, hvis de er for store, og et billedlink, hvis de er passende størrelse. Jeg gad ikke lige lave kode, der skalerer korrekt. Koden er utestet.

$maxbredde=500;
$maxhoejde=500;

while (preg_match("/\[img=([^\]]+\]/i",$t,$billedmatch)){
  $size=getimagesize($billedmatch[1]);

  // På dette sted er $size[0] billedets bredde
  // $size[1] er billedets højde
  // $size[3] er en streng med bredde og højde
  // lige til at sætte i en <img>-tag

  if ($size[0] > $maxbredde || $size[1] > $maxhoejde){
    $billedlink="<a href='{$billedmatch[1]}'>{$billedmatch[1]}</a>";
  } else {
    $billedlink="<img src='{$billedmatch[1]}' {$size[3]}>";
  }

  str_replace($billedmatch[0],$billedlink,$t);

}
Avatar billede jakoba Nybegynder
11. december 2003 - 20:02 #9
Jeg kender ikke et præcist procenttal, men jeg ved tallet er stigende.

Kan du huske for nogen år siden hvordan enhver server ville levere en filliste med hvilke filer der lå i en mappe. Det er nærmest sjældent nu.

Hvadsomhelst der potentielt kan være hyttigt for en misbruger bliver sværere og sværere at få fat it. Og en server der svarer "1245 byte" når jeg spørger "Hvor stor er filen 'sys/data/passwords.dat' hjælper mig godt på vej i mit forsøg på at hugge den servers passwords (nu ved jeg præcis hvor den fil ligger:-).

mvh JakobA
Avatar billede lademan Novice
25. november 2007 - 16:41 #10
Mange tak for hjælpen! Da der ikke er nogen, der har afgivet svar, lukkes tråden.
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