HI
我有一个论坛,我正在考虑如何做一个“附件”功能。 你知道如果你创建一个线程,你可以选择上传文件并将其附加到帖子中。
我应该在表格文件中创建一个名为附件的表,其中包含文件ID的id吗?什么是最好的方式。我希望您能够上传超过1个附件。如果它是一张图片显示图片的一点点缩影。
我该如何检查文件是否存在等?你会怎么做?
抱歉我的英语不好
答案 0 :(得分:0)
你的问题太宽泛了,但我会给你一些指示:
关于上传过程,验证和图片大小调整,您可以阅读更多内容(我建议您按此顺序阅读):
http://pt.php.net/manual/en/function.exif-imagetype.php -> image validation
http://php.net/manual/en/function.move-uploaded-file.php -> upload process
http://pt.php.net/manual/en/book.image.php -> image resizing & manipulation
答案 1 :(得分:0)
保存文件的另一种可能方法:将二进制代码保存在数据库中的blob中。我不确定这种方法是否有任何优势,但我个人不必处理文件上传。
最重要的是,小心上传数据!
答案 2 :(得分:-1)
老实说,我会在帖子表上创建一个名为“附件”的列,然后用逗号分隔的附件文件名字符串
file1.png,file2.png,file3.png
然后当你进入PHP时,只需将其爆炸
$attachments = explode(',', $string);
并检查您已放入上传目录的每个文件:
foreach($attachments as $file)
{
if(!is_file($upload_directory.$file))
{
$error[] = $file . " is not a valid attachment";
// run cleanup script
}
}
要获取附件,这是非常简单的代码,但您需要验证并清理传入的文件。
foreach($_FILES as $array)
{
// Sanitize Here
die("SANITIZE HERE!");
move_uploaded_file($array['tmp_name'], $upload_dir);
}