我最近为我们的一位员工编写了邮件平台以供使用。系统运行良好,规模很大,使用起来很有趣。然而,由于我无法弄清楚如何修复(相当缺乏经验的开发人员),所以它目前无法运行。错误格式化时解析CSV以插入数据库
的过程是这样的......
- 上传CSV文件到一个特定的FTP目录。
- 转至import_mailing_list页面。
- 在FTP目录中选择一个CSV文件。
- 名称并描述该列表包含的内容。
- 将文件标题与数据库列相关联。
然后,后端循环遍历文件的每一行,将值与标题相关联,并将这些值导入到数据库中。
这一切都奇妙地工作,除了在特定情况下,当原始CSV格式不正确时。例如...
fname, lname, email
Bob, Schlumberger, [email protected]
Bobbette, Schlumberger
Another, Record, [email protected]
正如你所看到的,第二行有一个缺失的逗号。这会在尝试拉取“valArray [3]”(或valArray [2],除了我的每种语言)的情况下导致错误。
我正在寻找最有效的解决方案来防止发生此错误。也许我应该检查数组长度,并将其与我们将尝试拉动的索引进行比较,然后再拉动它。但是为每个价值做到这一点似乎效率低下。任何人有另一个想法?
我们的堆栈是ColdFusion 8/9和MySQL 5.1。这就是为什么我将数组索引称为[3]。
谢谢。我将使用你给出的第一个例子作为条件。关于使其工作,你提出了一个非常好的观点。我很感激你的意见,我一定会在将来记住它! – TaylorPLM 2012-03-01 19:02:48