>  기사  >  php教程  >  php上传文件并存储到mysql数据库的方法

php上传文件并存储到mysql数据库的方法

WBOY
WBOY원래의
2016-06-06 20:06:41985검색

这篇文章主要介绍了php上传文件并存储到mysql数据库的方法,以完整实例形式较为详细的分析了php操作文件上传与数据库存储的技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了php上传文件并存储到mysql数据库的方法。分享给大家供大家参考。具体分析如下:

下面的代码分别用于创建mysql表和上传文件保存到mysql数据库

创建mysql表:

<?php
 $con = mysql_connect("localhost", "", "");
 mysql_select_db("w3m");
 $sql = "CREATE TABLE updfiles ("
   . " id INTEGER NOT NULL AUTO_INCREMENT"
   . ", name VARCHAR(80) NOT NULL"
   . ", type VARCHAR(80) NOT NULL"
   . ", size INTEGER NOT NULL"
   . ", content BLOB"
   . ", PRIMARY KEY (id)"
   . ")";
 mysql_query($sql, $con);
 mysql_close($con);
?>

上传文件并保存到mysql中,通过insert语句插入

<?php
 $con = mysql_connect("localhost", "", "");
 mysql_select_db("w3m");
 $error = $_FILES[&#39;w3img&#39;][&#39;error&#39;];
 $tmp_name = $_FILES[&#39;w3img&#39;][&#39;tmp_name&#39;];
 $size = $_FILES[&#39;w3img&#39;][&#39;size&#39;];
 $name = $_FILES[&#39;w3img&#39;][&#39;name&#39;];
 $type = $_FILES[&#39;w3img&#39;][&#39;type&#39;];
 print("\n");
 if ($error == UPLOAD_ERR_OK && $size > 0) {
  $fp = fopen($tmp_name, &#39;r&#39;);
  $content = fread($fp, $size);
  fclose($fp);  
  $content = addslashes($content);
  $sql = "INSERT INTO fyi_files (name, type, size, content)"
   . " VALUES (&#39;$name&#39;, &#39;$type&#39;, $size, &#39;$content&#39;)";
  mysql_query($sql, $con);
  print("File stored.\n");
 } else {
  print("Database Save for upload failed.\n");
 }
 print("\n");
 mysql_close($con);
?>

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.