html表单提交 php保存路径到数据库
html表单提交php保存路径到数据库图片保存在电脑硬盘(电脑装有mysql和apache2.4)数据库是bh2建立table代码如下:createtableadd1(i...
html表单提交 php保存路径到数据库 图片保存在电脑硬盘(电脑装有mysql 和apache2.4)
数据库是bh2
建立table代码如下:
create table add1(
id int primary key auto_increment,
title1 varchar(128) not null,
date1 varchar(128) not null,
leftnumber1 varchar(32) not null,
upnumber1 varchar(32) not null,
describe1 varchar(1024) not null,
picture1 varchar(1024) not null);
第一张和第二张是表单代码
第三张是图片上传代码
文件上传跳转页面后运行php的时候 没有任何echo输出,且数据库table没有录入
第一个问题:为什么上传不了?代码没有什么问题啊
第二个问题:upload文件夹在哪里?我没有创建,上传的文件存到哪儿了?
第三个问题:信息为什么也没有录入mysql的table? 展开
数据库是bh2
建立table代码如下:
create table add1(
id int primary key auto_increment,
title1 varchar(128) not null,
date1 varchar(128) not null,
leftnumber1 varchar(32) not null,
upnumber1 varchar(32) not null,
describe1 varchar(1024) not null,
picture1 varchar(1024) not null);
第一张和第二张是表单代码
第三张是图片上传代码
文件上传跳转页面后运行php的时候 没有任何echo输出,且数据库table没有录入
第一个问题:为什么上传不了?代码没有什么问题啊
第二个问题:upload文件夹在哪里?我没有创建,上传的文件存到哪儿了?
第三个问题:信息为什么也没有录入mysql的table? 展开
1个回答
展开全部
你的问题在于:
1、<input>标签没有关闭的写法,也就是不用</input>
2、move_uploaded_file将你的文件上传到了uploadpic里面去了,这个uploadpic应该和你submit2.php同级目录,如果你创建了uploadpic这个文件夹,并保证了读写权限,那么将传到这里,如果没有读写权限,或者没有这个文件夹,那么这个图片只会在服务器缓存里呆着,然后被释放掉,所以你看不到这个文件。
你可以参考下面这个来检查是不是有文件夹,如果没有就创建目录:
if(!empty($_FILES['file']['name'])){
if(is_dir("uploadpic")){ //如果目录存在
//则执行上传流程
}else{ //如果目录不存在
mkdir("uploadpic"); //则创建目录
//再执行上传流程
}
1、<input>标签没有关闭的写法,也就是不用</input>
2、move_uploaded_file将你的文件上传到了uploadpic里面去了,这个uploadpic应该和你submit2.php同级目录,如果你创建了uploadpic这个文件夹,并保证了读写权限,那么将传到这里,如果没有读写权限,或者没有这个文件夹,那么这个图片只会在服务器缓存里呆着,然后被释放掉,所以你看不到这个文件。
你可以参考下面这个来检查是不是有文件夹,如果没有就创建目录:
if(!empty($_FILES['file']['name'])){
if(is_dir("uploadpic")){ //如果目录存在
//则执行上传流程
}else{ //如果目录不存在
mkdir("uploadpic"); //则创建目录
//再执行上传流程
}
更多追问追答
追问
已经在统计目录下建了uploadpic文件夹还是没用
也已经删去所有/input
没有echo输出说明问题在于
if(((@$_FILES["file"]["type"]=="image/gif")||(@$_FILES["file"]XXXXXXXX{}这个if根本没有成立
而且我我传的文件是jpg格式
80kb,还是上传不了
追答
你的逻辑是:
==============================================
第一个页面:
html表单(提交到submit2.php)
php判断:如果提交,判断文件是否合法、合法就连接数据库并执行插入。
地二个页面:
php判断:如果文件合法,就上传到指定目录。
==============================================
对吗?
实际上在第一个页面你点击submit时,他就提交到地二个页面submit2.php去了以下的那个php判断什么的几乎不会执行。
if(((@$_FILES["file"]["type"]=="image/gif")||(@$_FILES["file"]XXXXXXXX{}这个没提示,表明你文件已经传到了服务器缓存了,并没有移动到服务器磁盘里去。
我认为第一个页面就应该是表单,没有其他有关上传的操作和判断。
在第二个页面就是那个submit2.php,应该是:
先判断$_FILES['file']['error'],如果不等于0,就显示错误,否则:is_uploaded_file()确定方法正确,然后move_uploaded_file()移动到你指定的文件夹:如果move_uploaded_file无错误,就将它的信息插入到数据库中去。
你的逻辑读的我都乱了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询