Я пытаюсь создать эскизы, которые будут созданы на сервере, а затем выводится в HTML для пользователей веб-сайта, но он возвращает код ... странную Моя функция:PHP - ImageCreateFromJPEG() возвращают странный код
function createthumbnail($n){
list($width, $height) = getimagesize($n);
$newheight = 100;
$ratio = 100/$height;
$newwidth = $width*$ratio;
$im = imagecreatetruecolor($newwidth, $newheight);
switch(exif_imagetype($n)){
case "jpg":
$foto_r = imagecreatefromjpg($n);
break;
case "png":
$foto_r = imagecreatefrompng($n);
break;
case "bmp":
$foto_r = imagecreatefromwbmp($n);
break;
default:
$foto_r = imagecreatefromjpeg($n);
}
if(!$foto_r){
$im = imagecreatetruecolor($newwidth, $newheight);
$bgc = imagecolorallocate($im, 255, 255, 255);
$tc = imagecolorallocate($im, 0, 0, 0);
imagefilledrectangle($im, 0, 0, 150, 30, $bgc);
imagestring($im, 1, 5, 5, 'Error loading ' . $n, $tc);
}else{
imagecopyresampled($im, $foto_r, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
imagejpeg($im, null, 100);
}
return $foto_r;
}
Это не странный код. Вы просто не сказали браузеру, что вы печатаете! Вам нужно отправить заголовок 'Content-Type'. Поместите это перед 'imagejpeg',' header ('Content-Type: image/jpeg'); ' –
Тогда он ничего не печатает. Просто фоторамка в левой верхней части веб-сайта ... –
Вот картинка вашего кода. Теперь идите на поиски проблемы, почему ваша функция не делает правильную миниатюру. : P –