2012-05-17 26 views
0

我刚刚创建了一个配置文件站点,让每个注册用户输入他们自己的配置文件。当时它显示电子邮件和用户名。用户配置文件和文件上传

我还创建了一个SQL表保存文件名和文件保存到一个文件夹中的文件上传,还有一个文件列表,所以你可以看到每一个已经上传的文件,并重新下载下来的选项。

现在我想用某种方式这两件事,所以当你登录到您的用户配置文件,你就可以将文件上传到文件夹,并直接在您的个人资料中显示。但当然,只有你上传的不是每个用户。

我敢打赌没有做到这一点的方法,但因为我是一个newbe我真的不知道如何开始。所以,如果有人有一些提示,或者也许这就是在互联网上某个地方的方法,我会是一个快乐的菜鸟:)

感谢

+0

当检查用户身份验证时,您需要授权您的用户,并向他显示上传表单。当用户上传文件时,您需要检查用户是否auth,文件大小,文件ext(当心* .php或任何服务器端执行的文件)等等。 – Sergey

回答

2

只是在文件SQL表添加用户ID的领域。每次用户上传他们的文件时,他们的id都会存储在这张表中。当用户登录,您应该选择与此用户ID文件只有

+0

我认为我在这里的东西:) 我添加file_name到我的用户表,所以现在每次我保存一个文件时,文件名存储id用户表。 我可以使用和if-else查询来仅显示某个用户上传的文件吗? – Dymond

+1

对于某些用户你应该使用这样的东西:SELECT file_name FROM files WHERE user_id = $ _SESSION ['user_id']它会为你的用户选择所有文件。 (所有字段都被命名为例如) – YamahaSY

+0

我试过这个查询,它几乎工作。当我改变了USER_ID = $ _SESSION [“user_ID的”]以user_id说明=“testid”它显示了所有从该ID的文件,但是当我用$ _SESSION [user_ID的]我得到错误信息 “ 你有一个错误在你的SQL语法中;检查对应于你的MySQL服务器版本的手册,在第一行附近使用正确的语法 我应该以某种方式实例化$ session吗?所以它知道我应该得到加载用户的信息? – Dymond

1

让您的SQL表中的字段USER_ID。

将登录用户的user_id存储在会话中或用于登录的任何内容。

之后,选择文件的所有字段与登录用户ID显示在配置文件中。

1

组织你的文件系统,如:

uploads/ 
    files/ 
    %user_name% or %user_id% (some unique identifier linked to the current user)/ 

这样,你随时都可以,只显示该用户上传的文件。