两种方法:
一:将图片上传至指定目录,在数据库中保存文件名和文件路径.
二:将图片文件读入字符串,将字符串保存到数据库,不推荐(没那么长的字段长度支持).
php
//var_dump($_FILES);
//判断文件上传是否出错
if($_FILES["myfile$i"]["error"]0){
switch($_FILES["myfile$i"]["error"]){
case 1; echo"文件过大(大于php.ini 配置文件的限制)";break;
}
die;
//判断文件类型
if(!in_array($_FILES["myfile$i"]["type"],array("image/jpeg","image/png","image/gif"))){
echo"文件类型不合法!(只能上传jpg,gif,png格式图片)" ;
continue;
$dir = dirname(__FILE__)."/uploaded/";
$filename= $_FILES["myfile$i"]["name"];
if(is_uploaded_file($_FILES["myfile$i"]["tmp_name"])){
if(move_uploaded_file( $_FILES["myfile$i"]["tmp_name"],$dir.$filename)){
echo "文件上传成功br" ;
}else{
echo "文件移动失败" ;
echo "文件不合法(非http post方式上传的文件)" ;
//选择库
//设置编码
//是否写入到数据库
echo "文件上传成功br";
//显示图片
$str= file_get_contents("./data.txt");
$img_arr = explode("\n",$str);
foreach($img_arr as $img){
echo $img."br";
把图片保存到服务器,拼接图片地址
保存图片地址到数据库
读取图片地址就能访问到图片了.
原理都一样,循环接参,你打印一下它的参数就够就明白了,存储数据库,可以将图片路径之间用|或者逗号,或者json 系列化来存储:
print_r($_FILES);//你可以打印一下它,看看它的结构
if(!empty($_FILES)){
foreach($_FILES['file']['name']?as?$k=$v){
//$_FILES["file"]都变成$_FILES["file"][$k]操作进行操作吧
if?($_FILES['file'][$k]['error']?==?0)?{
$filetype?=?array("jpg","JPG");
$arr?=?explode(".",?$_FILES["file"][$k]["name"]);
...//同样的代码
form?name=""?action=""?method="post"?enctype="multipart/form-data"
input?type="file"?name="file[]"?/br?/
input?type="file"?name="file[]"?/br?/
input?type="file"?name="file[]"?/br?/
input?type="file"?name="file[]"?/br?/
input?type="file"?name="file[]"?/br?/
input?type="file"?name="file[]"?/br?/
input?type="file"?name="file[]"?/br?/
input?type="file"?name="file[]"?/br?/
input?type="submit"?name="a"?value="提交"?/
/form
①.首先最好不要把图片存数据表.除非是做为资料保存.有些教材与网上的代码的处理方式太老了,不要再模仿.当然你的代码中没有看出来是用什么方式存储图片的.
以上就是土嘎嘎小编为大家整理的php上传图片写入数据库相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!