プロが教える店舗&オフィスのセキュリティ対策術

PHP5&MySQL5&XP,pear::DB接続
Pager::factory()を使用し、1ページに1件ずつMySQLからのデータを
表示させようとしています。
下記プログラムから、DBのフィールドidとquestuionを表示させたいのですが、
うまくいきません。
ご教授いただけると幸いです。
<?
session_start();
?>
//--セッション開始しログイン中の方の名前を表示させています
<?php
require_once 'Pager/Pager.php';
//DBに接続
include_once('connection.php');
$sql="select * from examin ORDER BY RAND() LIMIT 20";
$res = mysql_query($sql);
$i=1;
while($row = mysql_fetch_assoc($res)) {
$data_list[] = array(
"id"=>$row["id"],
"question"=>$row["question"]
);
}
//Pagerへのデータ割り当て処理
$perPage=1;
$params=array("perPage"=>$perPage, "itemData"=>$data_list);
$o_page=Pager::factory($params);
foreach($o_page->getPageData() as $item){
$data_list_for_page[]=$item;
}
//--ここから先がわかりません。
?>

A 回答 (2件)

初めまして。


表示部分のみですが。


// テスト用配列
$data = array(
array("id" => "test1", "question" => "10"),
array("id" => "test2", "question" => "20"),
array("id" => "test3", "question" => "30"),
array("id" => "test4", "question" => "40"),
array("id" => "test5", "question" => "50"),
array("id" => "test6", "question" => "60"),
array("id" => "test7", "question" => "70"),
array("id" => "test8", "question" => "80")

);

//Pagerへのデータ割り当て処理
$perPage = 1;
$params = array("perPage"=>$perPage, "itemData"=>$data);
$o_page = Pager::factory($params);

// 表示
foreach($o_page->getPageData() as $item){
extract($item);
printf("ID:%s<br>\n", $id);
printf("question:%s<br>", $question);
}

// Pagerリンク表示
echo $o_page->links;

いかがでしょう?

この回答への補足

すいません。基本的なエラーが出てしまいました。
Fatal error: Class 'Pager' not found in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\learningsite-jp\test08.php on line 18
1.コマンドプロンプトで
c:\Program Files\php5>pear install pager-2.4.3
→Ignore installed packege pear/pager
Nothing to install

2.pear list Pager

http://www.phpbook.jp/pear/pear_pager/index1.html
と全く同じものが出てきます。

ちなみに、ご指摘いただいたソースの初めと終わりに
<?php ?>を付けただけで実行しています。

お手数おかけして、すいません。

補足日時:2008/06/13 16:25
    • good
    • 0
この回答へのお礼

お礼が遅くなりすいません。
ご提示いただいたサンプルを元に勉強してみます。

お礼日時:2008/07/08 10:10

require_once し忘れていませんか?



ソースの冒頭に下記を追加してください。
require_once 'Pager/Pager.php';
    • good
    • 0
この回答へのお礼

>ソースの冒頭に下記を追加してください。
>require_once 'Pager/Pager.php';
はい、おっしゃる通りでした。初歩的なミスですいません。

お礼日時:2008/06/13 21:00

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!