我遇到了一些PHP代码的问题,我似乎不能理解为什么它不能工作。
所以,长话短说,我正在创建一个社交网站,允许用户上传他们自己的头像。为了不让其他人能够查看每个人的照片,我正在制作它,以便用户上传个人资料照片,它创建了一个新的随机生成的目录。当我单击Upload时,它没有创建目录。(此时不应将任何图片放入目录中,只应创建目录,但并未创建)。谢谢你的帮助。
PHP代码:
if (isset($_FILES['profilepic'])) { if
(((@$_FILES["profilepic"]["type"]=="image/jpeg") ||
(@$_FILES["profilepic"]["type"]=="image/png") ||
(@$_FILES["profilepic"]["type"]=="image/gif"))&&(@$_FILES["profilepic"]["size"]
< 1048576)) //1 Megabyte { $chars =
"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
$rand_dir_name = substr(str_shuffle($chars), 0, 15);
mkdir("./userdata/profile_pics/$rand_dir_name");
}
else
{
}
}HTML代码:
<p style="font-size: 20px;">Upload a Profile Picture</p><br />
<form action="" method-"POST" enctype="multipart/form-data">
<img src="./img/default_pic.png" width="70" height="70">
<input type="file" name="profilepic" /><br />
<i>Your Profile Picture must <b>not</b> violate any of the <a href="#">Terms and Conditions</a>!</i><br />
<input type="submit" name="uploadpic" value="Upload Image">
</form>发布于 2014-01-18 03:53:45
如果您的括号和其他代码是正确的,则可能是权限的目录有问题,如果您在Linux服务器上,或者/并且尚未创建嵌套目录
尝尝这个
mkdir ("./userdata/profile_pics/$rand_dir_name", 0777 , true); 第二个参数是八进制值,这给了它最大的权限,第三个参数允许mkdir创建像userdata和profile_pics这样的嵌套目录。
https://stackoverflow.com/questions/21194516
复制相似问题