如果我想从使用PHP和MySQL的用户那里保存文件,我会使用什么数据类型?

如果我想从使用PHP和MySQL的用户那里保存文件,我会使用什么数据类型?,php,mysql,file,types,Php,Mysql,File,Types,我希望用户能够上传他们的简历在PDF,.txt,.doc,.docx;并允许潜在雇主下载该文件 我应该使用什么数据类型?在MSQL中,我会使用varbinary(max),对吗?但由于我是MySQL的新手,我有点困惑 您必须使用类型您应该使用保存文件路径的varchar。文件本身不应该存储在数据库中。在MySQL中存储DOC之类的二进制文档通常是个坏主意。我只想将它们上传到文件系统或转换成明文,然后再以BLOB或varchar的形式保存到MySQL。我同意上面的大多数观点。通常情况下,将文件存储

我希望用户能够上传他们的简历在PDF,.txt,.doc,.docx;并允许潜在雇主下载该文件


我应该使用什么数据类型?在MSQL中,我会使用varbinary(max),对吗?但由于我是MySQL的新手,我有点困惑

您必须使用类型

您应该使用保存文件路径的varchar。文件本身不应该存储在数据库中。

在MySQL中存储DOC之类的二进制文档通常是个坏主意。我只想将它们上传到文件系统或转换成明文,然后再以BLOB或varchar的形式保存到MySQL。

我同意上面的大多数观点。通常情况下,将文件存储在数据库中不是一个好主意,不像Facebook在数据库中存储缩略图。

没有人应该提到整个数据库,不要将文件存储在数据库中到flickr。:)

在数据库中存储文件,甚至是大文件,不仅仅是一种编程实践,更是一个关于硬件的问题。如果您的服务器(或服务器场)能够处理业务,那么它就没有真正的缺点,也有优势。最主要的一点是数据库中的文件不会“卡在”服务器上。文件可以放在数据库的任何位置,并根据需要进行复制


与所有问题一样,没有一个答案是正确的。。您必须根据实际项目需求和未来计划做出最佳决策

在现阶段,上述两种选择都有其利弊。问题是,

  • 当存储为blob和
  • 演出会受到影响吗
相对于从服务器存储和下载它

filename.php在此文件中使用form post方法

Upload File<a href="download.php?f=<?php echo $upload_file ?>"><?php echo $upload_file ?></a>&nbsp;<input type="file" name="uploaded_file" id="uploaded_file" value="">

天哪,我喜欢这些FOSS变量名。PHP有一个名为Explode()的方法-I lol'd in class.:现在MySQL有了BLOB。这是谁提出的?文件不应该存储在数据库本身上——最好的方法是在服务器上保留存储文件的路径。+1抵消-1,因为这实际上是问题的正确答案,塞吉奥:如果a
B
inary
L
arge
OB
ject符合
a
tomicity、
c
onsistency、
i
solation和
d
urability的原则,则称之为
ACID BLOB
。欢迎来到数据库世界:)另外,正因为将文件存储到磁盘是首选,有时除了在数据库中存储文件之外别无选择。如果你需要在数据库中存储一个文件,你最好知道我们需要什么样的数据类型。没有理由拒绝回答,根据原始问题,答案是正确的。+1,有道理,对于小图像(如头像等),数据可以合理地存储在数据库中,但当处理PDF等格式的较大文档时,没有意义。路径是否允许用户下载文件?@Sergio,是的,如果您以这种方式编程PHP,则不会。如果您要存储纯文本,则应该使用
text
数据类型。
$file = $_FILES['uploaded_file'];    //receive the posted file
    $name = $file['name'];
    $path = "C:/wamp/www/mantis/uploads/" . basename($name); // 5
    if (move_uploaded_file($file['tmp_name'], $path)) {

    } else {

    }
**mysql query**
insert into tablename(upload_file)values('".$name."');