我有一个简单的PHP图像上传器,代码如下。
<?php
if(isset($_FILES['image'])){
$errors= array();
$file_name = $_FILES['image']['name'];
$file_size =$_FILES['image']['size'];
$file_tmp =$_FILES['image']['tmp_name'];
$file_type=$_FILES['image']['type'];
$file_ext=strtolower(end(explode('.',$_FILES['image']['name'])));
$expensions= array("jpeg","jpg","png");
if(in_array($file_ext,$expensions)=== false){
$errors[]="extension not allowed, please view all of the allowed extensions before uploading.";
}
if($file_size > 2097152){
$errors[]='File size must be excately 2 MB';
}
$file_name = mt_rand(100000000,999999999);
if(empty($errors)==true){
move_uploaded_file($file_tmp,"images/".$file_name);
echo "<script type=\"text/javascript\">swal({ title: 'Success!', html: 'Your image has been uploaded <a href=\"/images/$file_name\">here</a> ' });</script>";
}else{
print_r($errors);
}
}
?>
我最近添加了这个脚本
$file_name = mt_rand(100000000,999999999);
因此每张图片都有自己独特的网址,问题是图片末尾没有.jpg,.png /文件扩展名。当我拍摄图片的链接并在最后添加一个.jpg时,它会给我一个404错误。 (而且我知道该文件是jpg)
修改
为了澄清,网址将如下所示www.websitehere / com / images / 324686653
但是当我将扩展名添加到这样的结尾时..
www.websitehere / com / images / 324686653.png它会给我一个404
答案 0 :(得分:0)
感谢Armin帮助我回答这个......
所以这就是我所做的,我补充说:
move_uploaded_file($file_tmp,"images/".$file_name.".".$file_ext);
然后补充说:
<a href=\"/images/$file_name.$file_ext\">here</a>
希望这有帮助!