不应静态调用非静态方法Pager :: factory()

时间:2013-05-10 05:36:34

标签: methods pager non-static

我是php的初学者。每当我尝试在pear中实现Pager类时,我都会收到此错误

非静态方法Pager :: factory()不应在第21行的D:\ xampp \ htdocs \ sam \ temp \ youtube_playlist.php中静态调用

我的代码是

<?php
        include("header.php");
        include("connect.php");
        //connect to db to get video data
        $qr = mysql_query("SELECT vid FROM videos",$con);
        $data="";
        while($row = mysql_fetch_array($qr))
        {
        $data[]=$row['vid'];
        }

        //pageing       
        require('Pager/Pager.php');
        $pg_op= array(
        'itemData'=>$data,
        'append' => true,
        'perPage' => 3,
        'mode' => 'Sliding',
        'delta' => 2
        );
        $pager = Pager::factory($pg_op);
        $pdata = $pager -> getPageData();
        $plinks = $pager -> getLinks();

            //Display the video
            foreach ($pdata as $vd)
            {
?>


            <iframe width="510" height="265" src="http://www.youtube.com/embed/<?php echo $vd; ?>" frameborder="0" allowfullscreen></iframe>
            <?php
                }


                echo "<br />";
                echo $plinks['all'];
                include("footer.php");
            ?>

请帮忙

1 个答案:

答案 0 :(得分:1)

我遇到了同样的问题。 这个Pager类似乎已经过时了。如果您仍想使用它,只需通过在@

前面加上命令来抑制错误
$pager = @Pager::factory($pg_op);