php上传图片代码(同时图片保存到数据库)
php上传图片代码(同时图片保存到数据库),下面提供的php上传图片代码是一款利用php copy来上传文件的,他不但可以把图片上传到服务器,同时还把图片的地址保存到了mysql数据库里面。
- // 连接数据库
- $conn = mysql_connect("localhost", "phpdb", "phpdb");
- mysql_select_db("test",$conn);
- ?>
- <?
- // 取得网页的参数
- $id'];
- // 判断该用户名是否已经存在
- $checksql="select * from image where ";
- $check_re=mysql_query($checksql,$conn);
- $num=mysql_num_rows($check_re);
- if($num!=0){
- echo "<table width='100%' align=center><tr><td align=center>";
- echo "该用户名已经存在,请选择另一个<br>";
- echo "<font color=red>上传失败!</font><br><a href='网页特效:history.back(-1)'>返回</a>";
- echo "</td></tr></table>";
- exit();
- }
- // 方法二:只保存文件名,
- // 保存文件名时,文件在php.ini配置文件中设置的upload临时目录中,也就是upload_tmp_dir 参数中
- if ($photo<>""){
- if (($photo_type== "image/pjpeg")or($photo_type == "image/gif")){
- // c:winnttemp 使php.ini配置文件中设置的upload文件的临时目录
- $photodir="c:winnttemp/";
- if(!(file_exists($photo_name))){
- // 拷贝该图片文件到设定的上传文件临时目录中
- copy($photo,$photodir.$photo_name);
- }
- }
- else{
- echo "<script language=javascript>alert('上传照片只能是jpg或者gif!');history.go(-1)</script><br>";
- echo "或者<br>";
- echo "文件名已经存在,请为图片改一个文件名";
- exit;
- }
- }
- else{
- $photo_name="";
- }
- $sql="insert into image (id, photo) values('$id', '$photo_name')";
- mysql_query($sql,$conn) or die ("插入数据失败: ".mysql_error());
- // 关闭连接
- mysql_close($conn);
- // 显示上传图片成功
- // 重定向到注册成功页面
- header("location:display_image2.php?);
- ?>
- 代码二
- <?php
- // 连接数据库
- $conn = mysql_connect("localhost", "phpdb", "phpdb");
- mysql_select_db("test",$conn);
- ?>
- <?
- // 取得网页的参数
- $id'];
- // 判断该用户名是否已经存在
- $checksql="select * from image where ";
- $check_re=mysql_query($checksql,$conn);
- $num=mysql_num_rows($check_re);
- if($num!=0){
- echo "<table width='100%' align=center><tr><td align=center>";
- echo "该用户名已经存在,请选择另一个<br>";
- echo "<font color=red>上传失败!</font><br><a href='javascript:history.back(-1)'>返回</a>";
- echo "</td></tr></table>";
- exit();
- }
- // 方法一:在mysql中保存图片文件,
- // 如果有图片文件,打开图片文件,将图片文件中的数据用函数
- // addslashes处理,然后传递给变量$data,
- // addslashes函数是给字符串加入斜线,使字符串能够顺利写入数据库中
- // 这样变量$data 中保存的就是图片文件的数据了
- if ($photo<>""){
- $fp=fopen($photo,"r");
- $data=addslashes(fread($fp,filesize($photo)));
- }
- $password=md5($password);
- $sql="insert into image (id,photo) values('$id','$data')";
- mysql_query($sql,$conn) or die ("插入数据失败: ".mysql_error());
- // 关闭连接
- mysql_close($conn);
- // 显示上传图片成功
- // 重定向到注册成功页面
- header("location:display_image1.php?);