doubao6681 2014-10-30 17:52
浏览 62
已采纳

GROUP_CONCAT查询中的var_dump无法正常工作

I'm trying to print a value from a group_concat query, but for some reason, the code keeps failing. If I print the array that contains my value, I am able to see that everything is being fetched correctly. But when I try to access the first element in the array, my page gives me a white screen. Why is this happening?

$db =& JFactory::getDBO();
 $db->setQuery("SELECT GROUP_CONCAT( FieldValue )
FROM tpro_rsform_submission_values
WHERE FieldName
IN (
'LAST NAME', 'FIRST NAME'
)
GROUP BY SubmissionId");

$result = $db->loadObjectList();
foreach ($result as $r) {
        echo var_dump($r);
}
// </code>

The following is the result for my var_dump($r)

enter image description here but when I try to do a var_dump($r[0]), my page gives me a white screen.

Similarly, when I try to access the field through var_dump($r['GROUP_CONCAT(FieldValue)']) I still get a white screen. How do can we access the field?

  • 写回答

2条回答 默认 最新

  • duanbeng8872 2014-10-30 18:00
    关注

    You need to give the field an alias -

    $db->setQuery("SELECT GROUP_CONCAT( FieldValue ) AS whatever
    

    and then

    echo var_dump($r->whatever);
    

    I am not sure why you're using $result = $db->loadObjectList(); though. You could use any of the array methods and it would be better/easier for what you're trying to do. Then you would say:

    echo var_dump($r['whatever']);
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?