台灣最大程式設計社群網站
線上人數
605
 
會員總數:244807
討論主題:188842
歡迎您免費加入會員
討論區列表 >> PHP >> PHP分頁筆數
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
PHP分頁筆數
價值 : 20 QP  點閱數:2728 回應數:11

樓主

鐘志豪
門外漢
0 1
28 2
發送站內信

請問以下程式碼要如何在一頁內只呈現10筆資料??



搜尋相關Tags的文章: [ PHP分頁筆數 ] , [ PHP資料 ] ,
本篇文章發表於2017-06-07 14:57
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
回應

彩虹
檢舉此回應
未看程式碼先猜你應該沒用limit
請搭配 sql 的 limit

如果還是不懂的話,請參考

PHP簡易分頁實作 (這範例對你來說比較好懂,如果不懂我也沒辦法了...)
http://ithelp.ithome.com.tw/articles/10156675

(題外話,mysql_connect()..請不要再使用了,請改用PDO或mysqli)
本篇文章回覆於2017-06-07 15:29
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

鐘志豪
檢舉此回應
未看程式碼先猜你應該沒用limit
請搭配 sql 的 limit

如果還是不懂的話,請參考

PHP簡易分頁實作 (這範例對你來說比較好懂,如果不懂我也沒辦法了...)
http://ithelp.ithome.com.tw/articles/10156675

(題外話,mysql_connect()..請不要再使用了,請改用PDO或mysqli)

--------------------------------------------------------------------------
連結內的方式我試過了,但是也得不到我要的效果。
我要的功能不是查詢,而是抓出資料,我把我 catalog_id 表單內的有關 "動物" 分類的資料全部撈出來。

如果我把 $sql = "SELECT * FROM product WHERE catalog_id = '動物' order by catalog_id limit 10";

設定成這樣,就只會顯示10筆沒錯,但分頁只有1頁,其他資料無法呈現其他分頁 2~N,請問要怎麼修改??



我要的效果如下 但我目前的效果

圖 圖 圖 圖 圖 圖 圖 圖 圖 圖

圖 圖 圖 圖 圖 圖 圖 圖 圖 圖

頁數~頁數 圖 圖 圖 圖 圖

圖 圖 圖 圖 圖

圖 圖 圖 圖 圖

圖 圖 圖 圖 圖

圖 圖 圖 圖 圖

圖 圖 圖 圖 圖

圖 圖 圖 圖 圖

頁數


-----------------------------------------------------------------------



本篇文章回覆於2017-06-07 16:54
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
回應

os_dd
檢舉此回應
我要的功能不是查詢,而是抓出資料,我把我 catalog_id 表單內的有關 "動物" 分類的資料全部撈出來。

如果我把 $sql = "SELECT * FROM product WHERE catalog_id = '動物' order by catalog_id limit 10";

設定成這樣,就只會顯示10筆沒錯,但分頁只有1頁,其他資料無法呈現其他分頁 2~N,請問要怎麼修改??
以上是你所描述的
即然你知道 只會顯示10筆 分頁只有1頁 那只要變limit 後面的參數就好了
例如
SELECT * FROM product WHERE catalog_id = '動物' order by catalog_id limit 0,10" -- 第一頁
SELECT * FROM product WHERE catalog_id = '動物' order by catalog_id limit 11,20" -- 第二頁
本篇文章回覆於2017-06-07 17:22
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
回應

彩虹
檢舉此回應
我真的很傻眼,你這樣子的使用方式,當然只會有1頁

不要馬上就下定論那不是你要的東西

那範例真的是非常簡潔有力而且很好懂
但你卻無法整合進去,然後就說這不是你要的

1.你有去了解原理嗎?
2.你覺得你運用的方式是正確的嗎?
3.你有靜下心來好好整理一下你的程式碼嗎?
4.寫程式不是複製過來就可以用的
5.你知道你現在整合出來的東西,「上面程式碼」跟「下面程式碼」已經毫無任何關聯了嗎?

你現在貼出來的程式碼,讓我看的一肚子火

我建議你先把你目前的思維轉換一下,拋開你目前的想法吧...
1.先把範例的程式碼完整貼過去,然後修改一下,先把分頁的完成再說 (先完成秀出所有的 catalog_id = '動物' 的資料吧)
2.成功後再把你需要的功能慢慢加回去

寫程式不要那麼急,明明答案就在眼前!


謝謝您







本篇文章回覆於2017-06-07 17:26
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
回應

浩瀚星空
捐贈 VP 給 浩瀚星空 檢舉此回應
這個問題其實也算是很古老級的問題了。

其實說穿了。分兩次sql來處理就好了。

第一次先將帶入條件的總筆數帶出。(比較笨的方式就是直接 SELECT count(*) AS allnum FROM db)
總筆數有了,你自然就可以計算總頁數了。

第二次才是帶入正常的資料運用 limit 來取得對應資料就行了。

其實在這堨這個問題我就教過好幾10次了。你可以找找一下舊文章。因該可以找到我當初給的教學。
本篇文章回覆於2017-06-07 17:34
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
回應

浩瀚星空
捐贈 VP 給 浩瀚星空 檢舉此回應
喔~~~對了。
先說一下你程式上的寫法通病。

不要用echo或是print來做html輸出。
這會讓整個程式碼看的花花的。

了解一下sql的運作語法原理。
我記得我也有教一篇分頁的寫法教學才對。你可以搜尋找一下。


本篇文章回覆於2017-06-07 17:39
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
7樓
回應

可樂快跑
檢舉此回應
「SELECT * FROM product WHERE catalog_id = '動物' order by catalog_id limit 0,10" -- 第一頁
SELECT * FROM product WHERE catalog_id = '動物' order by catalog_id limit 11,20" -- 第二頁」

看到這種錯的離譜的範例我也是醉了。
這範例有二個根本上的「概念錯誤」。

換個帳號回來……怎麼還是沒進步呢?
本篇文章回覆於2017-06-07 17:40
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
8樓
回應

彩虹
檢舉此回應
To #os_dd (久違的蒼天阿)

不是說不出現了,一出現又亂回答是怎樣...

limit 0,10 (OK,這正確)
limit 11,20 (哇哩??? 這是什麼東西)


我假設你知道 limit 0,10 => 從第1筆開始,取10筆

那你又知道 limit 11,20 代表什麼意思嗎,是從第12筆開始,取20筆

如果繼續下去你知道多恐怖嗎 limit 21,30 => 從第22筆開始,取30筆


加油吧...







本篇文章回覆於2017-06-07 17:49
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
9樓
回應

小魚
檢舉此回應
原作者沒反應,
簡單來說你要做兩件事,
一件事是使用count撈出共有幾筆資料
另一件事是使用limit抓出一頁的資料,
不過建議不要使用*,效率比較差,
如果資料筆數多的話,
還要加上SQL語法優化,
不過那是以後的事了。
本篇文章回覆於2017-06-07 23:25
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
10樓
作者回應

鐘志豪
檢舉此回應
謝謝大家的講解,我的做法好像錯很大,錯在我只想將 不同的東西用同一個SQL呈現,我再好好了解,從大學畢業後就沒碰過這個,有點亂....!!
我在去摸索一下新的寫法好了,目前只用大學教過的方式寫,不知道哪些程式碼可能會造成什麼問題。
我再找看看有沒其他的範例來改好了,我呈現的方式也要適合RWD才行,畢竟是現在的趨勢,
JAVA太深奧了,無法理解....
本篇文章回覆於2017-06-08 17:59
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
11樓
回應

浩瀚星空
捐贈 VP 給 浩瀚星空 檢舉此回應
要想了解,要先認清一件事

JAVA 是 JAVA
javascript 是javascript

這兩個是不同的東西。這是第一點要學的。

你最後的回應,我發現有非常大的問題存在。我唸唸就好,不喜歡聽就當沒看到

1.你的問題只是在觀念上的理解問題,大學教你的寫法本身並沒有錯。
錯在你不知道如何應用而已。(程式很死的,但人是活的)

2.「我再找看看有沒其他的範例來改好了」........
這句話倒是讓我有點不太可以認同。雖然說學程式就是用copy的學是最快我不會否認
只是......用改的說法是真的有點不太能接受就是了。我個人問題,聽聽就好。

3.RWD是樣式規化的部份,如果不做很特別的處理。只要css就很夠用。不一定會運用到javascript
而且分頁的處理方式,跟rwd的規劃是兩種不同領域要學的。你想同時找到。你得要有非常天才的智慧去了解多元化程式
要不然就是得要自行去理會其中的道理,來自行組合處理。

4.總結:如果你今天是為了交作業,而非在這一個行業上。那我上面聽聽就好了。能交作業就行了。
但如果你想要再該業界生存待下去。最好改變一下你的學習心態。
雖然說從文字內並不一定可以代表你本人的心態是如何。不過就單最後這篇文章你的對話。
確實讓我對你的學習態度有點質疑。當然我還是說了,這是我個人觀點問題,不會說你對或是錯。

最後一句話給你,一切請從基本的做起。
就這個分頁而言,先去了解我們實際上說的東西是什麼。這並不困難。
先取得總筆數,再取得對應分頁的資料。這是不變的東西。不會有第二種方法。
本篇文章回覆於2017-06-09 10:02
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.