同步操作将从 天下网商/excel导入小程序 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
更新时间:2017-10-09
更新时间:2017-10-08
更新时间:2017-09-30
这一版本走通流程,并且通过测试。
101 -> Excel 文件类型异常
302 -> 数据列中包含中文异常
303 -> Excel 没有上传异常
401 -> 输出列中不包含去重列异常
402 -> 输出的列名没有找到异常
403 -> 重复输入 TOP 条件异常
404 -> 没有找到符合条件的数据异常
405 -> 过滤条件异常
406 -> 用户在表单中输入了非数值字符异常
501 -> 数据查询失败异常 502 -> 数据插入失败异常 503 -> 创建表结构发生异常
601 -> 系统发生严重错误 602 -> 被除数为零异常 603 -> 参与计算的元素非数值异常
之所以创建两个 MySQLi 的连接,是因为第一个是用以读取大批量的数据,第二个用以获取小批量的数据。第一个读取不立即获取结果集,所以不能进入第二次查询。第二个连接立即获取结果集,当即释放。
$this->mysqli = new \mysqli('localhost','root','','zhongwen',3306);
$this->mysqli2 = new \mysqli('localhost','root','','zhongwen',3306);
因为插入的字段都是预定义的,所以在 Sheet 类当中设置预定义的字段为成员变量,如下:
// 预定义表字段
private $preDefineField = ['a','b','c','d','e','f','g','h','i','j','k',
'l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','ab',
'ac','ad','ae','af','ag','ah','ai','aj','ak','al','am','an','ao',
'ap','aq','ar','cs','ct','au','av','aw','ax','ay','az','ba','bb',
'bc','bd','be','bf','bg','bh','bi','bj','bk','bl','bm','bn','bo',
'bp','bq','br','bs','bt','bu','bv','bw','bx','by','bz'];
其中,as
和at
因为是 MySQL 的保留关键字,所以特意改成了cs
,ct
。
array_splice($this->preDefineField,0,count($outColumns))
$outColumns
为用户定义的输出字段,对预定义的字段按照$outColumns
的个数进行裁剪,
进而在数据表中查询。
$sql = 'SELECT max(' . $column . ' + 0) FROM temp_compute WHERE ' .
$customCategoryField . ' =\'' . $customCategoryValue . '\'' . $this->conditions
. $limit;
根本原因是因为前端没有接受到后端正常的传值,进而或跳转到 localhost/undefined
页面。
之所以后端没有返回正常的传值是因为后台出现了语法错误。之所以会出现语法错误,是因为
用户输入的参数导致了数组索引的溢出,这种情况出现在程序的很多地方。
为了给用户更友好的提示,当发生 601 错误的时候,就会跳转到 undefined 页面,并且记录下日志以备后续排查问题。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。