Php 减少上传时的文件大小
我有这个脚本上传一个图像到我的网站,但我想在上传之前减少文件大小,但不减少尺寸什么是最好的方法呢?如果可能的话,我更喜欢在上传的时候做,而不是在上传后整理 提前谢谢Php 减少上传时的文件大小,php,image,upload,Php,Image,Upload,我有这个脚本上传一个图像到我的网站,但我想在上传之前减少文件大小,但不减少尺寸什么是最好的方法呢?如果可能的话,我更喜欢在上传的时候做,而不是在上传后整理 提前谢谢 if (isset($_POST['addphotogallery'])) { if ($_FILES["file"]["error"] > 0) { echo "Error: " . $_FILES["file"]["error"] . "<br>"; } else
if (isset($_POST['addphotogallery']))
{
if ($_FILES["file"]["error"] > 0)
{
echo "Error: " . $_FILES["file"]["error"] . "<br>";
}
else
{
}
$allowedExts = array("gif", "jpeg", "jpg", "png", "GIF", "JPEG", "JPG", "PNG");
$temp = explode(".", $_FILES["file"]["name"]);
$extension = end($temp);
if ((($_FILES["file"]["type"] == "image/gif") ||
($_FILES["file"]["type"] == "image/jpeg") ||
($_FILES["file"]["type"] == "image/jpg") ||
($_FILES["file"]["type"] == "image/pjpeg") ||
($_FILES["file"]["type"] == "image/x-png") ||
($_FILES["file"]["type"] == "image/png")) &&
($_FILES["file"]["size"] < 100000000) &&
in_array($extension, $allowedExts))
{
if ($_FILES["file"]["error"] > 0)
{
echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
}
else
{
if (file_exists("gallery/" . $_FILES["file"]["name"]))
{
echo $_FILES["file"]["name"] . " already exists. ";
}
else
{
move_uploaded_file($_FILES["file"]["tmp_name"], "gallery/" . $_FILES["file"]["name"]);
echo "Image Uploaded";
$sql = "INSERT INTO gallery SET filename='".$_FILES["file"]["name"]."' , imagedesc='".$_POST['imgdesc']."' , imagename='".$_POST['imgname']."'";
$res = mysql_query($sql);
}
}
}
else
{
echo "Invalid file";
}
}
if(isset($\u POST['addphotogallery']))
{
如果($\u文件[“文件”][“错误”]>0)
{
echo“Error:”.$\u文件[“file”][“Error”]。“
”;
}
其他的
{
}
$allowedExts=数组(“gif”、“jpeg”、“jpg”、“png”、“gif”、“jpeg”、“jpg”、“png”);
$temp=explode(“.”,$_文件[“文件”][“名称”]);
$extension=end($temp);
如果(($_文件[“文件”][“类型”]=“图像/gif”)||
($_文件[“文件”][“类型”]=“图像/jpeg”)||
($_文件[“文件”][“类型”]=“图像/jpg”)||
($_文件[“文件”][“类型”]=“图像/pjpeg”)||
($_文件[“文件”][“类型”]=“图像/x-png”)||
($_文件[“文件”][“类型”]=“图像/png”))&&
($_文件[“文件”][“大小”]<100000000)&&
in_数组($extension$allowedExts))
{
如果($\u文件[“文件”][“错误”]>0)
{
回显“返回代码:”.$\u文件[“文件”][“错误”]。
”;
}
其他的
{
如果(文件存在(“库/”$\u文件[“文件”][“名称”]))
{
echo$\u文件[“文件”][“名称”]。“已存在。”;
}
其他的
{
移动上传的文件($\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\;
回显“上传图像”;
$sql=“INSERT INTO gallery SET filename='”$\u FILES[“file”][“name”]”,imagedesc='”$\u POST[“imgdesc”]。“$\u POST[“imgname”]。”;
$res=mysql\u查询($sql);
}
}
}
其他的
{
回显“无效文件”;
}
}
您不能更改文件,除非您拥有该文件,否则您的代码只是从internet上找到的复制+粘贴的代码。您试图解决此问题的方法在哪里?我尝试了解了许多方法,但我无法解决此问题。我想知道这里是否有人可以解决此问题。如果[错误]
为非零,则您应该完全中止处理。这意味着该文件无法上传,其余的处理是无用的-您可能根本没有要处理的文件。你也很容易受到攻击。我讨厌成为“那个家伙”,但mysql已经被弃用了。您应该考虑切换到MySQL或PDO。