将mysql_data_seek函数更改为PDO

时间:2014-08-21 05:02:30

标签: php mysql pdo

我正在使用分页功能将MySQL更改为PDO,有一个函数可以让我获得select查询的结果然后我正在使用

$result=$DB->Select($query);
$result->fetch(PDO::FETCH_OBJ, PDO::FETCH_ORI_ABS,$_POST['from']);} 

用于从特定位置检索数据,但它始终提供所有记录。 在MySQL中,我使用mysql_data_seek来使用它。

1 个答案:

答案 0 :(得分:0)

最后我发现CURSOR_SCROLL在MYSQL中不起作用 所以我创建了自己的代码来从MYSQL中获取数据,其工作方式类似于mysql_data_seek

这是代码

$res = $DB->conn->prepare($query);
$res->execute();

$res->fetch(PDO::FETCH_ASSOC, PDO::FETCH_ORI_REL,$frmdata['from'] );

$countRows=1;

$arr=array();

$row=$res->fetchAll(PDO::FETCH_OBJ);

foreach($row as $key => $value)
{
   if($key >=$frmdata['from'])
   {
     $arry[]=$value;
   }

}


for($i=0; $i<count($arry) ;$i++)

{
    if(!isset($frmdata['record']) || (isset($frmdata['record']) && $frmdata['record']!='All') )
    {
            if($countRows <= $frmdata['to'])
            {
                    $arr[]=$arry[$i];
            } 
    }
    else
    {
            $arr[]=$arry[$i];
    }   
    $countRows++;


}

return $arr;

它正常工作。