php图片上传数据库代码 php上传图片到数据库完整代码

php 上传图片 存入数据库

代码示例

成都创新互联公司主要从事成都网站设计、成都网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务襄阳,十年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18982081108

upload.htm

form enctype="multipart/form-data" action="upload.php" method="post"

input type="hidden" name="max_file_size" value="100000"

文件名:input name="filename"br

文件:input name="userfile" type="file"br

input type="submit" value="上传文件"

/form

upload.php

?

copy($userfile,$_POST['filename']);

echo $userfile."-用户上传到服务器上的文件临时存放的名称br";

echo $userfile_name."-在用户机器上该文件的原始名称br";

echo $userfile_size."-上传文件的实际字节数br";

echo $userfile_type."-如果用户的浏览器提供了这个信息的话,它表示mime的类型。例如image/gifbr";

?

a href="upload.htm"继续上传/a

很简单,关键的只有一句copy就搞定了,存入数据库嘛,也很简单。

你都不说是啥子数据库。唉!其实光要代码在我以前的论坛中都是不允许的。

求php同时上传两张图片并根据时间存入数据库!根据下面的代码来修改!

我给你个简单的吧 这个可以实现三个一起上传 这个是我自己用的 做了点调整

uploadCore.php 页面代码

?php

/*

* @(#)UploadFile.php (beta) 2005/2/19

*

* exBlog上传附件类,可同时处理用户多个上传文件。效验文件有效性后存储至指定目录。

* 可返回上传文件的相关有用信息供其它程序使用。(如文件名、类型、大小、保存路径)

* 使用方法请见本类底部(UploadFile类使用注释)信息。

*/

class UploadFile {

var $user_post_file = array(); //用户上传的文件

var $user_name_u = array();//username

//var $user_name_y = array(); //usertype

var $save_file_path; //存放用户上传文件的路径

var $max_file_size; //文件最大尺寸

var $last_error; //记录最后一次出错信息

//默认允许用户上传的文件类型

var $allow_type = array('gif', 'jpg', 'png', 'zip', 'rar', 'txt', 'doc', 'pdf');

var $final_file_path; //最终保存的文件名

var $save_info = array(); //返回一组有用信息,用于提示用户。

/**

* 构造函数,用与初始化相关信息,用户待上传文件、存储路径等

*

* @param Array $file 用户上传的文件

* @param String $path 存储用户上传文件的路径

* @param Integer $size 允许用户上传文件的大小(字节)

* @param Array $type 此数组中存放允计用户上传的文件类型

*/

function UploadFile($file, $uname, $path, $size = 2097152, $type = '') {

$this-user_name_u = $uname;

//$this-user_name_y = $utype;

$this-user_post_file = $file;

$this-save_file_path = $path;

$this-max_file_size = $size; //如果用户不填写文件大小,则默认为2M.

if ($type != '')

$this-allow_type = $type;

}

/**

* 存储用户上传文件,检验合法性通过后,存储至指定位置。

* @access public

* @return int 值为0时上传失败,非0表示上传成功的个数。

*/

function upload() {

for ($i = 0; $i count($this-user_post_file['name']); $i++) {

//如果当前文件上传功能,则执行下一步。

if ($this-user_post_file['error'][$i] == 0) {

//取当前文件名、临时文件名、大小、扩展名,后面将用到。

$userty = $this-user_name_y[$i];

$uuname = $this-user_name_u[$i];

$name = $this-user_post_file['name'][$i];

$tmpname = $this-user_post_file['tmp_name'][$i];

$size = $this-user_post_file['size'][$i];

$mime_type = $this-user_post_file['type'][$i];

$type = $this-getFileExt($this-user_post_file['name'][$i]);

//检测当前上传文件大小是否合法。

if (!$this-checkSize($size)) {

$this-last_error = "这个文件的大小太大了. 您上传的文件名: ".$name;

$this-halt($this-last_error);

continue;

}

//检测当前上传文件扩展名是否合法。

if (!$this-checkuplod($type)) {

$this-last_error = "允许上传文件类型: .".$type." 您上传的文件名: ".$name;

$this-halt($this-last_error);

continue;

}

//检测当前上传文件是否非法提交。

if(!is_uploaded_file($tmpname)) {

$this-last_error = "文件非法提交. 您上传的文件名: ".$name;

$this-halt($this-last_error);

continue;

}

//移动文件后,重命名文件用。

$basename = $this-getBaseName($name, ".".$type);

//移动后的文件名

$saveas = $basename."-".time().".".$type;

//$saveas = $basename.".".$type;

//组合新文件名再存到指定目录下,格式:存储路径 + 文件名 + 时间 + 扩展名

$this-final_file_path = $this-save_file_path."/".$saveas;

if(!move_uploaded_file($tmpname, $this-final_file_path)) {

$this-last_error = $this-user_post_file['error'][$i];

$this-halt($this-last_error);

continue;

}

//存储当前文件的有关信息,以便其它程序调用。

$this-save_info[] = array("uname" = $uuname,"name" = $name, "type" = $type,

"mime_type" = $mime_type,

"size" = $size, "saveas" = $saveas,

"path" = $this-final_file_path);

}

}

return count($this-save_info); //返回上传成功的文件数目

}

/**

* 返回一些有用的信息,以便用于其它地方。

* @access public

* @return Array 返回最终保存的路径

*/

function getSaveInfo() {

return $this-save_info;

}

/**

* 检测用户提交文件大小是否合法

* @param Integer $size 用户上传文件的大小

* @access private

* @return boolean 如果为true说明大小合法,反之不合法

*/

function checkSize($size) {

if ($size $this-max_file_size) {

return false;

}

else {

return true;

}

}

/**

* 检测用户提交文件类型是否合法

* @access private

* @return boolean 如果为true说明类型合法,反之不合法

*/

function checkType($extension) {

foreach ($this-allow_type as $type) {

//echo "pre";

//print_r($type);

//print_r($extension);

$str=substr($extension['name'][0],strrpos($extension['name'][0],'.')+1);

//echo $str;

//exit();

if (strcasecmp($str, $type) == 0)

return true;

}

return false;

}

function checkuplod($extension) {

foreach ($this-allow_type as $type) {

//echo "pre";

//print_r($type);

//print_r($extension);

//$str=substr($extension['name'][0],strrpos($extension['name'][0],'.')+1);

//echo $str;

//exit();

if (strcasecmp($extension, $type) == 0)

return true;

}

return false;

}

/**

* 显示出错信息

* @param $msg 要显示的出错信息

* @access private

*/

function halt($msg) {

printf("bUploadFile Error:/b %s br\n", $msg);

exit();

}

/**

* 取文件扩展名

* @param String $filename 给定要取扩展名的文件

* @access private

* @return String 返回给定文件扩展名

*/

function getFileExt($filename) {

$stuff = pathinfo($filename);

return $stuff['extension'];

}

/**

* 取给定文件文件名,不包括扩展名。

* eg: getBaseName("j:/hexuzhong.jpg"); //返回 hexuzhong

*

* @param String $filename 给定要取文件名的文件

* @access private

* @return String 返回文件名

*/

function getBaseName($filename, $type) {

$basename = basename($filename, $type);

return $basename;

}

}

?

调用和使用方法

$tmp=$Form;

require ('uploadCore.php');

//设置允许用户上传的文件类型。

$type = array('gif', 'jpg', 'png', 'zip', 'rar', 'txt');

//实例化上传类,第一个参数为用户上传的文件组、第二个参数为存储路径、

//第三个参数为文件最大大小。如果不填则默认为2M

//第四个参数为充许用户上传的类型数组。如果不填则默认为gif, jpg, png, zip, rar, txt, doc, pdf

$upload = new UploadFile($user_upload_file,$user_name, $pathy, 500000, $type);

//print"pre";

//print_r($upload);

//上传用户文件,返回int值,为上传成功的文件个数。

$num = $upload-upload();

if ($num != 0) {

//echo "上传成功br";

$jeff_upload_info=$upload-getSaveInfo();

//取得文件的有关信息,文件名、类型、大小、路径。用print_r()打印出来。

//print_r($jeff_upload_info['uname']);

//print"pre";

//print_r($jeff_upload_info);

//exit();

//格式为: Array

// (

// [0] = Array(

// [name] = example.txt

// [type] = txt

// [size] = 526

// [path] = j:/tmp/example-1108898806.txt

// )

// )

//获得文件保存路径或者其他的信息

for ($jeff_upload_success_num = 0; $jeff_upload_success_num $num; $jeff_upload_success_num++)

{

$tmp['zz_upload_file'] = $jeff_upload_info[$jeff_upload_success_num]['uname'];

$tmp['zz_user_name'] = $jeff_upload_info[$jeff_upload_success_num]['name'];

$tmp['zz_user_uname'] = $jeff_upload_info[$jeff_upload_success_num]['saveas'];

$tmp['zz_size'] = $jeff_upload_info[$jeff_upload_success_num]['size'];

$tmp['zz_addtime'] = date("Y-m-d");

$tmp['zz_passtime'] = date("Y-m-d");

//print"pre";

//print_r($tmp);

$q_sql = data_insert($tmp,'hczb_zzwd');//插入数据库类

//print_r($q_sql);

//$jeff_upload_success_url = "\r\n".''.$jeff_upload_info[$jeff_upload_success_num]['path'].'[/img]';

//$jeff_upload_success_img .= $jeff_upload_success_url; //获得代码

}

if($q_sql)

{

echo "scriptwindow.location.href='third.php';/script";

$_SESSION['f'] = 3;

}

else

{

echo "scriptalert('sorry,操作失败');window.location.href='third.php';/script";;

}

//echo $num."个文件上传成功";

}

else {

echo "scriptalert('sorry,上传失败,允许上传的格式是:'".$type."'');window.location.href='third.php';/script";

}

表单调用:

table width="91%" border="0" align="center" cellpadding="0" cellspacing="0" style="margin-top:12px;"

tr

td valign="top" fieldset

legendimg src="images/third_11.jpg" //legend

table width="98%" border="0" cellspacing="0" cellpadding="0" style="margin-top:12px;" align="center"

tr

td class="tianjie"table width="100%" border="0" cellspacing="0" cellpadding="0"

tr

td width="16%" align="center"附件序号 /td

td width="34%" align="center"附件名称 /td

td width="43%" align="center"附件说明/td

td width="7%" align="center" /td

/tr

/table

table width="100%" border="0" cellspacing="0" cellpadding="0"

tr

td width="16%" align="center"附件一 /td

td width="38%" align="center"input name="user_upload_file[]" type="file" class="bg" id="filename" size="16" //td

td width="43%" align="center"table width="100%" border="0" cellspacing="0" cellpadding="0"

tr

td width="10" align="right"img src="images/input_l.gif" width="6" height="28" //td

td width="120"

input name="user_name[]" type="text" id="user_name" class="srk" size="35" onchange="clear_errors(document.all.dis_error_user_name,this);"/ /td

td width="9" align="left"img src="images/input_r.gif" width="5" height="28" //td

/tr

/table/td

td width="3%" align="center" /td

/tr

/table

table width="100%" border="0" cellspacing="0" cellpadding="0" class="lx"

tr

td width="16%" align="center"附件二 /td

td width="38%" align="center"input name="user_upload_file[]" type="file" class="bg" id="filename" size="16" //td

td width="43%" align="center"table width="100%" border="0" cellspacing="0" cellpadding="0"

tr

td width="10" align="right"img src="images/input_l.gif" width="6" height="28" //td

td width="120"

input name="user_name[]" type="text" id="user_name1" class="srk" size="35" onchange="clear_errors(document.all.dis_error_user_nameo,this);"/ /td

td width="9" align="left"img src="images/input_r.gif" width="5" height="28" //td

/tr

/table/td

td width="3%" align="center" /td

/tr

/table

table width="100%" border="0" cellspacing="0" cellpadding="0"

tr

td width="16%" align="center"附件三 /td

td width="38%" align="center"input name="user_upload_file[]" type="file" class="bg" id="filename" size="16" //td

td width="43%" align="center"table width="100%" border="0" cellspacing="0" cellpadding="0"

tr

td width="10" align="right"img src="images/input_l.gif" width="6" height="28" //td

td width="120"

input name="user_name[]" type="text" id="user_name2" class="srk" size="35" onchange="clear_errors(document.all.dis_error_user_namet,this);"/ /td

td width="9" align="left"img src="images/input_r.gif" width="5" height="28" //td

/tr

/table/td

td width="3%" align="center" /td

/tr

/table

table width="100%" border="0" cellspacing="0" cellpadding="0" style="margin:15px;"

tr

td align="center"input type="submit" name="sub" value=" " style="border:0px; width:166px; height:28px; background:url(images/third_19.jpg) no-repeat; cursor:hand" //td

/tr

/table

/td

/tr

/table

/fieldset/td

/tr

/table

有哪里不明白的 M我 告诉你

PHP上传图片 图片地址输入数据库中

下面是一个简单的php上传图片到服务器图片名存入数据库的例子。因为我的机子上没有装mysql所以没有测试。但是如果出现问题只要小改动应该就可以了。同时这只是基本的上传示例,所以功能也并不完善。存入数据库的是文件名。而不是完整的http地址。这样子方便网站整体移动。

?

$db = mysql_connect("127.0.0.1", "huoreee","lljghkg");//连接mysql数据库,地址,用户名,密码

mysql_query("SET NAMES 'GBK'");//中文乱码解决

mysql_select_db("mydata",$db);//选择数据库名称

if($_POST[['filename']""){

copy($userfile,$_POST['filename']); //上传图片服务器当前文件所在文件夹

$exec="insert into imagedata (i_name) value('".$_POST['filename']."')";//sql添加语句,添加图片名到数据库

mysql_query($exec);//执行添加sql操作

header("Location: 这个网页地址/名");//改一下,添加成功转回本页

}else{

header("Location: 这个网页地址/名");//改一个,添加不成功转回本页

}

?

!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""

html xmlns=""

head

meta http-equiv="Content-Type" content="text/html; charset=gb2312" /

title无标题文档/title

/head

body

form enctype="multipart/form-data" action="upload.php" method="post"

input type="hidden" name="max_file_size" value="100000"

文件名:input name="filename"br

文件:input name="userfile" type="file"br

input type="submit" value="上传文件"

/form

/body

/html


网页标题:php图片上传数据库代码 php上传图片到数据库完整代码
当前路径:http://scyanting.com/article/dosepjo.html