0

0

PHP 表单上传总是“upload NOT successful”

php中文网

php中文网

发布时间:2016-06-23 14:18:46

|

1178人浏览过

|

来源于php中文网

原创

本帖最后由 renye616 于 2013-08-08 11:21:10 编辑

PHP 上传 JavaScript

include_once 'include/config.php';
include_once 'include/db.php';

include_once 'check.php';

$sss = new haya_check();
$applyuser = $sss->user();

//list
$username = $_request["username"];
$gender = $_request["gender"];
$testdate = ($_request["testdate"]=="") ? "0000-0-0" : $_request["testdate"];
$monaddate = ($_request["monaddate"]=="") ? "0000-0-0" : $_request["monaddate"];
$email = $_request["email"];
$tel1 = $_request["tel1"];
$tel2 = $_request["tel2"];
//$listtype = $_request["listtype"]);
$parentinfo = $_request["parentinfo"];
$studentinfo = $_request["studentinfo"];
$continueclass = $_request["continueclass"];
$studiedclassno = $_request["studiedclassno"];
$teachername = $_request["teachername"];
$consultant = $_request["consultant"];
$assistant = $_request["assistant"];
$senateclass = $_request["senateclass"];
$senateaudit = $_request["senateaudit"];
$classno = $_request["classno"];
$classname = $_request["classname"];
$grade = $_request["grade"];
$classsuffix = $_request["classsuffix"];
$startdate = ($_request["startdate"]=="") ? "0000-0-0" : $_request["startdate"];
$enddate = ($_request["enddate"]=="") ? "0000-0-0" : $_request["enddate"];
$classfrequency = $_request["classfrequency"];
$classplace = $_request["classplace"];
$fee = ($_request["fee"] == "") ? 0 : $_request["fee"];
$describe = $_request["describe"];
$transferfee = ($_request["transferfee"] == "") ? 0 : $_request["transferfee"];
$normalnumber = ($_request["normalnumber"] == "") ? 0 : $_request["normalnumber"];
$classroom = $_request["classroom"];
$classarrange = $_request["classarrange"];
$discount = $_request["discount"];
$discountreson1 = $_request["discountreson1"];
$discountreson2 = $_request["discountreson2"];
$discountreson3 = $_request["discountreson3"];
$unitprice = $_request["unitprice"];
$allclassfrequency = ($_request["allclassfrequency"] == "") ? 0 : $_request["allclassfrequency"];
$allclasstimes = ($_request["allclasstimes"] == "") ? 0 : $_request["allclasstimes"];
$allfee = ($_request["allfee"] == "") ? 0 : $_request["allfee"];
$teachbookapplier = $_request["teachbookapplier"];
$teachbookapplyno = $_request["teachbookapplyno"];
$lesoncardno = $_request["lesoncardno"];
$books = $_request["books"];
// course
$cl = array(
array("name"=>$_request["cl1_1"],"number"=>$_request["cl1_2"],"classtime"=>$_request["cl1_3"],"teacher"=>$_request["cl1_4"]),
array("name"=>$_request["cl2_1"],"number"=>$_request["cl2_2"],"classtime"=>$_request["cl2_3"],"teacher"=>$_request["cl2_4"]),
array("name"=>$_request["cl3_1"],"number"=>$_request["cl3_2"],"classtime"=>$_request["cl3_3"],"teacher"=>$_request["cl3_4"]),
array("name"=>$_request["cl4_1"],"number"=>$_request["cl4_2"],"classtime"=>$_request["cl4_3"],"teacher"=>$_request["cl4_4"]),
array("name"=>$_request["cl5_1"],"number"=>$_request["cl5_2"],"classtime"=>$_request["cl5_3"],"teacher"=>$_request["cl5_4"]),
array("name"=>$_request["cl6_1"],"number"=>$_request["cl6_2"],"classtime"=>$_request["cl6_3"],"teacher"=>$_request["cl6_4"]),
array("name"=>$_request["cl7_1"],"number"=>$_request["cl7_2"],"classtime"=>$_request["cl7_3"],"teacher"=>$_request["cl7_4"]),
array("name"=>$_request["cl8_1"],"number"=>$_request["cl8_2"],"classtime"=>$_request["cl8_3"],"teacher"=>$_request["cl8_4"]),
array("name"=>$_request["cl9_1"],"number"=>$_request["cl9_2"],"classtime"=>$_request["cl9_3"],"teacher"=>$_request["cl9_4"]),
array("name"=>$_request["cl10_1"],"number"=>$_request["cl10_2"],"classtime"=>$_request["cl10_3"],"teacher"=>$_request["cl10_4"])
);

// arrangetype
$arrangetype = $_request["arrangetype"];
$arrangetypestr = "";
for($i=0;$i if($i > 0) $arrangetypestr .= " | ";
$arrangetypestr .= $arrangetype[$i];
}

// netclass cards
$netclasscards = $_request["netclasscards"];
$netclasscardstr = "";
for($i=0;$i if($i > 0) $netclasscardstr .= " | ";
$netclasscardstr .= $netclasscards[$i];
}
//echo $netclasscardstr;

$uploadfilepath = "";
if($_files["file"]["name"] != ""){
include_once 'uploadfile.php';
if($upfilename != "" && $upfilename != null) $uploadfilepath = "upload/" . $upfilename;
}

$s = new haya_db();

$qinsert = "insert into jwlist (".
"username,".
"gender,".
"testdate,".
"monaddate,".
"email,".
"tel1,".
"tel2,".
//"listtype,".
"parentinfo,".
"studentinfo,".
"continueclass,".
"studiedclassno,".
"teachername,".
"consultant,".
"assistant,".
"senateclass,".
"senateaudit,".
"classno,".
"classname,".
"grade,".
"classsuffix,".
"startdate,".
"enddate,".
"classfrequency,".
"classplace,".
"fee,".
"describes,".
"transferfee,".
"normalnumber,".
"classroom,".
"arrangetype,".
"classarrange,".
"discount,".
"discountreson1,".
"discountreson2,".
"discountreson3,".
"unitprice,".
"allclassfrequency,".
"allclasstimes,".
"allfee,".
"teachbookapplier,".
"teachbookapplyno,".
"lesoncardno,".
"books,".
"netclasscards,".
"status,".
"applytime,".
"applyuser,".
"uploadfilepath".
") values (".
"'" . $username . "', '" . 
$gender . "', '" .
$testdate . "', '" .
$monaddate . "', '" .
$email . "', '" .
$tel1 . "', '" .
$tel2 . "', '" .
//$listtype . "', '" .
$parentinfo . "', '" .
$studentinfo . "', '" .
$continueclass . "', '" .
$studiedclassno . "', '" .
$teachername . "', '" .
$consultant . "', '" .
$assistant . "', '" .
$senateclass . "', '" .
$senateaudit . "', '" .
$classno . "', '" .
$classname . "', '" .
$grade . "','" .
$classsuffix . "', '" .
$startdate . "', '" .
$enddate . "', '" .
$classfrequency . "', '" .
$classplace . "', '" .
$fee . "', '" .
$describe . "', '" .
$transferfee . "', '" .
$normalnumber . "', '" .
$classroom . "', '" .
$arrangetypestr . "', '" .
$classarrange . "', '" .
$discount . "', '" .
$discountreson1 . "', '" .
$discountreson2 . "', '" .
$discountreson3 . "', '" .
$unitprice . "', '" .
$allclassfrequency . "', '" .
$allclasstimes . "', '" .
$allfee . "', '" .
$teachbookapplier . "', '" .
$teachbookapplyno . "', '" .
$lesoncardno . "', '" .
$books . "', '" .
$netclasscardstr . "', '" . 
"1',".
"now(),'".
$applyuser."','".
$uploadfilepath . "'" .
")";
//echo $qinsert;
$resultstr = $s->query($qinsert);
$lastid = $s->getlastinsertid();
if(!$resultstr) echo '<script>alert("upload not successful!");history.go(-1);</script>';
else{
//$q2 = "select max(id) from jwlist";
//$rsid = $s->query($q2);
//echo $lastid;
//echo "cl count : ".count($cl);
for($i=0;$i if($cl[$i]["name"] == null || $cl[$i]["name"] == "") continue;
$qinsert2 = "insert into course (".
"listid,".
"name,".
"number,".
"classtime,".
"teacher".
") values (".
"'" . $lastid . "', '" . 
$cl[$i]["name"] . "', '" .
$cl[$i]["number"] . "', '" .
$cl[$i]["classtime"] . "', '" .
$cl[$i]["teacher"] . "'" .
")";
//echo $qinsert2;
$result2 = $s->query($qinsert2);
if(!$result2) echo "false";
else echo "true";
}
echo '<script>alert("upload successful!");history.go(-1);</script>';
}
//echo '<script>history.go(-1);</script>';

?>

====================== ================
=============php 配置文件=======================
;;;;;;;;;;;;;;;;
; file uploads ;
;;;;;;;;;;;;;;;;

; whether to allow http file uploads.
; http://www.php.net/manual/en/ini.core.php#ini.file-uploads
file_uploads = on

; temporary directory for http uploaded files (will use system default if not
; specified).
; http://www.php.net/manual/en/ini.core.php#ini.upload-tmp-dir
upload_tmp_dir = /var/www/html/upload

; maximum allowed size for uploaded files.
; http://www.php.net/manual/en/ini.core.php#ini.upload-max-filesize
upload_max_filesize = 10m


回复讨论(解决方案)

所有文件都不行?小文件试了吗?

所有文件都不行?小文件试了吗?  其他可以正常上传。
之前有一份正常运行的网页程序,都可以正常上传,现在发的这个代码和这个代码相关的.php文件都已经确认跟之前程序 代码以至。    变的 只是 平台  由windows 变为 linux    apache配置  和 mysql配置和mysql库都 都跟以前是一致的,(当然linux 和windows配置有区别这个可以忽略)  网页其他运行都正常。 就是这个表单总是提交以后提示 NOT successful...

if(!$resultstr) echo '<script>alert("Upload NOT successful!");history.go(-1);</script>';
显然是查询失败了 $resultstr = $s->query($qinsert);
你打印出 $qinsert 看看
如果有中文请注意编码

if(!$resultstr) echo '<script>alert("Upload NOT successful!");history.go(-1);</script>';
显然是查询失败了 $resultstr = $s->query($qinsert);
你打印出 $qinsert 看看
如果有中文请注意编码 utf8_general_ci可以不  是包含中文的

utf8_general_ci 只是说内容按 utf8 存储,不表示你给他的数据是正确的

除非你在安装 mysql 时做了字符集设置(即便做了也不见得就是utf8的),否则都是 latin1 的
所以都应该有执行 set names 页面编码

$resultstr = $s->query($qinsert);输出$resultstr瞧瞧。

utf8_general_ci 只是说内容按 utf8 存储,不表示你给他的数据是正确的

除非你在安装 mysql 时做了字符集设置(即便做了也不见得就是utf8的),否则都是 latin1 的
所以都应该有执行 set names 页面编码

都已经设置成 UTF8   PHP里是默认   mysql_query("set names ‘utf8’")问题依旧

$resultstr = $s->query($qinsert);输出$resultstr瞧瞧。


$resultstr = $s->query($qinsert);输出$resultstr瞧瞧。

具体怎么输出呢  

笔头写作
笔头写作

AI为论文写作赋能,协助你从0到1。

下载

如果以前有编码问题,那么只用修改后插入的数据才可能是正确的

如果以前有编码问题,那么只用修改后插入的数据才可能是正确的 以前没有编码问题

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法
pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法

本专题系统整理pixiv网页版官网入口及登录访问方式,涵盖官网登录页面直达路径、在线阅读入口及快速进入方法说明,帮助用户高效找到pixiv官方网站,实现便捷、安全的网页端浏览与账号登录体验。

463

2026.02.13

微博网页版主页入口与登录指南_官方网页端快速访问方法
微博网页版主页入口与登录指南_官方网页端快速访问方法

本专题系统整理微博网页版官方入口及网页端登录方式,涵盖首页直达地址、账号登录流程与常见访问问题说明,帮助用户快速找到微博官网主页,实现便捷、安全的网页端登录与内容浏览体验。

135

2026.02.13

Flutter跨平台开发与状态管理实战
Flutter跨平台开发与状态管理实战

本专题围绕Flutter框架展开,系统讲解跨平台UI构建原理与状态管理方案。内容涵盖Widget生命周期、路由管理、Provider与Bloc状态管理模式、网络请求封装及性能优化技巧。通过实战项目演示,帮助开发者构建流畅、可维护的跨平台移动应用。

64

2026.02.13

TypeScript工程化开发与Vite构建优化实践
TypeScript工程化开发与Vite构建优化实践

本专题面向前端开发者,深入讲解 TypeScript 类型系统与大型项目结构设计方法,并结合 Vite 构建工具优化前端工程化流程。内容包括模块化设计、类型声明管理、代码分割、热更新原理以及构建性能调优。通过完整项目示例,帮助开发者提升代码可维护性与开发效率。

20

2026.02.13

Redis高可用架构与分布式缓存实战
Redis高可用架构与分布式缓存实战

本专题围绕 Redis 在高并发系统中的应用展开,系统讲解主从复制、哨兵机制、Cluster 集群模式及数据分片原理。内容涵盖缓存穿透与雪崩解决方案、分布式锁实现、热点数据优化及持久化策略。通过真实业务场景演示,帮助开发者构建高可用、可扩展的分布式缓存系统。

26

2026.02.13

c语言 数据类型
c语言 数据类型

本专题整合了c语言数据类型相关内容,阅读专题下面的文章了解更多详细内容。

29

2026.02.12

雨课堂网页版登录入口与使用指南_官方在线教学平台访问方法
雨课堂网页版登录入口与使用指南_官方在线教学平台访问方法

本专题系统整理雨课堂网页版官方入口及在线登录方式,涵盖账号登录流程、官方直连入口及平台访问方法说明,帮助师生用户快速进入雨课堂在线教学平台,实现便捷、高效的课程学习与教学管理体验。

14

2026.02.12

豆包AI网页版入口与智能创作指南_官方在线写作与图片生成使用方法
豆包AI网页版入口与智能创作指南_官方在线写作与图片生成使用方法

本专题汇总豆包AI官方网页版入口及在线使用方式,涵盖智能写作工具、图片生成体验入口和官网登录方法,帮助用户快速直达豆包AI平台,高效完成文本创作与AI生图任务,实现便捷智能创作体验。

524

2026.02.12

PostgreSQL性能优化与索引调优实战
PostgreSQL性能优化与索引调优实战

本专题面向后端开发与数据库工程师,深入讲解 PostgreSQL 查询优化原理与索引机制。内容包括执行计划分析、常见索引类型对比、慢查询优化策略、事务隔离级别以及高并发场景下的性能调优技巧。通过实战案例解析,帮助开发者提升数据库响应速度与系统稳定性。

53

2026.02.12

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号