2012年10月25日 星期四

mysql 匯出 schema

memo 一下,免得自己忘了 mysqldump --no-data --tables -u DATABASE_USER_NAME -p DATABASE_YOU_WANT_SCRIPTED >> FILENAME.sql mysqldump --no-data --tables -u root -p MvcMusicStore >> MvcMusicStore.sql

2012年10月19日 星期五

CodeIgniter 自訂 Helper

由於用了它提供的form helper dropdown,但是這其中用起來還不是很好用,我覺得應該要有更好的方式,所以找了一下是否可以有自訂helper的方式,果然有呢,不妨可以參考這個連結 php - CodeIgniter: Create new helper? - Stack Overflow

2012年10月7日 星期日

php mysql field bit empty value

這個問題很有趣,因為沒有發生在mssql的版本,而是出現在mysql上面,程式沒有寫錯,而是應該在撈資料時的問題,可以參考這個解答php - Fetching bit field with mysql_query() - Stack Overflow

2012年9月5日 星期三

Ubuntu 建立多個虛擬目錄 multi virtual folder

真的要謝謝阿仁的指導,讓我在這裏又長了知識 Alias /app01/ "/var/www/app01/" # SSLRequireSSL AllowOverride All Order allow,deny Allow from all 然後重新啟動 apache, sudo service apache2 restart

2012年9月1日 星期六

Ubuntu phpmyadmin not found

今天試著在acer 1410上把Ubuntu搞起來,但是在安裝過程中,卻一直不能把phpmyadmin設定完成,記得應該是要把phpmyadmin這個目錄整份copy到www這來路徑應該是sudo cp -a /etc/phpmyadmin /var/www 提醒自已

2012年8月31日 星期五

Git 版本管理

之前我一直都是用subversion,但是最近在學ubuntu下,發現有另一個大家滿推的叫Git,這裏有不錯的使用說明Git 魔法

2012年8月30日 星期四

Ubuntu VirtualBox Windowx XP 分享 共用 讀取 資料夾

我的Ubuntu 要在VirtualBox 中Read XP 的資料夾,這該如何來設定呢?沒想到是要把Account 加入到群組中去 可以看這一個內容Access VirtualBox Shared Folder from Ubuntu 12.04 (Precise Pangolin) Guest Machine | Liberian Geek

2012年8月29日 星期三

Ubuntu gedit gcin 中文輸入

在玩過了php後,也是該要朝linux上前進,試試在這樣的環境下,來開發程式,最近安裝了Ubuntu12.04,發現gedit在中文的輸入上有點問題,在阿仁的幫忙下,也順利的解決這個問題,重點整理如下 用Ubuntu Software Centor 安裝gcin。版本是gcin 2.7.3+dfsg-1,此外還裝了gcin-gtk3-immodule,gcin-anthy,gcin-chewing,gcin-qt4- immodule,都是在Ubuntu Software Centor上gcin的頁面選的 電腦有移除ibus,選擇輸入法是用im-switch而不是im-config 把"/usr/lib/gtk-2.0/2.10.0/immodules/"底下的im-gcin.so拷貝到/usr/lib/i386-lin ux-gnu/gtk-2.0/2.10.0/immodules/,然後再gtk-query-immodules-3.0 --update-cache,之後重新開機就一切正常了 以上資料取自於加入 最新的 gcin 的 ubuntu 12.04 repository 程式庫謝謝大家無私的分享

2012年8月9日 星期四

CodeIgniter PDO MSSQL DSN database hostname

這兩天搞升級到2.1.2,讓我傷了一點神,目前先暫時OK,為了能使用PDO,所以又再試了一下這也真是一門學問可以參考這個PHP: PDO_SQLSRV DSN - Manual,還好找到這一個才搞定,但是你的CI中的database.php要如何來設定? 其實重點只有在hostname 這個選項 $db['win7']['hostname'] = 'sqlsrv:Database=MvcMusicStore;Server=127.0.0.1'; 這樣就可以了

2012年7月26日 星期四

CodeIgniter json

實做到了用json,才發現,asp.net真的做了不少事 從CI中來實做時才知道自己要多做這麼多功,不過還 是把自己的過程先記下來,以防止年紀大的我,忘了 這中間的過程 1.Controller 要把資料往前送有兩方式 → 陣列 或 → 物件 陣列要是有具名的那種方式 EX: $jsn = array( "Message" => $albumName . "has been removed from your shopping cart." ,"CartCount" => $this->cart_summary() ,"CartTotal" => $cartTotal ,"ItemCount" => 0 ,"DeleteId" => $p_id ); 物件則是 $jsn = new jsn_obj; $jsn->Message = $albumName . "has been removed from your shopping cart."; $jsn->CartCount = $this->cart_summary(); $jsn->CartTotal = $cartTotal; $jsn->ItemCount = 0; $jsn->DeleteId = $p_id; 2.在Controller 中,把資料丟山去前,再加上這兩段指令 $this->output ->set_content_type('application/json') ->set_output(json_encode($jsn)); 而前端上的使用就看你如何發揮jquery

2012年7月3日 星期二

PHP 陣列 動態 Key Value

開了陣列後,想要動態的讓這個陣列長大,而且PHP的陣列還有支援用Key、Value 的方式,這用在Dropdown上很好用,只是真的好簡單,只要這樣下指令 $options = array();
foreach($genre as $g)
{$options[$g["Name"]]=$g["Name"];}
所以陣列定好後,只要在名字加入你的Key,再讓它等於你的Value,這樣就完成了,有沒有很簡單呢 ^^

2012年6月28日 星期四

CodeIgniter img src

為了這個,我煩了好久,為什麼會找不到img src 呢?在和阿仨討論過後,他的建議是,請用絕對路徑,而不要用相對路徑,果不其然,我今天在開發過程中又遇到這個問題,因為程式寫多了,路徑就會換來換去,MVC這的路徑會一直變換,只好加上用絶對路徑了,問題就解決了。

2012年6月24日 星期日

CodeIgniter Database Catch 自訂

使用了CI後,在和資料庫溝通過程中如果要自行攔截發生的錯誤,原來要這樣設定[SOLVED] Handling errors from the database (key violation) | CodeIgniter Forums
  • 先database config file→db_debug 設成FALSE
  • $this->db->_error_message();←它會回傳錯誤訊息

基本這樣子就可以自己把錯誤攔下來了

2012年6月14日 星期四

CI Validation 用 jQuery.validate.unobtrusive

在拜讀過使用jQuery.validate.unobtrusive.js - 黑暗執行緒黑暗大的文後,決定要用這個東西來當成我CI的Validation,原因為無它,因為MusicStore 也是用它來當前端的Validation,都用相同的版本,也才好比較出ASP.NET和CodeIgniter這兩種工具的差異,說真的ASP.NET 真的幫我們做了不少事,尤其是我在嚐試用了 jQuery.validate.unobtrusive後,更有深刻的體認。

2012年6月12日 星期二

CI Server side Validation

沒想到CI 也有類似ASP.NET 中的Server side 的Validation,使用起來還滿簡單的,按照說明中的做了一回,果然有異曲同工之妙。Form Validation : CodeIgniter User Guide
如果目前的檢查不能滿足你的需求,還可以自訂自己的validation method,只是在名稱前要加上「callback_」,如此它會在回到Server 時去做你指定的工作,接下來較困難的就是如何在前端使用jquery來做validation

2012年6月4日 星期一

PHP CodeIgniter Active Record

其實用慣了M$的產品,回過頭來用open source 的東西,感受真的大不同,這也可以見到有錢真的能做好多事。 在M$上有一個好用的工具叫ADO,這個工具經過了這數十年來的進化,到現在我覺得真的已經很好用了,所以在換成使用CI時,還以為會和ASP一樣要自己刻和DB溝通的程式,但是CI有自己的一個工具叫「Active Record」這使用起來也滿簡單的,雖說簡單,在那個要用的當下還小小的迷惑了一會,不過,還是要感謝開發的人,如果沒有他們的熱心,我想也不會有這個好用的工具提供給大家使用。

2012年5月30日 星期三

PHP CodeIgniter ASP.NET Music Store

許多年前就有摸了一點點的PHP,現在可以利用時間學習,但是學習要有目標,否則就沒有動力,這回想要把這一套MVC Music Store轉成PHP版,這有兩個好處,一昃可以了解不同的工具在相同理論下,它們是如何來實作,相信會在這樣的過程中都學到不少東西,尤其我之前對於ASP.NET上的MVC都沒認真學,直到現在都出到了3.0了,永遠都不嫌晚。

2012年5月22日 星期二

WinXP IIS MVC HTTP 403

有一個MVC3的sample,想把它設定在IIS下,方便執行時可以不用再進程式中用Debug 的方式來Run,在Win7中可以,但是在WinXP中卻不行,原來是少了一個設定,不妨可以參考一下這兩個連結,但是他們說的都是同一件事。
Configuring ASP.NET MVC on IIS 5 and IIS 6 « Development StuffsIIS 5.1 OK button unavailable when you add application mappings ,只是你在選完要執行的EXE OR DLL後,路徑中間會看不到,而且確定還會是disable,記得!請先點一下路徑,這時就會「確定」就不再會是Disable了

2012年5月14日 星期一

PHP CodeIgniter ODBC 沒有資料指標

在公司的機器上,並不想安裝Microsoft® SQL Server® 2012 Native Client ,只能利用ODBC的方式來達到連接資料庫的功能,但是卻又讓我遇上了另一個意外
當我ODBC設定完成,也在PHP的測試程式上順利連接到SQL Server 後,決定把搬上來測一下,這裏的重點要放在database.php 的設定上,這和用oledb 的方式不太一樣,hostname = odbc 中你所設定的名稱,dbdriver = 'odbc' ←這裏是確定的就這樣打上去,原本以為這樣子就可以順利的連接到DB,但是問題不是我想的這樣簡單。

沒想到又出現這個意外的錯誤,但是有意外就是有可以多一分學習的機會,仔細看了一下,CI把我的指令翻譯成了圖片上所示的那樣,這個指令在MS SQL 上是一定不會過的,因為table的前後是不需要加上(),所以只好硬著去看了CI中的PHP程式碼,沒看不知道,看了才知道原來有了意外,為什麼odbc_driver.php 和sqlsrv_driver.php 在function _from_tables,同樣的function 卻有不同的結果,所以只好把sqlsrv_driver中的_from_tables搬過去odbc_driver中去,這才解決了我的問題。

2012年5月12日 星期六

PHP 5.4 Connect MS SQL 2008

從事IT這個工作就是要不停的學習吧!這應該是我個人這麼久的心得感想,而我也很熱愛我的工作,因為就是愛寫code,若干年前有小小的摸過一段時間的PHP,現在利用有空的時間想到那就再好好的摸一下吧。

沒想到PHP到了5.4這個版本竟沒有直接支撥可以使用MSSQL 這個DB(這是我推測),它的設定檔中預設直接支援mySql,不多說,就把讓我傷了一天時間的問題給解開來吧。

當你從PHP官網取得了最新的版本後,可以試著在安裝完成後利用phpinfo()這個function 查看一下目前是否有啟動了MSSQL 這個設定,在這個版本如果有啟動,可以在網頁上找一下「sqlsrv」如果設定完成會看到
這是最後完成的結果,如果要在PHP上使用MS SQL 2008 的話,還需要去Microsoft Drivers 3.0 for SQL Server for PHP,沒想到MS會為了PHP出了一顆DLL,安裝完成後,依說明上的指示把PHP.INI設定完成,真心的以為惡夢會結束,但是事實不然,它卻出現錯誤訊息,大意上是說你要再去安裝另一個Client Driver→Microsoft® SQL Server® 2012 Native Client 但是我很怕我裝了這個後會影響到目前的ASP.NET,只好先在家中試一下,結果裝完後,就正常的連線到DB了。

感想:ASP.NET讓我覺得真的很好用。