我有一个关于php setcookie的问题。
当用户上传我的服务器中的文件时,它会设置cookie来存储文件名。
setcookie("user",$filename,time()+3600);
在输出代码中:
您最近上传的内容: echo $_COOKIE"user";
示例:您最近上传的图片: abc.zip
但是当用户上传新文件时,新文件名将覆盖旧文件名。
我怎么能做到这一点。不要覆盖旧的文件名。
示例:
您最近上传的图片:
abc.zip
def.zip
ghi.zip
.
.
谢谢!
发布于 2012-04-01 11:26:52
将文件名保存在可序列化的数组结构中,如JSON数组:
$files = !empty($_COOKIE['user']) ? json_decode($_COOKIE['user'], true) : array();
$files[] = $filename;
setcookie('user', json_encode($files), time()+3600);发布于 2012-04-01 11:30:41
您可以在每次上传时附加cookie,并以特殊字符结尾,如"|“,并在编写屏幕时拆分。
$uploaded = isset($_COOKIE['uploaded']) ? $_COOKIE['uploaded'] : '';
setCookie('uploaded', $uploaded . '|' . $newFileName,time()+3600);
// when showing
$uploaded = explode('|', $_COOKIE['uploaded']);
foreach ($uploaded as $file) {
if(empty($file)) continue;
echo $file . '<br/>';
}发布于 2012-04-01 11:26:25
给你,试试这个:
$old_cookie = $_COOKIE["user"];
setcookie("user", $filename+"<br />"+$old_cookie, time()+3600);https://stackoverflow.com/questions/9961632
复制相似问题