请问:PHP能否实现类似js中 confirm( ) 那样的交互功能?
本帖最后由 wlue 于 2021-9-5 12:14 编辑请问:PHP能否实现类似js中confirm( )那样的交互功能?
用PHP上传文件,当指定的文件夹下没有同名文件,就完成上传。如果指定的目录下有同名文件,就给出提示,让用户选择是覆盖同名文件,还是放弃等操作。类似于JS中的 confirm( ) 函数的功能,但PHP中并没有这样的函数,请问该如何实现类似的功能?上部分代码:
$temName = $_FILES['mypic']['tmp_name'] ;//上传的临时文件名
$fileName = "files/{$_FILES[‘mypic’][‘name’]}" ;//指定目录并用原文件名命名
if (!file_exists($fileName)) { //判断,如果不存在同名文件就将临时文件移动到指定目录
rename($temName,$fileName);
echo '文件上传成功!' ;
} else {//如果存在同名文件
echo "存在同名文件!" ; //在这里如何实现类似confirm( )那样的功能?
}
请假各位熟悉PHP的各位大侠,如何实现这样的交互功能(至于重命名这种方法我会)?
先谢谢了!{:1_893:}{:1_893:} echo" <script> alert('存在同名文件')</script> ";
或者使用前端用ajax请求上传接口,返回一个标识,前端对返回的标识进行判断根据标识提示 本帖最后由 wlue 于 2021-9-5 12:24 编辑
wangad123 发表于 2021-9-5 12:20
echo"alert('存在同名文件') ";
或者使用前端用ajax请求上传接口,返回一个标识,前端对返回的标识进 ...
alert()只能给出警告,但不能执行PHP中的操作,ajax倒是可行,就是稍微复杂了些 只有自己写咯,麻烦一些,做出一个特征然后根据特征再进行ajax操作。除此之外貌似也没有什么其他好的办法 php不能实现这种中断执行并交互的能力,只能有错误就输出错误描述 看来只有放弃这种想法,用ajax方法实现了…… web交互只有htmljs , php是后端脚本语言,即便实现也是间接拼接js代码 实现,说白了 是浏览器不认识php是什么玩意, numbersi 发表于 2021-9-5 20:06
web交互只有htmljs , php是后端脚本语言,即便实现也是间接拼接js代码 实现,说白了 是浏览器不认识php ...
看来只能放弃这种想法了 要不就给一个选项让他勾选如果存在同名文件就替换 后台判断是否勾选就行了 本帖最后由 wlue 于 2021-9-6 21:33 编辑
我已经用ajax技术解决了这个问题,效果如下:
上传页面:如果没有选择任何文件,则提交按钮不可用;
选择文件后先进行前端检验,如果文件类型和大小不符合要求,则弹出提示框,提交按钮不可用;
如果通过前端检验,再用ajax检验服务端是否有同名文件存在,并给出相应提示:
页:
[1]