[讨论] 设计上遇到的程序问题

楼主: awa6811 (希望永存)   2014-10-23 09:01:00
大家好
一般我们在设计表单字段填写是否符合条件需求多会在,clinet端做判断再放行上传到DB;
今天我们就先~搁著~为何多会在clinet判断完才上传的观念:
因为我现在的情况是会把所有表单的资讯一并传到 web做判断是否符合条件,才放行到
process 程序。
[填表]C -> [check]W -> [process]W C:clinet W:web
填表完毕 会透过 XHR(ajax) check.php 去做字段条件判断,有问题就会传值回来并透过
alert显示出来,若判断正确没问题就会运行到另一个 XHR(ajax) process.php,去做上
传数据的处理。
现在问题来了,过去单纯传递字串;因为当时的 XHR 没有上传档案的api支持,所以整体
上运作不会带有上传档案的程序(档案基本上是与纯文字岔开运作),但是现在 XHR2 支持
了上传档案的api,多数人应该都会感到兴奋便利,过去 XHR 再传档案运程上会是一种
困难点,而在 XHR2 下的 FormData 变得非常便利;但是每次执行便会作上传的动作,
因为我设计的程序会跑两次 XHR2 所以变成会运行两次上传档案的动作,有办法不再改变
现有的程序让他只在完成第一次字段判断后,才作上传的置能吗?
作者: mrbigmouth (大嘴先生)   2014-10-23 09:21:00
就第一次检查时不要塞档案上传就好了啊?你是靠什么环境自动检查的吗? 不然基本上不改程式码而改变功能是不可能的事
楼主: awa6811 (希望永存)   2014-10-23 09:42:00
但是我昨天试过,试着把塞档案的那字段给空值,但是不行它还是会把我选的档案上传完毕才作字段的判断程式码当然是可以被修改的,若不想破坏现有的执行模式下的化可行吗?我只是很简单的检查方式,字段POST到web,web取值再用php写好的判断函数来作字段判断
作者: mrbigmouth (大嘴先生)   2014-10-23 10:21:00
你直接把程式码贴出来吧 你的程式只要不把档案塞进fr不塞进form data xhr就不会上传档案这是肯定的
楼主: awa6811 (希望永存)   2014-10-23 10:26:00
那样子看来 check 的部分就必须用 xhr 纯文字的方式了
作者: mrbigmouth (大嘴先生)   2014-10-23 11:27:00
的确 如果你check不用上传档案 为何要用formdata?就算用form data你也不需要把整个form塞进里面.......fileupload button基本上是不会让你控制的 你所谓的把那字段塞空值应该是无效的举动你要做的是不把该档案字段塞进form data里面 不是去操作里面的值

Links booklink

Contact Us: admin [ a t ] ucptt.com