2012-10-09 131 views
0

我目前正在一个列出产品的现有网站上工作,目前有500多个产品。没有mysql的PHP网站

该网站有一个每个产品的文本文件,我想做一个搜索选项,想读取所有的文本文件,并创建一个XML文件,每天一次的值可以搜索。

客户表示他们想要添加产品并用于使用文本文件添加它们。未来可能会有超过5000种产品,所以我认为最好使用mysql来做到这一点。这意味着导入当前产品并为产品创建一个crud页面。

有没有人有没有使用MySQL的PHP​​网站的经验?是否有可能不断添加文本文件,并且每天只编制一次索引,即使这意味着有超过5000种产品?

+2

如果您关心I/O写入,您将转移到MySQL。 –

+1

你完全正确 - 每个产品的文本文件都是错误的选择,MySQL绝对是最好的选择。 – h2ooooooo

+3

可能吗?是。实际的?甚至没有远程。告诉您的客户,建设该网站的成本预计会更高,但成本下降将明显减少。使用数据库实现对网站和产品的维护甚至达到500,在使用文本文件的情况下,使用该文件将更容易,这将是一场噩梦,并且不允许进行任何定制。 –

回答

2

5000似乎是一个仍然可管理的数量,可用于每日cron工作的索引。只要你不打算实时搜索它,它应该工作。这并不理想,但它会起作用。

+0

我将创建一个管理页面,用于根据文本文件中的数据创建xml文件,以便在用户更改某些内容时可以更新xml文件。希望现在能够运行,因为我不确定一天中会执行多少次搜索。该页面可以很容易地更改以将测试文件数据导入到数据库中。 – HMR

1

是的,这是非常可能的,不合理的您使用这些类型的交易文件。

为作业使用XML而不是普通的TXT也更好。 5000种具有与之相关的数据的产品将来可能会产生问题。

PS

为什么不使用MySQL?

+0

客户端用于使用文本文件提供产品数据。我会将它们放入一个xml文件并搜索该文件。如果这不再可能,那么可以使用大多数脚本将文本文件数据插入到数据库中。当用户更改文本文件而不是运行脚本时,可以删除所有数据并重新插入文本文件信息。 – HMR

1

因为基于文件的数据库很慢并且不准确,所以创建了Mysql。

只要使用mysql。如果你想保留旧的基于txt的数据库,只需构建一个简单的脚本,它将逐个导入每个文件,并在sql数据库中创建相应的表。

祝你好运。

+0

感谢您的回复,我会在管理员用户选择这样做时(当他们改变文本文件中的内容时)将文本文件信息导入到XML中。如果不能做到这些信息可以插入到数据库中,脚本中的小改动可以做到这一点。 – HMR

0

但是,如果这不仅仅是一个在线目录,那么管理交易完整性就很难 - 而且你甚至会问这个问题意味着你没有很好的实施条件所需的控制类型。正如你已经发现的那样,它并不容易搜索(顺便说一句:mysql的全文索引是一个非常直截了当的工具 - 你自己实现一个有效的搜索引擎并不是一个巨大的努力 - 或者有很好的关闭-the现货供应,例如mnogosearch

(作为conicdental点,为什么XML?它可以使管理数据复杂得多它需要)

,创造产品

一个CRUD页面

为什么?如果客户想要通过文件上传来维护数据,并且您已经需要移植数据,那么只需使用相同的接口 - ,其中数据存储与刚才不相关。

如果托管+ mysql存在问题,那么使用SQLite会带来大部分好处(虽然它不会扩展)。

+0

我很想写一个脚本,它可以从所有文本文件中生成一个xml文件。这将用于搜索。可以很容易地转换相同的XML生成器和搜索脚本,将数据放入数据库并搜索该数据库。所有数据将被删除,并且所有文本文件信息将在用户选择更新时插入。 – HMR