Php 仅当格式为jpg/png时上载文件
我编写此脚本是为了让用户上传个人资料图片:Php 仅当格式为jpg/png时上载文件,php,Php,我编写此脚本是为了让用户上传个人资料图片: if(isset($_POST['submit'])){ $path = $_FILES["uploaded_image"]["name"]; $ext = pathinfo($path, PATHINFO_EXTENSION); //extracts file extension $tempimgloc = $_FILES["uploaded_image"]["tmp_name"]; $imagepic = ''.$_SESSI
if(isset($_POST['submit'])){
$path = $_FILES["uploaded_image"]["name"];
$ext = pathinfo($path, PATHINFO_EXTENSION); //extracts file extension
$tempimgloc = $_FILES["uploaded_image"]["tmp_name"];
$imagepic = ''.$_SESSION['userid'].'-'.$_SESSION['username'].'.'.$ext.'';
$img_url = 'img/uploaded/'.$imagepic.'';
if(move_uploaded_file($tempimgloc, "img/uploaded/".$imagepic)){
mysql_query('UPDATE table SET img = "'.$img_url.'" WHERE userid = '.$_SESSION['userid'].'');
echo '<script>window.location = "success.php";</script>';
} else {
echo 'error';
}
}
谢谢你的帮助 什么是var_dump$ext?这会让你明白为什么它不起作用,不要使用mysql\u查询。阅读上面的红色大框“不工作”->,这是否意味着所有文件类型都已上载或根本没有文件上载?你知道如果你把它加到你的第一个if语句中。。。$ext变量仍然是空的吗?我可以补充一点,检查扩展在安全性方面是毫无用处的吗?我可以编写一个恶意脚本,将文件扩展名改为.jpg,然后它将被允许上传,并使用其他漏洞执行。一种更好的检查方法是使用getimagesize和返回元素以及索引2 checkout和
if($ext == 'jpg' or $ext == 'png'){
...
}