怎麼在excel中把IP轉長整數

為什麼要在excel中把IP轉成長整數

php中有很多先進開發了這樣的工具,例如說ip2long,另外,也有人寫IP V6的轉換工具。

但是我要做批次匯入,從網路上下載了IP對照國別的資料,要做網址轉跳判別使用,我整理完後,需要的IP資料大約十多萬行。 Read more

在CentOS 6.3中安裝VirtualBox和VMware Workstation 9

之前就在做交叉測試,VMware Workstion 7和VMware workstation 8沒有辦法順利在CentOS 6.3版上安裝,最近剛好有空可以測試,說也怪,之前在Ubuntu上裝的很順的VirtualBox卻在CentOS上折騰了一陣才安裝起來。

老實說,CentOS不是我的目標OS,原因是CentOS無法自動Mount起NTFS的Partition,而Ubuntu可以,如果我要備份VM上的image檔,這個功能是很方便的,速度也比較快,雖然可以透過Sambe和Windows上的網路上的芳鄰串接,但是10/100的網路線真的不快,就算現在是裝了Giga bit的網卡,也沒有什麼用,速度真的快不了多少。

好啦!還是那句話,有圖有真像。 Read more

安裝32Bit版本Orcale 10G express到Ubuntu 64Bit OS中

目前Oracle 10G R2 express只有提供32位元的版本,我的測試環境是Unbuntu 1010 AMD 64bit的版本,如果直接裝的話,會出現失敗的訊息,另外,Oracle 10G/11G  都只有提供Linux的版本,沒有Debian/Ubuntu的版本,和我多年前看我同學安裝Oracle 9i到Linux上的程序都不同,所以算是新的學習。
Read more

在Linux下使用php連線oracle database

之前看網路上的資料,使用php連線oracle都不成功,今天剛好有空,就來測一下吧!

網路上的資料,大多都是教大家怎麼在Windows下使用appserver來連線oracle database,也有人介紹ODBC的方式來抓資料,但是ODBC是微軟的產品,並不是所不尚平台上都有這個元件可以呼叫,而且也為了系統穩定度,linux下開發php一直是小弟我的工作需要。之前看了某一篇文章,介紹linux下使用php連線oracle db,但是測試失敗,由於沒有急迫性,所以也就沒有繼續測下去,現在,急迫性出現,剛好今天晚上也有空,那就來測試一下吧!

測試的環境如下

一、CentOS 5.3
二、內建的php
三、內建的OCI連接元件

也就是說,灌好CentOS Linux就可以直接連Oracle了,之前網路上的給的概念都有一些些問題。

其實,今天測起來還蠻順的,在linux下使用php連接oracle db的動作如下

1.檢查php.ini 看看extension有沒有 oci8.so

檢查php中是不是有orcale的連接元件

2.使用OCI指令來寫個測試的PHP
<?php
oci_connect();
?>
這個只是測試oci元件是不是正常運作
當然,會出現錯誤訊息,因為沒有給足夠多的參數,正常畫面如下

2009-09-30_205400.jpg
3.寫個oracle DB連線的php吧
$con=oci_connect(‘user’,’password’,’db’) or die (‘Fail to connect Oracle DB’);
對oracle 來說,資料庫稱為user,因為它是先規劃table space(SID),再在table space上建立user,再在user中建資料表。
不過,第三個參數講成db名稱是怪怪的,我是使用SID才連線成功的,因為兩台linux是不同一台。

php原廠文件說 db是選擇性的,請參考這裡,內容可能是orcale 的instance或是tnsnames,如果沒有指定,PHP使用的環境變量ORACLE_SID和TWO_TASK確定的名稱,當地的Oracle實例和tnsnames.ora中相應的位置。

另外還可以指定字集,以及連線的模式,連線的模式可以是OCI_OPERATOR/OCI_SYSDBA,假設要指定連線模式,還需要使用oci8.privileged_connect來設定。

$req=oci_parse($con,’sql statement’) or die (‘Fail to get data’);
oci_execute($req);
接下來就是取出資料了!可以用do while來把資料拿出來
當然也可以用for loop來做,就看各位看官的習慣囉!

while ($row=oci_fetch_assoc($req)){
foreach ($row as $item){
echo $item. “\n”;
}
}

oci_fetch_assoc應該是計算有多少筆資料的涵式

測試結果,成功使用php連接鼎新tiptop GP5,tiptop GP5是使用linux版的oracle 11G,我看日後有一些報表的開發,真的可以自己來囉!另一套使用oracle的系統也是11g,不過是在windows server 2003 R2上,所以還要再找時間去測看看!