【PHP原生】动态多文件上传并将路径存储在数据库
2018-10-16 11:24
417 查看
动态多文件上传并将路径存储在数据库
1、上传页面index.html
[code]<!DOCTYPE html > <html> <head> <metahttp-equiv="Content-Type"content="text/html; charset=utf-8"/> <title>多图片上传</title> <script> //全局变量,代表文件域的个数,并用该变量区分文件域的name属性 var file_count =1; //增加文件 域 function additem(id){ if(file_count >9){ alert("注意:最多上传十张图片!"); return; } //定义行变量row;单元格变量cell;单元格内容变量str。 var row,cell,str; //在指定id的table中插入一行 row =eval("document.all["+'"'+id+'"'+"]").insertRow(); if(row !=null){ //设置行的背景颜色 row.bgColor="white"; //在行中插入单元格 cell = row.insertCell(); //设置str的值,包括一个文件域和一个删除按钮 str='<input onselectstart="return false" class="tf" onpaste="return false" type="file" name="file['+ file_count +']" onkeydown="return false;"/>'; str +=" <input type="+'"'+"button"+'"'+" value="+'"'+"删除"+'"'+" onclick='deleteitem(this,"+'"'+"tb"+'"'+");'>"; //文件域个数增加 file_count++; //设置单元格的innerHTML为str的内容 cell.innerHTML=str; } } //删除文件域 function deleteitem(obj,id){ var rowNum,curRow; curRow = obj.parentNode.parentNode; rowNum =eval("document.all."+id).rows.length -1; eval("document.all["+'"'+id+'"'+"]").deleteRow(curRow.rowIndex); file_count--; } </script> </head> <body> <formaction="upload.php"method="post"enctype="multipart/form-data"> <inputonselectstart="returnfalse"class="tf"onpaste="returnfalse"type="file"name=file[0]onkeydown="returnfalse;"/> <inputtype=buttonvalue="增加"onclick='additem("tb")'/><br/> <tablecellspacing="0"id="tb"style="width:400px"> </table> <br/> <br/> <inputtype="submit"name="submit"value="上传"/> <inputtype="reset"name="reset"value="重置"/> </form> </body> </html>
2、表单处理页面
[code]<?php include "conn.php"; //设置编码为UTF-8,以避免中文乱码 header('Content-Type:text/html;charset=utf-8'); $fileArray = $_FILES['file']; //获取多个文件的信息 $upload_dir = 'upload/'; //保存上传文件的目录 foreach ($fileArray['error'] as $key => $error) { if (($fileArray["type"][$key] == "image/gif" || $fileArray["type"][$key] == "image/jpeg" || $fileArray["type"][$key] == "image/png" || $fileArray["type"][$key] == "image/pjpeg") && $fileArray["size"][$key] < 1000000) { //限制上传文件大小_单位B。1M=1024KB=1048576 B if ($error == UPLOAD_ERR_OK) { //PHP常量UPLOAD_ERR_OK=0,表示上传没有出错 $temp_name = $fileArray['tmp_name'][$key]; $file_name = date("YmdHis") . rand() . '.png'; //日期+随机数命名图片 move_uploaded_file($temp_name, $upload_dir . $file_name); //存入数据库命名和路径 $title = $file_name; $path = $upload_dir . $file_name; // 注意valuse后的格式 (' " . $变量名 . " ') $query = mysql_query($conn, "insert into images(title,path) values ('" . $title . "','" . $path . "')"); echo "<script>alert('上传成功!');window.location.href='up_images.php';</script>"; } else { echo "<script>alert('上传失败!');window.location.href='up_images.php';</script>"; } } }
相关文章推荐
- 【PHP原生】单文件上传并将路径存储在数据库
- php实现文件上传到指定文件夹,文件路径或名字存入数据库,如何实现啊
- php封装单文件上传到数据库(路径)
- php实现文件上传到指定文件夹,文件路径或名字存入数据库,如何实现啊
- 怎么把上传的图片路径动态的存储在数据库中啊
- 动态创建web路径,并存储临时上传文件
- php封装单文件上传到数据库(路径)
- php文件上传并将其路径保存到数据库
- js上传文件带参数,并且,返回给前台文件路径,解析上传的xml文件,存储到数据库中
- php 遍历文件夹及文件,获取文件名和文件路径存入数据库中
- PHP上传文件时自动分配路径的方法
- Java图形界面(GUI) 动态获取上传或下载文件的路径问题
- .NET下fckeditor动态设置文件上传路径,解决多用户多路径的问题。
- PHP部分--图片上传服务器、图片路径存入数据库,并读取
- 上传文件通过mybatis存储到数据库的BLOB格式中
- php上传图片到指定位置路径保存到数据库的具体实现
- php原生实现文件上传功能
- 用uploadfile组件实现动态文件上传到ORACLE数据库
- PHP上传图片到数据库和存储到本地文件夹的方法
- java文件上传!针对各种文件上传demo实列 文件上传以及数据库保存文件名以及路径名称: