在我的应用程序中,用户可以创建他/她的相册。
我的问题是,我如何上传特定于上传图像的用户id的图像?这意味着应该有一些标准来表明这些图像属于该用户。
我的想法是,我可以用user-id的图像名称存储图像,但在这种情况下,很难将注释与这些图像一起存储。
有没有更好的办法?
发布于 2010-07-14 21:12:56
您不是在使用数据库吗?
如果不是:
设置一个数据库来存储用户,然后在映像和用户之间创建一个逻辑连接。
例如
用户:
|---------------------------------------
| UserId Username Password |
|---------------------------------------
| 1 Robert 3j9745t3 |
| 2 Paul 03945u30 |
|---------------------------------------图片:
|--------------------------------------------------
| ImageID UserId Desc ImageHash |
|-------------------------------------------------|
| 1 1 Some Desc 87ytr8d23yr|
| 2 1 Some Desc 5uty4095u40|
|-------------------------------------------------|然后将图像存储在您的图像目录中,如87ytr8d23yr.png,然后可以执行如下所示的php查询
$userid = 1;
$sql = "SELECT * FROM Images WHERE UserId = " . (int) $userid . " ORDER BY ImageID LIMIT 10";
if(false !== ($resource = mysql_query($sql)))
{
while($imageRow = mysql_fetch_object($resource))
{
if(file_exists('imageDir/' . $imageRow->ImageHash . '.png'))
{
//Do whatever.
}else
{
//Delete the row and inform the user that the picture has been deleted for some reason.
}
}
}此外,您只需创建一个评论表并添加ImageId,当用户对图像进行评论时,只需将该图像添加到评论行中,您就可以对其进行跟踪。
发布于 2010-07-14 21:02:25
一种常用的解决方案是为每个图像提供两个数据:
中的记录
数据库中的记录通常至少包含:
这样,对于每个图像,您就有了额外的数据--您可以使用这些数据向您的应用程序添加一些行为。
当然,这意味着当用户上传图像时,您将有更多的工作--但这也不是那么糟糕,而且可以证明是有用的。
当需要时,您也可以向存储这些数据的数据库表中添加一些其他字段,例如:
关于允许查看每个图像的用户的
发布于 2010-07-14 21:03:00
你有数据库吗?用户是否已登录?创建一个跟踪图像的表,包括一个用户ID列,并将整个图像存储在数据库中或仅存储图像的路径名。
https://stackoverflow.com/questions/3246336
复制相似问题