以下のコードで、データベースに製品が100個あり、その製品名を縦横10×10で表示させるにはどうすればよろしいでしょうか?ご教授のほどよろしくお願いいたします。
php
1<?php 2// データベース情報 3$sv = 'xxx'; // サーバー名 4$db = 'db'; // データベース名 5$uid = 'xxx'; // ユーザー名 6$pwd = 'xxx'; // パスワード 7 8// データベースに接続します 9try { 10 $db = new PDO('mysql:host='.$sv.'; dbname='.$db, $uid, $pwd); 11 $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 12 $db->exec('SET NAMES utf8'); 13} catch(PDOException $e) { 14 die('Connection failed: '.$e->getMessage()); 15} 16$now = date('Y-m-d'); 17// 商品テーブルのデータを取得します 18$sth = $db->prepare("SELECT COUNT(product_name) FROM tbl"); 19$sth->execute(); 20 $row = $sth->fetch(PDO::FETCH_ASSOC); 21?> 22 23<?php 24$pdo = new PDO("mysql:host=xxx; dbname=db; charset=utf8", "xxx", "xxx", array( PDO::ATTR_EMULATE_PREPARES => false ) ); 25 26 $statement = $pdo->prepare( "select * from tbl " ); 27 $statement->execute( ); 28 $results = $statement->fetchAll(); 29?> 30 31<table> 32<?php 33foreach ($results as $result) { 34?> 35 36<?php 37$count = $row['COUNT(*)']; 38for($count=0; $count<100; $count++){ 39if($count % 10 == 0){ 40print'<tr>'; 41} 42} 43?> 44 45<?php print( htmlspecialchars( $result["product_name"], ENT_QUOTES ) ); ?> 46 47<?php 48for($count=0; $count<100; $count++){ 49if($count % 10 == 0){ 50print'</tr>'; 51} 52} 53 54} 55} 56?> 57</table>
回答1件
あなたの回答
tips
プレビュー