我有一个脚本,运行上传一个图像,然后调整到两个不同的图像,一个是540px宽的图像,另一个是154px宽的图像。脚本一直运行良好,直到我去重命名文件!文件上传重命名rand.ext
我想将文件完全重命名为一个随机数,然后是原始扩展名。
我有随机数后跟一个。在变量$ ran2和原始文件扩展到变量$ ext - 我相信我有!
它一直在工作,直到我想在脚本的底部添加重命名!
我相信这是错误的部分:< - 我还没有得到一个变量的文件扩展名!
$filename = "uploads/original/". $ran2.$ext;
$filename1 = "uploads/thumbs/". $ran2.$ext;
但我还没有得到最模糊的想法是什么改变它使它工作!
<?php
error_reporting(0);
$change="";
$abc="";
define ("MAX_SIZE","800");
$ran = rand() ;
$ran2 = $ran.".";
function getExtension($str) {
$i = strrpos($str,".");
if (!$i) { return ""; }
$l = strlen($str) - $i;
$ext = substr($str,$i+1,$l);
return $ext;
}
$errors=0;
if($_SERVER["REQUEST_METHOD"] == "POST")
{
$image =$_FILES["file"]["name"];
$uploadedfile = $_FILES['file']['tmp_name'];
if ($image)
{
$filename = stripslashes($_FILES['file']['name']);
$extension = getExtension($filename);
$extension = strtolower($extension);
if (($extension != "jpg") && ($extension != "jpeg") && ($extension != "png") && ($extension != "gif"))
{
echo 'Unknown Image extension';
$errors=1;
}
else
{
$size=filesize($_FILES['file']['tmp_name']);
if ($size > MAX_SIZE*1024)
{
echo 'You have exceeded the size limit!';
$errors=1;
}
if($extension=="jpg" || $extension=="jpeg")
{
$uploadedfile = $_FILES['file']['tmp_name'];
$src = imagecreatefromjpeg($uploadedfile);
}
else if($extension=="png")
{
$uploadedfile = $_FILES['file']['tmp_name'];
$src = imagecreatefrompng($uploadedfile);
}
else
{
$src = imagecreatefromgif($uploadedfile);
}
echo $scr;
list($width,$height)=getimagesize($uploadedfile);
$newwidth=520;
$newheight=($height/$width)*$newwidth;
$tmp=imagecreatetruecolor($newwidth,$newheight);
$newwidth1=154;
$newheight1=($height/$width)*$newwidth1;
$tmp1=imagecreatetruecolor($newwidth1,$newheight1);
imagecopyresampled($tmp,$src,0,0,0,0,$newwidth,$newheight,$width,$height);
imagecopyresampled($tmp1,$src,0,0,0,0,$newwidth1,$newheight1,$width,$height);
$filename = "uploads/original/". $ran2.$ext;
$filename1 = "uploads/thumbs/". $ran2.$ext;
imagejpeg($tmp,$filename,100);
imagejpeg($tmp1,$filename1,100);
imagedestroy($src);
imagedestroy($tmp);
imagedestroy($tmp1);
}}
}
//If no errors registred, print the success message
if(isset($_POST['Submit']) && !$errors)
{
echo 'Image Uploaded Successfully!';
}
?>
你有错误报告吗?你收到一个错误? – Josh 2012-01-17 01:07:24
你看到什么错误? – 2012-01-17 01:07:50
我没有看到一个错误,因为我不认为我有从原来的文件扩展名剥离和存储在$ ext变量 – 2012-01-17 01:08:51