模块:发布Xoops导入器Alpha版本
发布者:tedsmith于2006/3/20 6:54:20 阅读次数:7346我非常自豪地宣布我的第一个Xoops开发的Alpha版本发布,这实际上是我第一次写PHP程序!
我已经与Xoops合作将近两年了,虽然我已经创建了四个网站,并在能的时候提供论坛支持,但我的专长很少涉及到开发或类似的事情。因此,我决定着手项目,强迫自己学习如何编写PHP,而不是只阅读(一些)PHP代码,希望我能为Xoops项目做出贡献。
这就是Xoops导入器!它基于Xoops France的Christian编写的原始PHP脚本(我为原始想法和大部分代码给予全部信用,尽管Xoops导入器对其进行了大量修改)。
Christian的脚本需要用户修改变量,并能够导入多个用户值。Xoops导入器有一个GUI(以HTML索引文件的形式),可以从分割的文本文件中导入所有适当的Xoops用户注册详情,使其对普通Xoopers更易于使用。通过调整您的分割文件,您可以从任何CMS用户直接导入到Xoops!根据说明仔细准备输入文件是至关重要的,否则脚本将失败。
目前,它只是一个索引HTML文件和一个PHP脚本,但 hope to make it into a module once I understand that process (any tips in the meantime will be much appreciated). 我尝试从一开始就涉足模块端,但学习PHP本身对我来说已经是一项很大的挑战,而没有尝试学习模块结构!
Xoops导入器仅适用于Xoops 2.0,但 again,I do hope to make it compatible for 2.2 + in the near future. 我还没有查看Xoops 2.2,但如果有任何人愿意测试它,可能与之兼容。
测试
我尝试使用最大规模的电子表格(含有65000条记录,一个15MB的定界符文件)进行测试,但对我来说上传到我的商业服务器上太大。许多商业服务器上的限制是10MB。所以我用包含20000条记录(大小约5MB,随.zip文件提供用于测试的'InputLabelSource_5Mb_20000Records.csv')的定界符输入文件进行了测试。效果很好!我怀疑人们很少会试图超过这个用户导入的数量,但我没有理由相信它不能处理更大的源。如果你有更大的源,只需调整index.html中的name="MAX_FILE_SIZE" value="10000000"条目为所需的任何大小。
已知问题
由于某种原因,数据库中插入了从文件末尾开始的空空白条目。所以如果你要导入20,000个用户,就有20,001个用户被导入。我会调查这个问题——也许有人能帮我解决?
未来要做的事
这些功能可能不会在官方稳定版本发布后才加入到项目中。alpha、beta和发布候选版本只会涉及对这个版本中问题进行纠正,并根据你们提供的反馈改进代码,但我希望让人们知道,我确实有长期的计划。
1) 创建一个智能解析源文件的功能,以便用户不需要按指定格式排序定界符文件。目前,如果列没有按所要求的放置,错误的值将被导入到错误的数据库列中。
增强界面
使模块化以便安装到Xoops站上
创建动态进度条或某种类型的“状态”指示器
添加计时器以计时过程的持续时间
可能为提交按钮创建onClick事件以便它变为“请等待”或其他内容。
改善错误检查。例如,开发MIME类型循环以防止意外使用JPEG或其他图像(内置但现已移除)。
从dev.xoops.org的项目页面获取Xoops导入器 此处。
问候
Ted