2012-03-16 43 views
1

我有这使所有附近的餐馆的数据库的应用程序。 在添加新条目,还有就是您的餐厅添加的几张图片的选项。项电流id

现在的问题: 我想将不同的餐厅图像分类到分隔的文件夹中,由存储在mysql自动增量ID中的餐馆ID命名。这里唯一的问题是,我不提前知道这个ID。

形式例如:

text input - title 
text input - address 
text input - phone 
file input - image 
file input - image 

那么,究竟应该怎么办?

一获得最后的ID,锁定表,中创建由ID命名的文件夹,存储图像,存储信息,mysql数据库,包括图像路径,解锁表。

二,存储的图像除外路径mysql数据库的所有信息,使用PHP mysql_insert_id,里面创建和存储图像路径mysql数据库的ID命名的文件夹,存储图像。

三,解决方案更好

回答

2

这种事情通常是与您的选项II完成。在数据库中存储主要信息行,通过mysql_insert_id()或本地MySQL LAST_INSERT_ID()函数获取最后一个插入ID,然后在必要时将行存储在任何相关表中,并创建用于存储文件系统数据的映像目录。

假定你打算在数据库中存储将进入一个不同的表有一个一对多的关系,回主餐桌成像路径,你需要知道的最后一个插入ID反正它们插入。不要担心在多个操作中执行此操作 - 这正是大多数RDBMS具有类似LAST_INSERT_ID()的功能的原因。

+0

感谢您的额外信息:) – 2012-03-16 13:19:03

1

我没有看到需要使用餐厅的ID来组织图片 - 尤其是因为您遇到了您描述的时间问题。我会创建另一个唯一的ID - 称之为picture_folder_id或其他 - 并用它来命名图片的文件夹。只要您在该ID上实施唯一性,您就不会遇到任何冲突,并且您不会遇到任何计时问题或锁定。