GetImageSize -> Windows wel, linux niet :(

Pagina: 1
Acties:

  • Wacky
  • Registratie: Januari 2000
  • Laatst online: 30-08 10:27

Wacky

Dr. Lektroluv \o/

Topicstarter
'oi

Heb net lopen pielen met het gebruik van GetImageSize in PHP 4.0.6 lokaal op een winXP pc. Nu heb ik de boel geupload naar een linux server (PHP 4.0.4pl1) maar nu krijg niet anders dan errors op mijn scherm. Hij laat de plaatjes wel zien, maar GetImageSize werkt weer niet :(
PHP:
1
2
3
4
5
6
7
8
9
10
<?
$size = getimagesize($oldurl);
    if ($size[0] > "150") {
        print "</font></b><br><br>[img]\""[/img]<br></td></tr><tr><td valign=top>&amp;nbsp;</td></tr></table></td></tr></table>";
        } else {
        print "</font></b><br><br>[img]\""[/img]<br></td></tr><tr><td valign=top>&amp;nbsp;</td></tr></table></td></tr></table>";
        }
        print "</td>";
                }
?>

De error die ik krijg is:
code:
1
2
3
Warning: Supplied argument is not a valid MySQL result resource in main.php on line 119

Warning: Unable to open http://www.domein.tld/photos/1004.jpg in main.php on line 121

Het gaat hier zoals je ziet om het resizen van een plaatje als de breedte groter als 150px is.

Iemand een suggestie? Of een alternatieve oplossing?

Bvd

  • Tim
  • Registratie: Mei 2000
  • Laatst online: 23-07 15:18

Tim

Misschien leuk om te vermelden wat lijn 119 en 121 zijn?
Gebruik je verder mySQL in het bestand? Lijkt me eerder dat daar wat fout op gaat

En http://www.domein.tld bestaat niet, dus dat lijkt me logisch dat dat het niet doet..

  • Wacky
  • Registratie: Januari 2000
  • Laatst online: 30-08 10:27

Wacky

Dr. Lektroluv \o/

Topicstarter
Op zondag 14 oktober 2001 12:17 schreef Timpie2000 het volgende:
Misschien leuk om te vermelden wat lijn 119 en 121 zijn?
Gebruik je verder mySQL in het bestand? Lijkt me eerder dat daar wat fout op gaat

En http://www.domein.tld bestaat niet, dus dat lijkt me logisch dat dat het niet doet..
Lijn 119 en 121 zijn de lijnen die ik heb gepost, en het echte domein heb ik even vervangen door domein.tld :)

  • JointFillah
  • Registratie: Juli 2000
  • Laatst online: 13-09 16:06

JointFillah

Techno Addict

Was er niet iets met een bugfix voor getImageSize in de laatste versie(s) van PHP?
* JointFillah probeert het zich te herinneren....is vandaag te vroeg opgestaan (F1).... :z

Heb je de mogelijkheid om op die linuxbak de laatste versie van php te installeren? Zo ja, probeer dat ff......maar zoek eerst ff in de changelogs op php.net, want ik zou zweren dat ik er iets over gelezen heb ;)

Hmm, die MySQL-errors zijn btw wel vaag.....ik neem nog een bak koffie, misschien dat het helpt..... :z

Tot nader berichtgeving: succes :)


> edit:

Ik begin wakker te worden......is het niet gewoon een gevalletje van oops een aanhalingsteken vergeten in bijv. een mysql_query("BLABLA") erges voor die line 119 :?

~* Peace, Love & XTC *~


Verwijderd

Niet de meest gemaakt fout bij conversie van windows naar Linux => Case sensitive? :)

  • Wacky
  • Registratie: Januari 2000
  • Laatst online: 30-08 10:27

Wacky

Dr. Lektroluv \o/

Topicstarter
Nope ... De foto's haalt ie al van een linuxserver af ... dus daar ligt het niet aan :(

De mysql error is opgelost inmiddels ...

  • brammetje
  • Registratie: Oktober 2000
  • Laatst online: 12-01-2025
verder ondersteund php getimagesize() met bestanden van andere servers pas vanaf versie 4.6

daar ligt het waarschijnlijk aan.

  • Wacky
  • Registratie: Januari 2000
  • Laatst online: 30-08 10:27

Wacky

Dr. Lektroluv \o/

Topicstarter
Op zondag 14 oktober 2001 13:37 schreef PlayR het volgende:
verder ondersteund php getimagesize() met bestanden van andere servers pas vanaf versie 4.6

daar ligt het waarschijnlijk aan.
4.0.6 bedoel je denk ik ... iig bedankt ...

  • flat
  • Registratie: Mei 2000
  • Niet online
Op zondag 14 oktober 2001 13:37 schreef PlayR het volgende:
verder ondersteund php getimagesize() met bestanden van andere servers pas vanaf versie 4.6

daar ligt het waarschijnlijk aan.
inderdaad ja... ik heb 't gisteravond nog gelezen (toen heb ik ongeveer 75% van alle functies van de php-manual helemaal doorgelezen)

"Happiness is a way of travel, not a destination."
--Roy Goodman


Verwijderd

Probeer deze eens:


<?
function ReallyGetImageSize($filename)
{
// First see if GetImageSize can process the file
$size = GetImageSize($filename);
if($size[0] == 0 && $size[1] == 0){
// If that failed, try the hard way
// make sure it's a jpeg
$extension = explode(".",$filename);
$extension = $extension[sizeof($extension)-1];
$extension = strtolower($extension);
if(($extension != "jpg") && ($extension != "jpeg")){
// not a jpeg, give up
return array(0, 0, 0, "");·
}

$stream = @fopen($filename, "rb");
if(!$stream){
echo ("error opening $filename");
return array(0, 0, 0, "");·
}
$bytes = fread($stream, 2);
$bytes = unpack("Cchar1/Cchar2", $bytes);
if($bytes["char1"] != 0xff || $bytes["char2"] != 0xd8){
echo ("wrong file magic in $filename");
return array(0, 0, 0, "");·
}

while (1){
$length = 4;
$segheader = fread($stream, $length);
# Extract the segment header.
$seginfo = unpack("Cmarker/Ccode/nlength", $segheader);
printf("Marker = %02x, Code = %02x, Length = %d\n",
$seginfo["marker"], $seginfo["code"], $seginfo["length"]);

# Verify that it's a valid segment.
if ($seginfo["marker"] != 0xFF){
# Was it there?
echo "JPEG marker not found";
break;
} else if (($seginfo["code"]>=0xC0) && ($seginfo["code"]<0xC4)){
# Segments that contain size info
$length = 5;
$header = fread($stream, $length);
$sizeinfo = unpack("Cfoo/nheight/nwidth", $header);
$size[0] = $sizeinfo["width"];
$size[1] = $sizeinfo["height"];
$size[2] = 2;
break;
} else {
# Dummy read to skip over data
$length = $seginfo["length"] - 2;
fseek($stream, $length, SEEK_CUR);
}
}
}

return array($size[0], $size[1], $size[2],·
"width=\"$size[0]\" height=\"$size[1]\"");
}
?>

  • flat
  • Registratie: Mei 2000
  • Niet online
Op zondag 14 oktober 2001 14:13 schreef romke een slim php-scriptje
hmm ja da's een goed idee
ik zat net aan ongeveer hetzelfde te denken, maar dat van jou is net iets beter

offtopic:
heb je die signature zelf bedacht?

"Happiness is a way of travel, not a destination."
--Roy Goodman


  • Wacky
  • Registratie: Januari 2000
  • Laatst online: 30-08 10:27

Wacky

Dr. Lektroluv \o/

Topicstarter
Iemand nog een ideetje?

* Wacky wordt wanhopig :(

  • DiSiLLUSiON
  • Registratie: September 2000
  • Laatst online: 30-05 14:58
Als in 4.0.6 de functie anders is dan in andere versies, kan je een
PHP:
1
2
3
4
5
6
7
8
9
<?
$phpvernum=phpversion();

if (floor($phpvernum)<4.0.6) {
  // blabla
} else {
  // pieppiep
}
?>

gebruiken om iets anders uit te voeren bij andere versies dan bij 4.0.6.
Pagina: 1