Rumah > php教程 > php手册 > php上传文件并存储到mysql数据库的方法

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

WBOY
Lepaskan: 2018-09-28 09:42:41
asal
1073 orang telah melayarinya

这篇文章主要介绍了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);
?>
Salin selepas log masuk

上传文件并保存到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);
?>
Salin selepas log masuk

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Cadangan popular
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan