php多用户同时上传时判断文件名是否相同,如果相同给出提示同名文件已经存在,且只有文件名不同才可上传

每个用户只能上传一张logo同时存入数据库,上传下一张时先删除上一张logo在存入数据库,刷新页面时logo删除了,数据库的路径还在... 每个用户只能上传一张logo同时存入数据库,上传下一张时先删除上一张logo在存入数据库,刷新页面时logo删除了,数据库的路径还在 展开
 我来答
abccccaf
推荐于2018-04-19 · TA获得超过845个赞
知道小有建树答主
回答量:912
采纳率:86%
帮助的人:260万
展开全部

文件上传一般情况下服务器都会生成文件名的,完全可以避免文件名重复 并且能统一文件名,如果你只想用客户端传过来的文件名也可以:

$filename = $_FILES['file']['name'];  // 获取用户提交的文件名
$sql = "SELECT id FROM tablename WHERE logo='$filename'";   // 当前文件名是否存在
$r = $dbh -> query($sql);   // 直接用PDO操作
if ($r -> rowCount() > 0) {
    exit('该文件名已经重复');
}
// 若文件名不存在上传新LOGO
$sql = "UPDATE tablename SET logo='$filename' WHERE logo='$filename'";
$r = $dbh -> exec($sql);
$message = $r ? '保存成功' : '保存失败';
echo $message;
MarkGo
2013-05-28 · 测试API接口使用的啊1
MarkGo
采纳数:257 获赞数:427

向TA提问 私信TA
展开全部
是要代码还是思路?
最好上传的时候把文件名写入数据库,
当上传完成时检查数据库是否有这个文件名。
不需要考虑多用户同时上传,
因为毕竟有先有后
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友e2c8d10
2013-05-28
知道答主
回答量:36
采纳率:0%
帮助的人:14.4万
展开全部
你可以换个思路,起个不一样的名字就可以,比如用户名+时间+ip,这样就不会出现同文件名了,这样还能提高效率
追问
用户名中文会乱码
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式