0
我正在嘗試爲特定項目生成圖像報告。每件商品都有一個唯一的商品編號,它存儲在變量$ 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']);
}
;
}