GetImageSize & Function - funkioniert nicht

damike

Grünschnabel
Hallo,

ich habe ein seltsames Problem und zwar:

Ich habe in der Datei test.php folgenden Script geschrieben und dieser klappt auch wunderbar.

PHP:
		// String in ein Array zerlegen bei Leerzeichen
		$strSplit	= preg_split("/[ \t]+/", $post);
		// Überprüfen, wieviel Elemente das Array hat
		$len = count($strSplit);
		// Das Array einzel durchgehen
		for ($i=0; $i<$len; $i++) {
			// Wenn der Bildumwandlungs-Tag gefunden wird, dann.....
			if(strstr($strSplit[$i],"[IMGAUTO]") != false) {
				// In neue Variable die URL des Bildes schreiben
				$strSplitNew[$i]	= preg_replace('#\[IMGAUTO\](.*)?\[\/IMGAUTO\]#i','$1',$strSplit[$i]);
				// Bild Infromationen einholen
				$bildInfo		= GetImageSize($strSplitNew[$i]);
				// Wenn das Bild breiter ist als erlaubt wird es umgewandelt
				if($bildInfo[0] >= '651') {
					// Multiplikator für die Verhältnis Anpassung
			 	 	$multiplikator  = $bildInfo[0]/$bildInfo[1];
			 	 	// Errechnen der neuen Abbildungs Höhe
			 	 	$img_height     = $bildInfo[1]/$multiplikator; // $imageheight/$multiplikator
					// Alten string mit neuem Tag überschreiben
					$strSplit[$i]	= preg_replace('#\[IMGAUTO\](.*)?\[\/IMGAUTO\]#i','[ IMG=650|'.$img_height.']$1[ /IMG]',$strSplit[$i]);
				}
				// Wenn das Bild von der größe her OK ist!
				elseif($bildInfo[0] <= '650') {
					$strSplit[$i]	= preg_replace('#\[IMGAUTO\](.*)?\[\/IMGAUTO\]#i','[ IMG]$1[ /IMG]',$strSplit[$i]);
				}
				// else
				elseif($bildInfo[0] != '' || !$bildInfo[0]) {
					$strSplit[$i]	= preg_replace('#\[IMGAUTO\](.*)?\[\/IMGAUTO\]#i','[ IMG=300|300]$1[ /IMG]',$strSplit[$i]);
				}
				// else
				else {
					$strSplit[$i]	= preg_replace('#\[IMGAUTO\](.*)?\[\/IMGAUTO\]#i','[ IMG=300|300]$1[ /IMG]',$strSplit[$i]);
				}
			}
		}
		$post	= implode(" ",$strSplit);

Danach habe ich diesen Script 1:1 in eine Funktion reinkopiert und nun bekomme ich immer von GetImageSize den folgenden Fehler:

Code:
Warning: getimagesize(Link http://pictures.DOMAIN.com/flyer/naked2004a5bsgross.jpg): failed to open stream: No such file or directory in /www/function/post.inc.php on line 128

Der Witz an der ganzen Sache ist, das ich beides mit dem selben Bild getestet habe. Warum kann PHP aus der Funktion das gleiche Bild nicht mehr mit GetImageSize öffen ?
 
Zuletzt bearbeitet:
Wie rufst du die Funktion auf und wie hast du sie deklariert?

Wahrscheinlich hast du vergessen, die Bild-URL mit zu übergeben
 
Es handelt sich dabei um eine Funktion, die von Usern geschriebene Texte durchgeht und alles mögliche anpasst.
Wie in dem Beispiel oben geht die Funktion durch den Userverfassten Text und wandelt den Image-Tag [IMAGEAUTO] in ein Bild um.
Dabei wird geprüft ob das Bild nicht breiter als 650Px ist, wenn ja dann wird es resized angezeigt.

Also die rufe ich so auf:
PHP:
<? echo FormatUserText($var_mit_user_text_aus_sql); ?>
 
Zurück