很多站长朋友们都不太清楚php图片上传技巧,今天小编就来给大家整理php图片上传技巧,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 请问一下php的pdo如何将图片路径和内容一起上传?谢谢了! 2、 PHP实现上传图片到数据库并显示输出的方法 3、 php上传图片文件常用的几个方法 4、 php怎样上传图片 5、 php怎么上传图片 6、 php 异步上传图片几种方法总结 请问一下php的pdo如何将图片路径和内容一起上传?谢谢了!思路,大概思路是这样的。一般都是将图片上传到服务器自己设定的一个目录下,同时将图片名称等信息插入数据表,数据库存图片名称路径就好了。不要将图片的二进制信息存入数据库,那样很浪费数据库空间非常不好(本人曾经这样看教程做过)。至于你说的怎么在另一个php文件引用,要么查询数据库取到图片名称路径。具体上传代码可以参考:HTML代码<form enctype="multipart/form-data" action="/help" method="POST"> <input type="hidden" name="MAX_FILE_SIZE" value="30000" /> Send this file: <input name="userfile" type="file" /> <input type="submit" value="Send File" /></form>php代码<?php print_r($_FILES['userfile']);//打印看看结果,然后查看手册$_FILES研究下吧?>
PHP实现上传图片到数据库并显示输出的方法本文实例讲述了PHP实现上传图片到数据库并显示输出的方法。分享给大家供大家参考,具体如下:
1.
创建数据表
CREATE
TABLE
ccs_image
(
id
int(4)
unsigned
NOT
NULL
auto_increment,
description
varchar(250)
default
NULL,
bin_data
longblob,
filename
varchar(50)
default
NULL,
filesize
varchar(50)
default
NULL,
filetype
varchar(50)
default
NULL,
PRIMARY
KEY
(id)
)engine=myisam
DEFAULT
charset=utf8
2.
用于上传图片到服务器的页面
upimage.html
<!doctype
html>
<html
lang="en">
<head>
<meta
charset="UTF-8">
<meta
name="viewport"
content="width=device-width,
user-scalable=no,
initial-scale=1.0,
maximum-scale=1.0,
minimum-scale=1.0">
<meta
http-equiv="X-UA-Compatible"
content="ie=edge">
<style
type="text/css">
*{margin:
1%}
</style>
<title>Document</title>
</head>
<body>
<form
method="post"
action="upimage.php"
enctype="multipart/form-data">
描述:
<input
type="text"
name="form_description"
size="40">
<input
type="hidden"
name="MAX_FILE_SIZE"
value="1000000">
<br>
上传文件到数据库:
<input
type="file"
name="form_data"
size="40"><br>
<input
type="submit"
name="submit"
value="submit">
</form>
</body>
</html>
3.
处理图片上传的php
upimage.php
<?php
if
(isset($_POST['submit']))
{
$form_description
=
$_POST['form_description'];
$form_data_name
=
$_FILES['form_data']['name'];
$form_data_size
=
$_FILES['form_data']['size'];
$form_data_type
=
$_FILES['form_data']['type'];
$form_data
=
$_FILES['form_data']['tmp_name'];
$dsn
=
'mysql:dbname=test;host=localhost';
$pdo
=
new
PDO($dsn,
'root',
'root');
$data
=
addslashes(fread(fopen($form_data,
"r"),
filesize($form_data)));
//echo
"mysqlPicture=".$data;
$result
=
$pdo->query("INSERT
INTO
ccs_image
(description,bin_data,filename,filesize,filetype)
VALUES
('$form_description','$data','$form_data_name','$form_data_size','$form_data_type')");
if
($result)
{
echo
"图片已存储到数据库";
}
else
{
echo
"请求失败,请重试";
注:图片是以二进制blob形式存进数据库的,像这样
4.
显示图片的php
getimage.php
<?php
$id
=2;//
$_GET['id'];
为简洁,直接将id写上了,正常应该是通过用户填入的id获取的
$dsn='mysql:dbname=test;host=localhost';
$pdo=new
PDO($dsn,'root','root');
$query
=
"select
bin_data,filetype
from
ccs_image
where
id=2";
$result
=
$pdo->query($query);
$result=$result->fetchAll(2);
//
var_dump($result);
$data
=
$result[0]['bin_data'];
$type
=
$result[0]['filetype'];
Header(
"Content-type:
$type");
echo
$data;
到浏览器查看已经上传的图片,看是否可以显示
是没有问题的,证明图片已经以二进制的形式存储到数据库了
更多关于PHP相关内容感兴趣的读者可查看本站专题:《php+mysql数据库操作入门教程》、《php+mysqli数据库程序设计技巧总结》、《php面向对象程序设计入门教程》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
您可能感兴趣的文章:php实现上传图片保存到数据库的方法php上传图片存入数据库示例分享php上传图片到指定位置路径保存到数据库的具体实现php中如何将图片储存在数据库里php下将图片以二进制存入mysql数据库中并显示的实现代码php
从数据库提取二进制图片的处理代码php将图片保存入mysql数据库失败的解决方法php将图片文件转换成二进制输出的方法php图片的二进制转换实现方法
php上传图片文件常用的几个方法你好,要先建立一个html代码
<form action="upload_file.php" method="post"
enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file" id="file" />
<br />
<input type="submit" name="submit" value="Submit" />
</form>
然后创建upload_file文件用$_FILE判断文件,下面是判断文件的具体信息
$_FILES["file"]["name"] - 被上传文件的名称
$_FILES["file"]["type"] - 被上传文件的类型
$_FILES["file"]["size"] - 被上传文件的大小,以字节计
$_FILES["file"]["tmp_name"] - 存储在服务器的文件的临时副本的名称
$_FILES["file"]["error"] - 由文件上传导致的错误代
希望对你有帮助!
php怎样上传图片一下代码可以实现简单的(单个的)文件上传,你看看吧:有更好的方法可以讨论
<?php
////////上传文件////////////
if(isset($_POST["sub"])){
//$upfile="upload_file/".$_FILES["file"]["name"];
$name=time();//定义变量,保存图片名,以防图片的名字相同
echo $name;
$name.=strrchr($_FILES["file"]["name"],".");//上传文件的名称
echo $name;
$num=rand(1,10);
$type=$_FILES["file"]["type"];
$size=$_FILES["file"]["size"];
$tmp_name=$_FILES["file"]["tmp_name"];
if($_FILES["fiel"]["error"]>0){
echo "上传文件有误:".$_FILES["file"]["error"]."<br/>";
}else{
echo "上传文件名为:".$name."<br>";
echo "上传文件类型为:".$type."<br>";
echo "上传文件大小为:".($size/1024)."<br>";
echo "上传到:".$tmp_name."<br>";
if(file_exists("upload_file/$name")){
echo "已经存在";
}else{
if(move_uploaded_file($tmp_name,"upload_file/$name")){
echo $name."上传成功";
}else{
echo $name."上传失败";
}
}
}
}
?>
<form method="post" action="php_upload.php" enctype="multipart/form-data">
<input type="file" name="file">
<input type="submit" name="sub" value="upload">
<input type="reset" name="res" value="reset"/>
</form>
php怎么上传图片<?php
header('Content-type:text/html;charset=UTF-8');
if(!empty($_FILES)){
$fileInfo=$_FILES['myfile'];
print_r($_FILES);
if($fileInfo['error']>0){
switch($fileInfo['error']){
case 1:
$msg_error='上传文件超过了php配置文件中UPLOAD_MAX_FILESIZE选项的值';
break;
case 2:
$msg_error='超过了表单MAX_FILE_SIZE限制的大小';
break;
case 3:
$msg_error='文件部分上传';
break;
case 4:
$msg_error='没有文件上传';
break;
case 6:
$msg_error='没有找到临时目录';
break;
case 7:
case 8:
$msg_error='系统错误';
break;
}
exit($msg_error);
}
$filename=$fileInfo['name'];
$ext=strtolower(substr($filename,strrpos($filename,'.')+1));
$allowExt=array('txt','html','png','gif','jpeg');
if(!in_array($ext,$allowExt)){
exit('上传文件类型错误');
}
$maxSize=2097152;
if($fileInfo['size']>$maxSize){
exit('上传文件过大');
}
if(!is_uploaded_file($fileInfo['tmp_name'])){
exit('文件不是通过HTTP POST方式提交上来的');
}
//确保文件名字唯一,防止同名文件被覆盖
$uniqName=md5(uniqid(microtime(true),true)).'.'.$ext;
$path="uploads";
if(!file_exists($path)){
mkdir($path,0777,true);
chmod($path,0777);
}
$destination=$path.'/'.$uniqName;
if(!@move_uploaded_file($fileInfo['tmp_name'],$destination)){
exit('文件上传失败');
}
echo '上传成功';
}
php 异步上传图片几种方法总结1、使用jquery的ajaxform插件,用原生的input type=file异步提交表单实现异步上传
2、使用图片上传插件(推荐uploadify)
关于php图片上传技巧的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php图片上传技巧 php上传图片到指定文件夹的详细内容...