【问题标题】:Can't use function return value in write context on list function无法在列表函数的写入上下文中使用函数返回值
【发布时间】:2017-11-01 02:25:54
【问题描述】:

在运行下面的代码时,它会导致我的错误

致命错误:无法在写入上下文中使用函数返回值 /home/site/public_html/administrator/blog_manage.php 第 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");

            } 
        }

}

有什么办法吗?

【问题讨论】:

    标签: php image-uploading


    【解决方案1】:

    你需要将变量实际传递给list(),你不能将它们包装在一个函数中。

    你需要做的:

    list($d,$m,$y)=explode(" ",$date);
    

    您可以稍后逃脱它们。

    另外,您需要使用 mysqli 或 PDO,不推荐使用 mysql_* 函数。

    【讨论】:

    • 以后转义是什么意思?
    • 稍后在代码中执行...显然您想在每个代码上使用mysql_real_escape_string(),所以只需执行下面的行。例如。 $d = mysql_real_escape_string($d).
    猜你喜欢
    • 1970-01-01
    • 2016-09-02
    • 1970-01-01
    • 1970-01-01
    • 2011-04-22
    • 2012-06-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多