顯示具有 php 標籤的文章。 顯示所有文章
顯示具有 php 標籤的文章。 顯示所有文章

2010年11月14日 星期日

PHP, mysql的眉眉角角

睽違許久...又有寫PHP的機會


以後就把小細節記錄在這邊吧


PHP設定中 open short tag 開啟才能直接使用< ? ? >
否則必須完整使用 < ? php ? >

facebook API 使用PHP CURL extension 記得打開~

問題:網頁編碼指定utf-8; 資料庫編碼也設定utf-8,網頁執行結果卻仍是亂碼。
可能解法:在SQL連線字串後方加,mysql_query('SET CHARACTER_SET_RESULTS=utf8');

2008年10月13日 星期一

Dreamweaver (網頁編輯器)亂碼的解決方法

常常會遇到要修改前人程式的狀況

會遇到從遠端把程式抓下來,用編輯器(像是Dreamweaver)打開後,中文都變成亂碼的問題

解決方案如下:

該檔案用Notepad開啟,加入下面這行
meta equiv=Content-Type content=text/html; charset=utf-8
再用編輯器打開,應該就可以正常看到中文囉

2008年9月30日 星期二

fckeditor 設定範例

$oFCKeditor = new FCKeditor('cust_rem') ;
$oFCKeditor->BasePath = '../fckeditor/' ;
$oFCKeditor->ToolbarSet = 'MyCustom';
//set the EnterMode to "br" (overwrites the default configuration from fckconfig.js)
$oFCKeditor->Config['EnterMode'] = 'br';
$oFCKeditor->Value = '' ;
$oFCKeditor->Create() ;

2008年9月11日 星期四

about MVC 架構

Model-View-Controller

目的:
實現動態程式設計,使後續對程式的修改和擴展簡化,使程式的重複利用成為可能。
對複雜度的簡化使程序結構更加直觀

模型—視圖—控制器模式:
  • Controller- 程式設計師編寫程式應有的功能(實現演算法)
  • View - 界面設計人員進行圖形界面設計
  • Model - 資料庫專家進行資料庫設計
http://dev.joomla.org/component/option,com_jd-wiki/Itemid,/id,tutorials:components/

2008年9月7日 星期日

[php]日期的加減法

2008-09-08再減10天 = 2008-08-29

$years = date("Y"); //用date()函式取得目前年份格式0000
$months = date("m"); //用date()函式取得目前月份格式00
$days = date("d"); //用date()函式取得目前日期格式00
$day = date("Y-m-d",mktime(0,0,0,$months,$days-15,$years));
echo $day;

2008年8月20日 星期三

Joomla 安裝的插曲

遇到了些浪費時間的鳥事,為了要相容於多國語言套件........

裝了三四遍(新、舊版)

1.5版本,無須設定URL,即可成功在本機與遠端正常存取網頁

1.0.x版,若在本機安裝為localhost,就只能在本機存取,遠端存取圖片與layout無法正常顯示
(而且還不能隨意改目錄,一改就掛了,應該是當初設計時,沒有考量好相對路徑的問題)

1.0.x版,若在遠端安裝,URL會自動擷取遠端Domain name,本機與遠端存取都ok
(風險是萬一哪天domain name沒了就掛了,囧)

2008年8月19日 星期二

Joomla 1.5 中文化

下載相對應的版本中文化

前後台語言包

  • 前台:"zh-TW.site.joomla.版本"
  • 後台:"zh-TW.administrator.joomla.版本"
前台語言包解壓後複製到"安裝目錄" / administrator / language / zh-TW
後台語言包解壓後複製到"安裝目錄" / language / zh-TW

最後在後台的 Language Manager 繁體中文設置為預設值(啟用)


ps. zh-TW folder 可能需要自行設定

2008年8月12日 星期二

csv匯入MySQL (處理雙引號)

匯出格式說明如下:

e.g原始資料
數值 日期(mmddyy) 字串
1 010808 happy "cat"

MySQL資料庫欄位
X (int 10) Y(Date yyyy-mm-dd) Z (string)

需轉換為
"1";"2008-01-08";"happy \"cat\""

註:若欄位中本身既有雙引號,e.g 例子中的 happy "cat"
需在欄位內的引號前面加上escape character,變成 happy \"cat\"
如此可保留原始資料中的雙引號

2008年8月8日 星期五

MySQL 可匯入與匯出的檔案格式

可匯出的格式
  • CSV 資料
  • MS Excel 的 CSV 格式
  • Microsoft Excel 2000
  • Microsoft Word 2000
  • LaTeX
  • Open Document Spreadsheet
  • Open Document Text
  • PDF
  • SQL
  • XML
可匯入的格式
  • CSV
  • CSV 使用 LOAD DATA
  • SQL
資料匯入方法

LOAD DATA INFILE 的資料檔可以進行局部匯入(Partial Import)功能。

例如,假設文字匯入檔內資料欄位有三欄,而資料表中卻不只這三個欄位,這時只有LOAD DATA INFILE來解

e.g

資料匯入方法

LOAD DATA INFILE "/home/order.txt"

INTO TABLE orders (Order_Number,Order_Data,Customer_ID);

2008年8月5日 星期二

匯入MySQL 資料的幫手 (BigDump)

MySQL中匯入資料庫的方式有很多種,最常用的方式就是使用phpMyAdmin管理程式的匯入介面來上傳、匯入。

如果資料檔超過2MB就沒有辦法用phpMyAdmin直接匯入檔案。

「.sql」檔案太大的話,則很容易遇到伺服器的執行時間或檔案大小的限制。

BigDump這個php小程式來做MySQL資料匯入,就沒有2MB的限制

1.用文字編輯器打開bigdump.php,修改Database configuration後面的資料庫連線設定。

2.再把這個檔案上傳到Server上,和用phpMyAdmin產生的.sql備份檔放一起。

3.再去瀏覽 bigdump.php,選擇要匯入的檔案,就可以將資料完整的回存到資料庫裡面

http://www.ozerov.de/bigdump.php

使用unicode特別注意

{ $dbconnection = @mysql_connect($db_server,$db_username,$db_password);

在之後新增

@mysql_query("SET NAMES ‘utf8′");

才不會有亂碼問題。

Version 0.28b 2007-06-08

  • Improved error message for file open errors
  • Handle CSV files (you have to specify $csv_insert_table)
  • Restart script in the background using AJAX
似乎支援匯入csv檔,剛好是我這次案子會用到的,Great!!!

2008年7月27日 星期日

Drupal 主題曲

剛剛發現 Drupal還有主題曲耶

也太有心了

Open source就是這樣吸引人阿!

有這麼多Developer投入,才能有些方便好用的CMS

原來ubuntu的站也是Drupal開發的

2008年7月10日 星期四

xajax 0.5 常用函數

幾個常用的函數
$objResponse = new xajaxResponse();

$objResponse->assign("myInput1","value",$DataFromDatabase);

$objResponse->assign("myInput1","style.color","red");

$objResponse->append("myDiv1","innerHTML",$DataFromDatabase2);

$objResponse->prepend("myDiv2","innerHTML",$DataFromDatabase3);

$objResponse->replace("myDiv3","innerHTML","xajax","xajax");

$objResponse->script("var x = prompt(\"Enter Your Name\");");

return $objResponse

2008年5月15日 星期四

[實用]PHP時間格式轉換

E.g

$d = "27-10月-03";
$ar = split("-",$d);
echo date("Y-m-d",mktime(0,0,0,$ar[1],$ar[0],$ar[2]));

2008年5月8日 星期四

[轉錄]Cannot modify header information - headers already sent by錯誤解決辦法

在後台管理,用header("location:");做返回時,總是不能正常返回,
Warning: Cannot modify header information - headers already sent by....
這類語句,baidu了一下,才知道是setcookie在搗亂,以下是在網上找的一些資料:

方法一:
在PHP裡Cookie的使用是有一些限制的。
1、使用setcookie必須在標籤之前
2、使用setcookie之前,不可以使用echo輸入內容
3、直到網頁被加載完後,cookie才會出現
4、setcookie必須放到任何資料輸出瀏覽器前,才送出
.....
由於上面的限制,在使用setcookie()函數時,學會遇到 "Undefined index"、"Cannot modify header information - headers already sent by"…等問題,解決辦法是在輸出內容之前,產生cookie,可以在程序的最上方加入函數 ob_start();

ob_start :打開輸出緩衝區
函數格式:void ob_start(void)
說明:當緩衝區激活時,所有來自PHP程序的非文件頭信息均不會發送,而是保存在內部緩衝區。為了輸出緩衝區的內容,可以使用ob_end_flush()或flush()輸出緩衝區的內容。


方法二:
解決Warning: Cannot modify header information - headers already sent by ......

前幾天裝了個php的大頭貼系統測試,發現報錯Warning: Cannot modify header information - headers already sent by ......
今天又裝openads,還是出現這個問題。怒了。上網找了半天,有人說要在文件開頭寫上
ob_start();
失敗。
後來打開 php.ini 然後把 output_buffering 設為 on 。重起appache,OK。看來這才是解決辦法。

特別注意:

如果使用utf-8編碼,一定要去掉UTF-8中的BOM,這都是因為utf-8編碼文件含有的bom原因,而php4,5都是不支持bom的。去掉bom,可以用Notepad++打開轉換一下。切記,切記,切記!(這問題害我折騰了半天。)

用PHP的ob_start();控制您的瀏覽器cache URL:http://hi.baidu.com/dandankai/blog/item/ca628e4448975f81b3b7dc02.html



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

後記:local XP WAMPServer2.0上傳XAMP1.6.6後,用ob_start()解決

2008年4月27日 星期日

[轉錄]FCKeditor 圖片上傳設置

1.把FCKeditor 文件夾放到 apache根目錄下.(我的是E:\WWW)PHPChina 開源社區門戶;a@gO U#O2dN
2.打開FCKeditor\editor\filemanager\upload\php\config.php.修改如下:PHPChina 開源社區門戶3K(?%ji%u-b\v\

^w+mP ~PHPChina 開源社區門戶]uk'a4c#Q3.打開FCKeditor\editor\filemanager\browser\default\connectors\php\config.php
NR7R#xia/_G V0 $Config['Enabled'] = true ;
?*bgw7o%s@0 $Config['UserFilesPath'] = '/FCKeditor/UserFiles/' ;
p7Vz M:e$|r3d04.打開FCKeditor\fckconfig.js 找到並修改如下:
&ka(I7yGx|n/c(Nh0var _FileBrowserLanguage = 'php' ; // asp | aspx | cfm | lasso | perl |
NNh'L5SaL'DG0
!w X }%[:PG0var _QuickUploadLanguage = 'php' ; // asp | aspx | cfm | lasso | phpPHPChina 開源社區門戶q5P il1D
PHPChina 開源社區門戶6o0V�jH jE*A&P;V
5.下面這一步最重要啦.就是要在/FCKeditor/建一個UserFiles文件夾.呵呵,這個和 linux下是不同的.當然同志們也可以根據修改了.
!U7`jV5d8Z C0
WvBXSeX+j/\0補充: 兩個配置文件的$Config['Enabled']項都要該為 true
)y4W8{FVd0C0 $Config['Enabled'] = true ;