【问题标题】:MYSQL PDO fetch multiple rows from fetchAll not workingMYSQL PDO 从 fetchAll 获取多行不起作用
【发布时间】:2018-11-14 20:37:50
【问题描述】:

如何使用单个查询获取 wordpress 中的所有帖子。

我在下面尝试使用 fetchAll(),但它不起作用。

它只显示RESUlT 与帖子总数相同的次数。

代码:

更新的帮助文件:

$posttypevalue = Mage::helper('wordpress')->getPostMetaData();
var_dump($posttypevalue);   //gives NULL

模板文件

public function getPostMetaData()
{
    try{
    $resource = Mage::getSingleton('core/resource');
    $readConnection = $resource->getConnection('new_db');
    //$query = 'SELECT meta_value FROM ' . $resource->getTableName('wp_postmeta'). ' WHERE post_id = '.$postID.' and meta_key = "type"';
     echo 'vardumping results';   //Even this line is not displaying
     $query = 'SELECT wp_posts.*, wp_postmeta.meta_value
                FROM wp_posts ,wp_postmeta
                WHERE  wp_posts.ID =wp_postmeta.post_id
                AND wp_postmeta.meta_key="type"
                AND wp_posts.post_status="publish"';
    $results = $readConnection->fetchAll($query);
    //$postdata = array();
    
    //foreach($results as $value){
        //var_dump($value);  //gives empty
        //$postdata[]=  $value['post_title'];
    //}
    }catch (Exception $e) {

        return true;
    }   
}

数据库结构如下:

输出:

对于第一个被评论的查询:

$query = 'SELECT meta_value FROM ' . $resource->getTableName('wp_postmeta'). ' WHERE post_id = '.$postID.' and meta_key = "type"'

转储结果

1 显示 5 次

对于我当前使用的查询:

var_dump($values) 的输出:

带有页眉和页脚的空白页面。

即使 $query 行上方的回声也不显示。

这很奇怪!

【问题讨论】:

  • 你为什么要标记 Magento?
  • 因为这是 Wordpress fishpig magento 插件
  • 两个查询之间的唯一区别是 wp_posts.post_status="publish"';你能试着把它去掉吗?
  • 删除最后一个发布条件后仍然是相同的空白页面:(并且在相同的条件下,我能够在 phpmyadmin 中获得输出,为什么不在 vardump 中?没有与此相关的 apache 日志或 php 日志
  • 如果我执行 $query= 'select * from wp_postmeta limit 5';然后我得到 vardump 结果,为什么不是我需要的查询,我也尝试对我的实际查询应用限制,它又是空的

标签: php mysql pdo


【解决方案1】:

您可以通过var_dump($value) 来查看内容。

我认为你应该使用$postdata[] = $value['post_title'];

结果的字段名不包含表名。

【讨论】:

  • 是的@shawn,之前用 $value['post_title'] 尝试过,但是值是空的,var_dump($value) 也是空的,但是如果我直接在 phpmyadmin 中使用提到的 sql 查询工具,我得到结果
  • 您是否尝试过var_dump($results)(并将输出粘贴到问题中)?很难相信结果是空的......
  • 已更新问题,如果我 var_dump($posttypevalue);在模板文件中,现在它显示“NULL”,但如果 i var_dump($values) 没有显示
猜你喜欢
  • 2016-04-16
  • 2013-02-05
  • 2015-03-31
  • 1970-01-01
  • 2017-06-16
  • 1970-01-01
  • 2014-04-28
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多