我不知道哪种方式可以更好地用于在本地服务器上传和保存文件。 例如,我看到有人在mysql字段中插入了图片的链接,我现在很困惑...... 我想上传一些文件并在其他情况下显示... 什么是最好和最安全的方式?
答案 0 :(得分:2)
将所有图像存储在名为photos
的文件夹中。然后,在数据库中保存文件的索引,为其分配索引号和其他信息。将文件保存在照片文件夹中,将其重命名为[index_number].jpg
,或者需要任何扩展名。例如,如果我上传文件coolpic.jpg
,则会为其分配索引号2845.文件本身保存在photos/2845.jpg
。
答案 1 :(得分:1)
保存在数据库中可能会出现一些问题,例如数据库性能下降(读取和写入大文件),数据库崩溃(删除行字段编辑的结果),备份问题 (因为庞大的转储文件,当表需要修复时会出现一些问题。 来自mySQL的读取文件将再次由Apache提供。 我建议您使用带有重写模式的正常路径(虚拟URL)
答案 2 :(得分:0)
不要使用img链接..它不是必需的,它只是让你的DB更大。
你只是存储“picture.jpg”
并在文档中使用<img src="images/'.$row['image'].'">
更好的是,你可以为它创建一个功能(显示图片)。
像
function DImage($image)
{
//you can do miracles here like checking images types, if is file and so on, padding, even adding divs and vspaces..
$output = '<img src="imagesfolder/'.$image.'">';
return $output;
}
所以你要做的就是...... echo DImage($ row ['image']);
PS:如果你询问$ _POST&amp; $ _FILE上传,当然..你不可能维护图片,名称和更新我确定..