2012-12-20 2 views
1

구문 오류가 있습니다 :의 thumb.php에서PHP는 이미지에 포함은 PHP 코드 인 것처럼 이미지를 분석하고 내가 같은 이미지의 크기를 조정하고 <code><img></code> 태그에 동적으로 삽입하는 스크립트를 만들었습니다

<img src="includes/thumb.php?src=<?=$filename;?>&w=389&q=100&f=jpg" /> 

에게 I php gd 함수를 사용하여 이미지 크기를 조정하고 마지막으로 include 이미지를 조정하여 thumb.php가 <img> 태그 내부에서 호출 된 이미지의 크기가 조정 된 이미지를 표시합니다.

내가 thumb.php에서 이미지를 포함하는 방법이있다는 : 캔 그래서

Parse error: syntax error, unexpected ']' in xxxxx\thumbs\ 
e58b3c96d4f2ccc298d68cbac7cd97a0.jpg on line 326 

: 항상 모든 이미지 작동하지 않습니다 그러나

//header('Content-Type: image/' . $format); 
//header('Content-Disposition: inline;'); 
include $resized_image; // which is now resized and saved 

, 가끔 메시지를 수신 include하려고하면 새로 고친 이미지의 파싱 오류가 나타납니다. 그러나 이미지를 더블 클릭하여 직접 열면 잘 보이고 유효한 이미지입니다.

PHP가 PHP 코드처럼 이미지 파일을 구문 분석하는 이유는 누구나 말해 줄 수 있습니까? 나는 피하고 대신 이미지를 보여주고 싶습니다. include $resized_image는 PHP 스크립트로 파일을 구문 분석을 시도합니다 때문에

<img src="includes/thumb.php?src=<?=$filename;?>&w=389&q=100&f=jpg" /> 
+0

AFAIK, 당신은 GD/Imagick으로 이미지를 열어서 출력 할 수 있습니다. – Dale

+1

자신과 다른 사람이 접근 할 수있는 웹 사이트에 이와 비슷한 코드를 넣는다면, (웹에 친화적 인 모든 것을 위해) 위생적인지 확인하십시오 'include ','readfile()','fopen()'등)에 실제로 사용하기 전에'$ _GET ['src '] 변수를 사용하십시오. – newfurniturey

+0

@newfurniturey : 정보 주셔서 감사합니다 : – Dev01

답변

1

, 당신은 readfile($resized_image)를 사용할 필요가 브라우저에 파일을 전송하려면 :

내가하고 싶은 것은 바로이 같은 크기가 조정 된 이미지를 표시한다 , 그것은 실제로 아주 위험하다!

은 참조 : readfile()

+0

슈퍼 빠른 작품 덕분에 :) 가능한 경우 이것을 승인합니다. – Dev01

1

사용 readfile() 대신. include은 잘못된 도구이며 보안 문제도 발생할 수 있습니다.

0

나는 그것이 더 좋아야한다고 생각한다. -> echo $ resized_image; thumb.php에

1

내가 좋아 할 것 PHP를 브라우저로 이미지를 전송하려면 : PHP 이미지 파일의 내용을 처리하기 위해 노력할 것 같이 이미지를 포함 할 수 없습니다

header("Content-Type: image/jpeg"); 
try 
{ 
    $image = fopen('imagepath', "rb"); 
} 
catch (Exception $e) 
{ 
    //foobar 
} 
fpassthru($image); 
fclose($image); 
exit(); 
관련 문제