morimori15のプロフィール

@morimori15 morimori15
ありがとう数1
質問数1
回答数2
ベストアンサー数
0
ベストアンサー率
0%
お礼率
0%

  • 登録日2007/10/31
  • IT系の仕事で将来性のあるスキルはどんなスキル?

    例えば フォトショップ イラストレーター HTML、JAVA,PHPなど言語を覚える ネットショップの運営経験 あとはあまり浮かばないんですが、今後スマートフォンがどんどん普及していくなかで どういうスキルが将来性がありますか?

  • MySQLからのデータを「Pager」を使って分割表示する

    はじめまして。PHPとMySQLとPEARのPagerを使った質問なのですが、過去レス等を参考にしながらやってみました。 「form.html」から社員の年齢の最低と最高を入力し、それを「search.php」にgetで渡し、ヒットしたデータの名前と年齢を表示したいのです。 データが多いのでページを1ページに何件かずつ分けて表示したいのですが、「Pager」を使ったやりかたを以下のように書いてみました。 どうしても「Pager」を使ってやってみたいのですが、うまくいきません。 MySQL には(id ,name ,age の3カラムのデータが格納されています) form.html---------------------------------- <html> <head> <title>社員の名前と年齢について</title> </head> <body> <form method="get" action="search.php"> <input type="text" name="age_min"> 歳 ~ <input type="text" name="age_max" > 歳 <input type="submit" name="submit" value="検索"> </form> </body> </html> ---------------------------------------------- search.php--------------------------------------- <html> <head> <title>社員の名前と年齢について</title> </head> <body> <? //ここから http://oshiete1.goo.ne.jp/qa4155006.htmlを参考 $search=""; $age_min=$_REQUEST["age_min"]; $age_max=$_REQUEST["age_max"]; if(is_numeric($age_min) and is_numeric($age_max)) $search.=($search==""?"":"&")."age_min={$age_min}&age_max={$age_max}"; //ここまで http://oshiete1.goo.ne.jp/qa4155006.htmlを参考 //DB接続 require_once ('Pager/Pager.php'); $conn = mysql_connect ("サーバー名", "ユーザー名", "パスワード") or die ('接続できませんでした'); mysql_select_db ("search",$conn); //MySQLのクライアントの文字コードをsjisに設定 mysql_query("SET NAMES sjis") or die("can not SET NAMES sjis"); $sql_1= mysql_query("select count(*) as max from search where age between '$age_min' and '$age_max'"); $row1 = mysql_fetch_array($sql_1); if($row1[max] == 0) $message = "該当者なし"; else $message = $row1["max"] . "人ヒット"; $row1_max = $row1["max"]; echo "検索結果<br>"; echo "$message"; $sql_2= mysql_query("select name,age from search where age between '$age_min' and '$age_max'"); $row2 = mysql_fetch_array($sql_2); //Pagerの導入 $params = array( 'itemData' => $row2, 'mode' => 'Jumping', 'perPage' => 10, 'delta' => 6, 'totalItems' => $row1_max ); //Pagerのインスタンスを生成 $pager = & Pager::factory($params); $links = $pager->getLinks(); $data = $pager->getPageData(); $c_pager = $pager->getCurrentPageID(); $e_pager= $pager->numPages(); print $data["all"]; print $links["all"]; ?> </body> </html> ------------------------------------------------------------------- ページ分割しなければ、「Pager」を使わずに、上のデータ表示箇所を while($row2 = mysql_fetch_array($sql_2)){ echo "<table border='1' cellpadding='0' cellspacing='0'>"; echo "<tr>"; echo "<td>".$row2["name"]."</td>"; echo "<td>".$row2['age']."</td>"; echo "</tr>"; echo "</table>"; } みたいな感じで書き換えればうまく表示されるのですが、「Pager」を使う場合は $data = $pager->getPageData(); でページのデータを返してくれると書いてあったもので、使ってみました。おそらく、 (1)'itemData' => $row2, (2)$data = $pager->getPageData(); (3)print $data["all"]; の3箇所あたりがおかしいかと思っております。どうかよろしくお願いします。

    • 締切済み
    • phdot12
    • PHP
    • 回答数4