【发布时间】:2019-01-19 23:12:12
【问题描述】:
有什么问题?
while($rov = mysql_fetch_array($result)) {
$expire = time()+(60*60*24*30);
setcookie('cookie',$rov,$expire);
$userID = $rov;
}
if(isset($_COOKIE['cookie'])) {
$userID = $_COOKIE['ID'];
}
if(isset($_COOKIE['cookie'])) {}
错误信息:
警告:setcookie() 期望参数 2 是字符串,数组在 /index.php 第 24 行给出
【问题讨论】:
-
$rov的值是多少?仅允许将字符串作为第二个参数。见php.net/manual/en/function.setcookie.php -
mysql_fetch_array返回一个数组而不是字符串。 -
危险:您正在使用 an obsolete database API,它已从所有受支持的 PHP 版本中删除。您应该使用modern replacement 并升级到接收安全修复程序的 PHP 版本。
-
很高兴收到警告。当您将数组转换为字符串时,您只会得到单词“Array”(literally),因此该错误不会被注意到。
标签: php cookies isset setcookie