Php 图像大小调整不会输出图像

Php 图像大小调整不会输出图像,php,image,upload,Php,Image,Upload,我试图在解析图像之前调整图像大小,以避免大的上传并减少上传时间。我的功能目前是一次针对一张图片 图片分别加载以确定它们的顺序。大多数上传的图片都是4mb或更多,我想把它们减少到至少200kb或更少 这就是我所拥有的: if(mysqli_query($con,$sql)){ $maxDimW = 600; $maxDimH = 450; list($width, $height, $type, $attr) = getimagesize( $_FILES['photo9'] ['name'] )

我试图在解析图像之前调整图像大小,以避免大的上传并减少上传时间。我的功能目前是一次针对一张图片

图片分别加载以确定它们的顺序。大多数上传的图片都是4mb或更多,我想把它们减少到至少200kb或更少

这就是我所拥有的:

if(mysqli_query($con,$sql)){
$maxDimW = 600;
$maxDimH = 450;
list($width, $height, $type, $attr) = getimagesize( $_FILES['photo9']
['name'] );
if ( $width > $maxDimW || $height > $maxDimH ) {
$target_filename = $_FILES['photo9']['name'];
$pic9 = $_FILES['photo9']['name'];
$size = getimagesize( $pic9 );
$ratio = $size[0]/$size[1]; // width/height
if( $ratio > 1) {
    $width = $maxDimW;
    $height = $maxDimH/$ratio;
} else {
    $width = $maxDimW*$ratio;
    $height = $maxDimH;
}
$src = imagecreatefromstring(file_get_contents($pic9));
$dst = imagecreatetruecolor( $width, $height );
imagecopyresampled($dst, $src, 0, 0, 0, 0, $width, $height, $size[0], 
$size[1] );

imagejpeg($dst, $target_filename); // adjust format as needed


}
if(move_uploaded_file($_FILES['photo9']['tmp_name'],$target9))
{  //Tells you if its all ok
echo "<tr width='600' height='50' halign='center' valign='center'><td>";
echo "The file ". basename( $_FILES['uploadedfile']['name']). " has been 
uploaded, and your information has been added to the directory";
echo "</td></tr>";
 }
 else {
 echo "<tr width='600' height='50' halign='center' valign='center'><td>";
//Gives and error if its not
 echo "Sorry, there was a problem uploading your file.";
 echo "</td></tr>";
 }}
if(mysqli_查询($con,$sql)){
$maxDimW=600;
$maxDimH=450;
列表($width,$height,$type,$attr)=getimagesize($\u文件['photo9']
['name']);
如果($width>$maxDimW | |$height>$maxDimH){
$target_filename=$_文件['photo9']['name'];
$pic9=$_文件['photo9']['name'];
$size=getimagesize($pic9);
$ratio=$size[0]/$size[1];//宽度/高度
如果($ratio>1){
$width=$maxDimW;
$height=$maxDimH/$ratio;
}否则{
$width=$maxDimW*$ratio;
$height=$maxDimH;
}
$src=imagecreatefromstring(文件获取内容($pic9));
$dst=ImageCreateTureColor($width,$height);
imagecopyresampled($dst、$src、0、0、0、$width、$height、$size[0]),
$size[1]);
imagejpeg($dst,$target_filename);//根据需要调整格式
}
如果(移动上传的文件($文件['photo9']['tmp\u名称'],$target9))
{//告诉您一切是否正常
回声“;
echo“文件”。basename($\u FILES['uploadedfile']['name'])”已被删除
上传,您的信息已添加到目录”;
回声“;
}
否则{
回声“;
//如果不是,则给出和错误
echo“抱歉,上载文件时出现问题。”;
回声“;
}}

提前感谢您对我的错误提出的建议。

您能尝试一下
echo
vardump
每个步骤的输出吗?你能调试你的php代码吗?您可以搜索xdebug。

“并减少上载时间”-这是服务器端代码,只有在文件已上载后才起作用。无论你在这里做什么图像大小调整,都会影响已经发生的上传。