이미지를 데이터베이스에 업로드하고 표시하는 일반적인 방법은 전용 PHP 페이지를 작성하고 GET 또는 POST 메서드를 통해 이미지 ID를 얻은 후 데이터베이스에 쿼리하고 헤더 함수를 통해 이미지 유형을 출력한 다음 에코하는 것입니다. 이미지 데이터.
문제 세부 정보:
php는 양식을 통해 데이터베이스의 blob
필드에 파일을 업로드한 다음 출력할 수 있습니다. 실제로 더 좋은 방법은 파일을 저장하는 것입니다. 파일을 서버에, 데이터베이스에만 관련 정보를 기록하는 것으로 충분하지만 항상 원하는 대로 할 수는 없습니다. 아니요, 사진을 데이터베이스에 업로드한 다음 웹페이지에 표시할 수만 있는데 문제가 발생했습니다. 사진을 표시할 수 없습니다. blob
字段,然后输出,其实更好的做法是把文件保存到服务器,只在数据库中记录相关信息就可以了,但是不是任何时候都能照自己的想法去做。这不,我只能上传图片到数据库然后显示在网页,结果却遇到了问题:图片无法显示。
把图片上传到数据库然后显示一般的做法是专门写一个php页面,通过GET
或POST
方法获取图片的id、查询数据库、header函数输出图片类型、再echo图片数据就可以了,这个方法是没有问题的,可是我却出了问题,图片总是无法显示。
在网上查询了很多资料,试了很多方法,都不行,最后在stack overflow
上看到一个回答,由于是英文就不原句引用了,内容是header
这个函数有些特殊,要小心不要在header
GET
또는 POST
메서드를 통해 이미지 ID를 얻은 다음 헤더 함수를 통해 이미지를 출력한 다음 이미지 데이터를 에코합니다. 이 방법에는 문제가 없지만 이미지를 표시할 수 없는 문제가 있습니다. 인터넷에서 많은 정보를 찾아보고 여러 방법을 시도했지만 결국에는 Stack Overflow
에 대한 답변을 보았습니다. 영어로 되어 있으므로 원문은 인용하지 않겠습니다. . 내용은 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!