PHP 板


LINE

看板 PHP  RSS
Try this ... <?php $totalCount = ceil(mysql_num_rows($result)/3)*3; for($k = 0; $k < $totalCount; $k ++) { if($k%3 == 0) { echo '<tr>'; } if($row = mysql_fetch_array($result)) { echo '<td style="width:280px;">'.$row[goods_name].'</td>'; } else { echo '<td style="width:280px;"></td>'; } if($k%3 == 2) { echo '</tr>'; } } ?> 至於要特別指定某欄、某列的值,可以使用 mysql_result ; 此外我會建議將 mysql_fetch_array 換成 mysql_fetch_asoc , 如果陣列不需要數字鍵的話。 還有 .... 其實 Table 切版很麻煩, 可以考慮改用 div 配合 float 去排出列表, 套 php Code 會比較神清氣爽 XD ※ 引述《mick90207 (阿公)》之銘言: : 我想做個類似商品清單的顯示頁面 : 可以每列顯示三個商品 : 想請問前輩們該如何撰寫呢? : 有爬到文說可以加個計數器 再利用mod 看看是否要在該迴圈中加<tr> : 只是這樣寫下來 : if 判斷是否加tr : echo "<tr>"; : do loop : <td width="280"><? echo $row[goods_name]; ?></td> : i++ : while... : <tr> : do loop : <td width="280"><? echo $row[price]; ?></td> : i++ : while... : 這樣的話我一次只能把一欄的資料抓出來 : 我再寫第二列價格的時候 : $row[]裡面就會接續下去 : mysql有辦法指定特別要某欄某列的值嗎? : 我現在的code 先把每欄直接*3看看前端介面用.... : <?php do{?> : <tr> : <td width="280"><? echo $row[goods_name]; ?></td> : <td width="280"><? echo $row[goods_name]; ?></td> : <td width="280"><? echo $row[goods_name]; ?></td> : </tr> : <tr> : <td><? echo $row[price]; ?></td> : <td><? echo $row[price]; ?></td> : <td><? echo $row[price]; ?></td> : </tr> : <? }while($row=mysqli_fetch_array($result)); ?> --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.161.70.191
※ 文章網址: http://webptt.com/m.aspx?n=bbs/PHP/M.1400620006.A.8D1.html
1F:→ MOONRAKER:不過就是用table做table的事而已,用div+float做table 05/21 10:07
2F:→ MOONRAKER:的事才真的是不合理。而且跟無障礙設計違背。 05/21 10:08
3F:→ mick90207:謝謝!! 05/21 11:00
4F:推 mick90207:用DIV搭配float的話 是每個商品都為一個獨立的div嗎 05/21 11:53
5F:推 mick90207:試出來了~只是如果名稱長短不一的話 每個DIV的大小也會 05/21 12:47
6F:→ mick90207:不同 這樣要如何排版呢/ 05/21 12:47
7F:→ MOONRAKER:要固定div寬度。所以說應該table做的事就用table就好。 05/21 14:26
8F:→ MOONRAKER:float理解上超不自然的,inline-block還差不多一點。 05/21 14:27
9F:→ danny8376:這裡就是table該做的事+1 05/21 17:20
10F:→ cokellen:這種資料列表,確實用table即可 05/21 19:58
11F:→ alog:table for data 05/21 20:58
12F:→ alog:div 是一種排版用的區塊元素,本身不該是用來顯示密集的資料 05/21 20:58
13F:→ cleanwind:如果要討論 html element 我還是會投 li 而非 table 05/22 00:30
14F:→ cleanwind:原因有兩個,一個是套 Coding 很麻煩,一個是如果以後要 05/22 00:31
15F:→ cleanwind:改版, Code 部分可能得大幅重寫。 05/22 00:31
16F:→ cleanwind:然後的確要把元素設成 inline-block 。 05/22 00:34
17F:→ cleanwind:解法千千萬萬種,原 PO 也可以不用理我的疑問,直接把上 05/22 00:36
18F:→ cleanwind:面的 PHP Code 拿去用,繼續使用 Table :p 05/22 00:36
19F:→ danny8376:會想塞table的資料本身就不該是會有排版需求的東西啊-3- 05/22 03:01
20F:→ danny8376:再說li要弄成table狀也不會好到哪 05/22 03:02
21F:推 alog:資料呈現應該是用table 排版才用div實作.. 05/22 04:31
22F:→ alog:li是給單欄資料用的 05/22 04:32
23F:推 alog:原po應該是誤把切版的意義了 05/22 04:34
24F:推 alog:而原原po問題應該只是卡在資料顯示的問題 談切版 似乎有點遠 05/22 04:36
25F:→ alog:我們講的是資料呈現應該用table tag 而不是說 架構面用table 05/22 04:37
26F:推 alog:不過 我覺得該用什麼應該由發問者自己把ui畫出來才知道用那種 05/22 04:48
27F:→ cleanwind:等等,不會推文說的 table 都是 display 的屬性吧 T_T" 05/22 06:41
28F:→ cleanwind:那我真的是蠢斃了 Orz 但我還是反對 table 是因為 IE6 05/22 06:42
29F:→ cleanwind:不過真心希望 IE6 應該和 XP 一起消失啊 Orz 05/22 06:58
30F:→ danny8376:IE6? 那東西早沒理會啦XD IE8還會稍微注意下www 05/22 07:13
31F:→ cleanwind:長官是老人,老人用 XP , XP 綁 IE , IE 不更新 ..T_T 05/22 08:29
32F:→ danny8376:那偷偷幫忙更新IE8 (X 05/22 09:26
33F:→ MOONRAKER:說歸說,其實滿擔心現在inline-block支援狀況到底如何 05/22 12:57
34F:→ MOONRAKER:不斷更新的chrome當然沒問題 破破碎碎的IE怎麼辦哩 05/22 12:58
35F:→ cleanwind:所以我其實通常是用 span 配合 inline-block ,災請會少 05/22 14:59
36F:→ cleanwind:一點。 05/22 14:59
37F:→ cleanwind:以前幫他更新過 .... 他覺得 IE 6 比較好用,對了他還在 05/22 15:00
38F:→ cleanwind:用 Outlook Express ,常常信件都收到爆 .... (崩潰 05/22 15:00
39F:推 mick90207:請問 mysql_result要怎麼指定某欄某列的值呢? 05/22 17:35
40F:→ mick90207:用大大給的程式碼的話 一次只能把一項資料排成三欄 05/22 17:36
41F:→ mick90207:如果有兩項資料以上的話呢? 05/22 17:36
42F:→ mick90207:我想排成這樣 05/22 17:36
43F:→ mick90207: 商品1 商品2 商品3 05/22 17:37
44F:→ mick90207: 價格 價格 價格 05/22 17:37
45F:→ mick90207: 日期 日期 日期 05/22 17:38
<?php $totalCount = ceil(mysql_num_rows($result)/3)*3; for($k = 0; $k < $totalCount; $k ++) { if($k%3 == 0) { echo '<tr>'; } if($row = mysql_fetch_array($result)) { echo '<td style="width:280px;">'.$row[goods_name]. '<br />'.$row[goods_price]. '<br />'.$row[goods_date].'</td>'; } else { echo '<td style="width:280px;"></td>'; } if($k%3 == 2) { echo '</tr>'; } } ?> 不然在 <td> 裡面塞 <table> 或是什麼 div / span 也行。 ※ 編輯: cleanwind (1.161.70.191), 05/22/2014 17:43:53
46F:推 mick90207:謝謝 待會來試試 05/23 11:01
47F:→ mick90207:說來真慚愧 樓上在討論甚麼看不懂 Orz 05/23 11:02
48F:推 mick90207:請問一下 為什麼是<br /> 而不是<br>呢? 05/24 15:53
49F:推 mick90207:然後為什麼商品中的第一項會顯示不出來呢? 05/24 17:45
50F:推 mick90207:$row = mysqli_fetch_array($result); 05/24 17:49
51F:→ mick90207:是這裡把第一筆資料提取掉了嗎?該如何解決呢? 05/24 17:50
52F:推 mick90207:找到解法了 謝謝! 05/24 17:53
53F:→ MOONRAKER:你只要知道現在都是<br />就好,不用問為什麼。 05/26 09:53
54F:推 mick90207:喔......好 05/27 11:38
55F:推 ez880:問個為什麼都不可以喔 -.- 05/29 20:28
56F:→ ez880:在這個實例上看來 根本不是table該做的事情 還叫人用table 05/29 20:29
57F:→ ez880:揪竟是什麼樣的心態呢~~ 05/29 20:30
58F:→ danny8376:樓上能解釋為何不是table? 純資料排列就是table啊 05/29 23:23
59F:→ danny8376:不然還麻煩舉例何時才能用table 05/29 23:23
60F:→ ez880:告訴我 他這樣排版 怎麼跟搜尋引擎說 我的第一列是什麼? 05/29 23:35







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Gossiping站內搜尋

TOP