推 fantasyj:例如SQL SERVER用EXCEL OR CSV就不用.. 10/27 13:07
※ 引述《knives ()》之銘言:
: 我的DBMS是Mysql
: 我有一個相簿Table是 長這樣 picid 、pic_href
: 如果我想做輪播的話,假設我有五張圖 p1、p2、...、p5
: 假設我現在點到p3 的話,那下一張就是p4、上一張就是p2
: 如果是點到p1的話,那上一張就是p5,反之p5的下一張就是p1
: 因為我希望一次照順序列出來放在陣列供js使用
: 不必說要等到按下按鈕再來抓下一張是誰
: 這樣的話,陣列的順序就要一次決定
: 我原本是想說執行三次sql
: SELECT * FROM pic WHERE picid<'目前的picid'
: SELECT * FROM pic WHERE picid='目前的picid'
: SELECT * FROM pic WHERE picid>'目前的picid'
: 再丟到陣列上,可是這樣要執行三次sql,不知道有沒有方法做一次就好了
: 謝謝回答
有點訝異~
要做聯播時,假設你希望以「上傳時間」或是「檔名」或是「客戶的特定需求」
作為排序條件,
ok!
很簡單用Group by XXX 語法即可
然後把所有排序後的檔名傳到前端JS,用陣列存放
例如
var imgArray = new Array();
imgArray = ['aa','bb','cc','dd'];
如果要迴圈地播放,最後一張圖的下一張就是第一章
這應該用前端的js來控制,
例如 dd的下一張就是aa
var jj = imgArray.indexOf('dd')
if (jj >= (imgArray.length-1))
jj = 0;
else if (jj <= 0)
jj = imgArray.length-1;
else
jj++;
var showPicture = imgArray[jj];
直接從JS的陣列取出一筆資料,到後端取檔案
無須用後端SQL再做撈資料再做排序與下一張動作,這樣太麻煩
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.120.175.188