특정 항목에 대한 이미지 보고서를 생성하려고합니다. 모든 항목에는 변수 $ pk에 저장된 고유 한 항목 번호가 있습니다.다른 출처의 이미지 표시
여기에서 images/$ pk.jpg 및/또는 screenshots/$ pk.jpg를 호출하면 현재 항목 페이지의 관련 이미지 또는 스크린 샷이 표시됩니다. 이것은 실제 페이지에서는 정상적으로 작동하지만 팝업 보고서에서는 정상적으로 작동하지 않습니다.
하나의 파일에 대해 결과 파일을 저장하지 않고 출력하기 전에 800px로 자르고 싶습니다.
또한 사람들은 파일을 업로드 할 수 있으므로 png로 끝나는 모든 파일의 목록을 검색하고 각각을 브라우저에 출력하려고합니다.
다음은 내 코드이지만 html 헤더 만 출력됩니다.
내가 뭘 잘못하고 있니? imagepng 메소드의 오용입니까?
내 코드 :
<?php
if (isset($_GET["pk"])) {
$pk = $_GET["pk"];
}
$con = mysqli_connect("localhost","user","pass", "db");
if (!$con) {
echo "Can't connect to MySQL Server. Errorcode: %s\n". mysqli_connect_error();
exit;
} {
echo "<h1>Image report for auction number: ".$pk. "</h1> \n";
$srcName = 'screenshots/'.$pk.'.png';
$info = getimageinfo($srcName);
$src = imagecreatefrompng($srcName);
$dest = imagecreate($info[0], min($info[1], 800));
imagecopy($dest, $src, 0, 0, 0, 0, $info[0], min($info[1], 800));
imagepng($dest);
imagepng('images/'.$pk.'.png');
$filesQuery = "SELECT FILENAME FROM FILES WHERE FILENAME LIKE %png%";
if ($getFiles = $con->prepare($filesQuery)) {
$getFiles->execute();
$getFiles->bind_result($FILENAME);
$files = array();
while ($getFiles->fetch()) {
$filename = array(
'FILENAME' => $FILENAME,
);
$files[] = $filename;
}
}
$filesList = '';
foreach ($files as $filenames) {
$imagepng($filenames['FILENAME']);
}
;
}