2010-05-02 165 views

回答

1

只需4个步骤:

  1. 你不得不安装形式正确:在表单标签添加ENCTYPE = “的multipart/form-data的”。
  2. 在你的PHP页面,你必须read the content of the file
  3. 使用mysql_real_escape_string()
  4. 使用标准查询把文件内容到你行逃离二进制数据。
+0

另外请记住,如果文件很大,您可能希望将列数据类型设置为blob或类似的东西。 – Chaim 2010-05-02 14:35:46

3

我不会推荐使用数据库文件内容,因为数据库是有限的,当谈到这一点。当然有text字段,您可以将内容放入,但即使这些字段限制在一定程度。无论如何,text字段类型将来都将被弃用。除非你真的需要拥有它,否则我会养成避开它的习惯。您可以在需要时使用fopenfgets,fclose轻松打开内容。或freadfile_get_contents而不是将其存储到数据库中,为什么不使用file_put_contents作为文件存储在服务器上。

然而,仅仅注意到,也许你指的是文件名存储在数据库中,如果是的话,会比工作的伟大,并使用一个varchar(255)应该是完美的罚款。

在这种情况下,确保有一个方法=“邮报”行动=“whatever.php”的形式设置。和ENCTYPE = "multipart/form-data"。比正常的提交按钮将触发行动,你可以直接从那里处理。您可以使用move_uploaded_file将其存储在服务器的路径中,或者如果它是文本文件,并且需要对其进行一些编辑,则上面提到的其中一种方法应该可以实现。否则,要从表单中获取文件,请使用预定义的PHP阵列$_FILES。您需要获取$_FILES['file_input_name']['tmp_name']$FILES['file_input_name']['name']值,其中file_input_name =表单中您的文件输入标记的名称属性。

+0

还有BLOB字段类型... – 2010-05-02 07:43:15