Monday, December 5, 2011

pager_query 分頁無效?

是否曾遇過使用 theme 的 pager 分頁有問題呢?
http://api.drupal.org/api/drupal/includes--pager.inc/function/pager_query/6Unfortunately, the rewrite rule does not always work as intended for queries that already have a "COUNT(*)" or a "GROUP BY" clause, and possibly for other complex queries. In those cases, you can optionally pass a query that will be used to count the records.
For example, if you want to page the query "SELECT COUNT(*), TYPE FROM node GROUP BY TYPE", pager_query() would invoke the incorrect query "SELECT COUNT(*) FROM node GROUP BY TYPE". So instead, you should pass "SELECT COUNT(DISTINCT(TYPE)) FROM node" as the optional $count_query parameter.
原來問題出在這
druapl 官網的文件也有指出
遇到 sql 裡面有 count 或 group by 的確會有分頁數算不準的問題
由於我的條件還有 having
左思右想還是沒辦法解決

後來透過建 view 的方式解決了
sql 裡面有 Aggregation function 的,要另外在 pager_query 跟 theme 的 pager 塞算筆數的值

$sql_count = db_rewrite_sql("SELECT COUNT(*) FROM {vw_member_lv} WHERE nid = ".$nid." AND cts BETWEEN 1 AND 20");
$_result = pager_query("SELECT * FROM {ot_quest_trans} WHERE op IN ('a17', 'c35') AND nid = ".$nid." GROUP BY uid HAVING COUNT(uid) BETWEEN 1 AND 2", 10, 0, $sql_count);
........
$output = theme('table', $header, $rows, array('class' => 'member_list', 'cellpadding' => 0, 'cellspacing' => 0, 'border' => 0));
$output.= theme('pager', array(), $sql_count);


Sunday, October 2, 2011

Drupal 6:讓 fbconnect 支援新版 facebook php sdk 3.0

由於目前 fbconnect 沒有釋出新的 drupal6 的版本(目前最新 6.x-2.x-dev 更新時間為 2011-03-23)
該版本 facebook php sdk 仍然維持在支援 2.x 的情形
面對著 facebook 要在 2011-10-01 說要停止支援 2.x 的版本的情況下
(今天已經第二天了,舊版還是可以用阿 orz...)
這邊有人寫個 patch 可以讓 drupal6 的 fbconnect 也支援到 3.1.1

經修改後是正常的喔!
改完記得要清掉 cache 前端才會正常

另外 3.x 開始需要呼叫一個 channel.html 檔案
參考來源裡面可以下載

參考來源:
Upgrade to PHP SDK ver 3.1.1

Wednesday, June 29, 2011

【試吃】令人口夾留香的好滋味。完莓主義。無毒草莓醬

一開始聽到「無毒草莓醬」噗滋笑了出來
大概是這陣子起雲劑跟塑化劑讓人們對現在的飲料食品產生了極大的害怕跟失望
之前新聞每天都在撥又有哪間廠商爆了出來

連統一這麼大間的公司都遭殃
頓時覺得義美還真是老實可靠的一間廠商阿!
連馬總統都特別讚賞呢!

在報名後不到一個禮拜就收到了包裹
這是我第一次參加這樣的活動
以前也沒發表過開箱照的文章

所以既是期待又是害怕寫得不好阿!

















這是通過 SGS 檢驗合格的優良台灣農產品喔!

















隔天早上把草莓醬夾土司來吃,我太貪心…草莓醬…塗太多了 orz...
因為這草莓醬的味道很重,塗一點點就夠了
照片中看起來不均勻是因為大多都保有草莓的大顆粒
所以很難把他塗平,這就是「無毒草莓醬」的特色阿!
很濃、很香,吃起來有點酸但很自然,就好像在吃草莓一樣
跟市面的草莓醬有天壤之別呢!
因為打開來實在太香了,所以我才那麼貪心塗那麼多的…

















本身就喜歡草莓相關產品的我
看到草莓就莫名的開心
這讓我想道友一陣子很愛喝的福樂草莓奶茶
我就想說來個草莓牛奶看看好了…嘿嘿
去買了林鳳營的低脂鮮奶來配
我的比例怪怪的,大概是一湯匙的草莓醬
搭上約 400cc 的鮮奶
從下面這張圖可以感覺的出來似乎沒有草莓醬的存在






















這張圖我特別把草莓給撈出來拍
攪拌了很多後,在喝之前先聞一下
哇…不得了!
比例這麼不協調的情況下,草莓的味道居然這麼誘人
再嚐一口,了不得!
雖然草莓醬加的不多,但異常的
這比福樂草莓奶茶還好喝的多很多!






















實在是超搭的,能夠一口草莓土司,一口草莓牛奶真是件很幸福的事~
感謝這次果子咖啡跟完美主義合辦這試吃活動
讓台灣的農產品又在一次的讓我驚豔到
謝謝 :)

--
《完莓主義》
地址:台北市文山區羅斯福路六段92巷2號1樓
電話: 02-8663-9717

《果子咖啡》
地址:105台北市松山區民生東路三段140巷11號
電話:02-87705330 / 週一至週五 07: 30~23:00. / 週六及週日 09: 00- 21:00

Sunday, May 22, 2011

如何在 Views 中輸入 php code 或完整的 html

DruaplViews 真的是很好用
可以稱得上的「簡易模組產生器」
跟 Views 相關的模組也不少
今天要來介紹的是 Views Custom Field

假如你要嵌入 Facebook Social Plugin 在 views 裡面
這時候就一定要搭配 Views Custom Field 來使用
以前以為 Replacement patterns 可以抓取想要的資料庫欄位的資料
但實際用了才知道不行,只有他在 Fields 下面列出來的才行
簡單的說,我想要自己重寫 output 可能都沒辦法如自己所願

裝了 Views Custom Field 會新增三個 Fields
  • Customfield: Markup
  • Customfield: PHP code
  • Customfield: Rownumber
以上最好用的當然還是 PHP code

另外再提一下
Views 內建的 Field : Global: Custom text
他雖然可以輸入 html
但有關 XSS 的 html (如 script、iframe 等)都會被濾掉
所以到最後還是得用 Views Custom Field