php上传图片无法显示的问题-php教程

资源魔 19 0

把图片上传到数据库而后显示普通的做法是专门写一个php页面,经过GET或POST办法猎取图片的id、查问数据库、header函数输入图片类型、再echo图片数据就能够了。

成绩概况:

php能够经过表单上传文件到数据库的blob字段,而后输入,其实更好的做法是把文件保留到效劳器,只正在数据库中记载相干信息就能够了,然而没有是任什么时候候都能照本人的设法主意去做。这没有,我只能上传图片到数据库而后显示正在网页,后果却遇到了成绩:图片无奈显示。

把图片上传到数据库而后显示普通的做法是专门写一个php页面,经过GETPOST办法猎取图片的id、查问数据库、header函数输入图片类型、再echo图片数据就能够了,这个办法是不成绩的,可是我却出了成绩,图片老是无奈显示。

正在网上查问了不少材料,试了不少办法,都没有行,最初正在stack overflow上看到一个答复,因为是英文就没有原句援用了,内容是header这个函数有些非凡,要小心没有要正在header地位前有其余的header或此外甚么内容,后果就是这个成绩,因为我写了一个php文件蕴含了一些通用函数,此中也有javascript的函数,我正在输入图片的php文件把require语句去掉就好了,图片就可以输入了。

<!DOCTYPE html>
<html>
<head>
  <meta http-equiv="Content-Type" content="html/text;charset=utf-8"/>
</head>
<body>
<form action="#"  name="form" method="post" enctype="multipart/form-data">
<p>
<input type="file" name="img" value="抉择上传文件"/>
</p>
<input type="submit" value="上传"/>
</form>
</body>
</html>
<?php
date_default_timezone_set("PRC");         //设置时区
if(count($_FILES)>0){ 
$sort = array("image/jpeg","image/jpg","image/gif","image/pdg");
//判别能否是图片类型
if(in_array($_FILES['img']['type'],$sort)){ 
 $img = "img";    //猎取上传到的文件夹地位
//判别文件夹能否存正在 ,假如没有存正在创立一个
if(!file_exists($img)){
   mkdir("$img",0700);        //0700最高权限
}
$time=date("Y_m_d_H_i_s");     //猎取以后工夫
$file_name = explode(".",$_FILES['img']['name']);         //$_FILES['img']['name'] 上传文件的称号 explode字符串打断转字符串
$file_name[0]=$time; 
$name = implode(".",$file_name);    //implode 把数组拼接成字符串
$img_name = "img/".$name;
if(move_uploaded_file($_FILES['img']['tmp_name'],$img_name)){   //move_uploaded_file 挪动文件
   echo "<center><img style='width:1000px;' src='$img_name'>
   <p>
   <a href='img_uploading.php'>从新上传</a></p></center>";
}else{
     echo "上传失败"; 
}
}else{ 
echo "没有是图片类型";
}
}
?>

不能不说编程有时分是件很让人头疼的事,仅仅由于一个语句,却花了我一地利间去测验考试各类办法;可是编程又是件无意思的事,由于正在处理了成绩,顺序胜利运转的时辰,那种造诣感、餍足感真的让人难以忘却。

更多学习教程:PHP 图片上布道程

以上就是php上传图片无奈显示的成绩的具体内容,更多请存眷资源魔其它相干文章!

标签: php开发教程 php开发资料 php开发自学 php,数据库,html

抱歉,评论功能暂时关闭!