无法在列表函数的写入上下文中使用函数 return 值
Can't use function return value in write context on list function
在 运行 上,下面的代码对我来说是一个错误
Fatal error: Can't use function return value in write context in
/home/site/public_html/administrator/blog_manage.php on line 24
第 24 行是 list
函数
if($manage=="add_blog")
{
$titile=mysql_real_escape_string($_POST['titile']);
$news=mysql_real_escape_string($_POST['news']);
$date=date("d F Y");
$radio=mysql_real_escape_string($_POST['r']);
list(mysql_real_escape_string($d),mysql_real_escape_string($m),mysql_real_escape_string($y))=explode(" ",$date);
$sql="insert into blog (name,day,month,year,date,content)
values('$titile','$d','$m','$y','$date','$news')";
$query=mysql_query($sql)or die(mysql_error());
$memberID = -1;
$sql = "SELECT LAST_INSERT_ID()";
$rs = mysql_query($sql);
if($row = mysql_fetch_array($rs))
{
$memberID= $row['LAST_INSERT_ID()'];
}
if($radio=='image'){
if(isset($_FILES['image']))
{
$baseName = basename($_FILES['image']['name']);
$ext=strrchr($baseName,".");
if(isset($baseName) && strlen(trim($baseName)) > 0)
{
$filenameToStore = $memberID."blog".$ext;
$uploadfile = "../blog/images/". $filenameToStore;
//echo $uploadfile;
if(move_uploaded_file($_FILES['image']['tmp_name'], $uploadfile))
{
$sql = "UPDATE blog
SET image= '$filenameToStore',url='NIL'
WHERE id = $memberID";
mysql_query($sql) or die(" Error # 5156");
}
}
}
有什么解决办法吗?
您需要实际将变量传递给 list(),不能将它们包装在函数中。
您需要做的:
list($d,$m,$y)=explode(" ",$date);
你可以稍后逃脱它们。
此外,您需要使用 mysqli 或 PDO,不推荐使用 mysql_* 函数。
在 运行 上,下面的代码对我来说是一个错误
Fatal error: Can't use function return value in write context in /home/site/public_html/administrator/blog_manage.php on line 24
第 24 行是 list
函数
if($manage=="add_blog")
{
$titile=mysql_real_escape_string($_POST['titile']);
$news=mysql_real_escape_string($_POST['news']);
$date=date("d F Y");
$radio=mysql_real_escape_string($_POST['r']);
list(mysql_real_escape_string($d),mysql_real_escape_string($m),mysql_real_escape_string($y))=explode(" ",$date);
$sql="insert into blog (name,day,month,year,date,content)
values('$titile','$d','$m','$y','$date','$news')";
$query=mysql_query($sql)or die(mysql_error());
$memberID = -1;
$sql = "SELECT LAST_INSERT_ID()";
$rs = mysql_query($sql);
if($row = mysql_fetch_array($rs))
{
$memberID= $row['LAST_INSERT_ID()'];
}
if($radio=='image'){
if(isset($_FILES['image']))
{
$baseName = basename($_FILES['image']['name']);
$ext=strrchr($baseName,".");
if(isset($baseName) && strlen(trim($baseName)) > 0)
{
$filenameToStore = $memberID."blog".$ext;
$uploadfile = "../blog/images/". $filenameToStore;
//echo $uploadfile;
if(move_uploaded_file($_FILES['image']['tmp_name'], $uploadfile))
{
$sql = "UPDATE blog
SET image= '$filenameToStore',url='NIL'
WHERE id = $memberID";
mysql_query($sql) or die(" Error # 5156");
}
}
}
有什么解决办法吗?
您需要实际将变量传递给 list(),不能将它们包装在函数中。
您需要做的:
list($d,$m,$y)=explode(" ",$date);
你可以稍后逃脱它们。
此外,您需要使用 mysqli 或 PDO,不推荐使用 mysql_* 函数。