付潭

淡泊高远,方圆之道。 助人扶危,处世之本。 修身养性,长乐之方。 好学勤勉,成就之功。

导航

PHP上传图片到数据库和存储到本地文件夹的方法

 
文件上传必须是post,enctype="multipart/form-data"这种方式可以接收$_FILES。
最大的上传大小不能大于200M的服务器内存
<?php
//错误号处理
if($_FILES['pic']['error'] > 0)
{
  switch($_FILES['pic']['error'])  
  {
    case 1:
      echo "超过最大限制";
      break;
    case 2:
 
  }
}
限制文件上传的类型
if($_FILES['pic']['type'])
{
  list($d,$l)=explode('/',);
}
if($l != image)
{
  echo "上传错误类型";
  exit;
}else()
    $allowtype=array("png","gif");
    $arr = explode(".",$_FILES['pic']['name']);
    $hz=$arr[count($arr) -1];
    if(!in_array($hz,$allowtype))
    {
      echo "这是不允许的类型";
      exit;
    }
    
 
{
 
 
}
 
 
 
 

//文件上传
//1.表单  file文本框   表单属性
//2. 接收post的文件数据

//平常我们都用$_POST
//接收文件
/*
array(2) {
  ["img"]=>
  array(5) {
  //源文件名
    ["name"]=>
    string(26) "8a0d8cbbgw1dyjbhf4o3ej.jpg"
//文件  格式
    ["type"]=>
    string(10) "image/jpeg"
//tmp  temp  临时 文件
    ["tmp_name"]=>
    string(22) "D:\wamp\tmp\phpFAE.tmp"
//error  错误提示
    ["error"]=>
    int(0)
//size   文件大小
    ["size"]=>
    int(93943)
  }
  ["img2"]=>
  array(5) {
    ["name"]=>
    string(15) "未命名66676.jpg"
    ["type"]=>
    string(10) "image/jpeg"
//现在的网站的目录D:\wamp\www\e1215\20121211upload
    ["tmp_name"]=>
    string(22) "D:\wamp\tmp\phpFBF.tmp"
    ["error"]=>
    int(0)
    ["size"]=>
    int(193903)
  }
}

//现在的网站的目录D:\wamp\www\e1215\20121211upload
//D:\wamp\tmp\phpFBF.tmp
//以上  都是发生  服务器内部的

//我们从外部去访问图片
localhost:8088/e1215\20121211upload\abc.jpg

*/
var_dump($_FILES);

$tmp_name = $_FILES["img"]["tmp_name"]; // 临时文件地址
$filename = $_FILES['img']['name'];//这个是源文件名
$dirname = dirname(__FILE__).DIRECTORY_SEPARATOR."upload";

//make mk

//新建年
$dirname .= DIRECTORY_SEPARATOR.date("Y");
if(!file_exists($dirname))mkdir($dirname);

//新建月
$dirname .= DIRECTORY_SEPARATOR.date("m");
if(!file_exists($dirname))mkdir($dirname);

//新建日
$dirname .= DIRECTORY_SEPARATOR.date("d");
if(!file_exists($dirname))mkdir($dirname);

//这个是当前网站目录
var_dump($dirname);
move_uploaded_file($tmp_name,$dirname.DIRECTORY_SEPARATOR.$filename);

$imgsrc = "upload/".date("Y")."/".date("m")."/".date("d")."/".$filename;
?>
<img src="<?php echo $imgsrc?>">
<form action="" method="post" enctype="multipart/form-data">
<input type="file" name="img"/>
<input type="file" name="img2"/>
<input type="submit" value="上传" />
</form>

posted on 2012-12-11 16:37  付潭  阅读(1588)  评论(0编辑  收藏  举报