2007年8月28日 星期二

《 Desktop 》電腦配備...


AMD AM2 Athlon64 X2 3800+

2GB DDRII (1G*2)

320GB SATAII (16M Buffer)

3.5吋內接22合一讀卡機

ASUS 350W足瓦 電源供應器

ASUS 7300顯示卡

廣寰 全頻道電視卡


不到一年,我的電腦規格就歸西了。
是升天的那種,不是被淘汰,哇靠
這是時代進步嗎?還是再說,你最好掏多一點錢出來買新的
天啊,原物料上漲,啥時看到我口袋的金錢生值,沒有咩....

新買來的配備,也快被淘汰,這是哪們子的情形啊 :(
只能說時代進步,高攀不起?還是勸退自己別當個很 IN 的新新人類

當原始人就好 :D

原來顯示卡沒多好?應該還ok吧 :) 不過真的是淘汰掉了。
我印象中原本要配 430W 的 Power ,之前的太爛好像讓硬碟壞掉於無形....
350W也不錯至少一分錢一分貨,希望硬碟能活很久。

《 Virtual 》VMware 提供三種網路連線模式

分別是:「Bridged」、「NAT」、「Host Only

Bridged模式」:準備兩個實體 IP 位址(如果只模擬一個虛擬系統的話),一個給 Host PC,另一個給 Guest PC,設定簡單也很方便。

Bridged模式有個缺點,就是當 Host PC 網路卡沒有接線時,Guest OS的網路通常會出現問題,無法正常啟用。

NAT模式」:虛擬一塊網路卡,裡面巳設定了固定IP,這個 IP是根據不同的環境設定。Guest PC會取得 DHPC 給的網路連線,通常預設閘道會指向 Host PC 用 NAT 幫 Guest PC 轉譯出去實體網際網路,在虛擬的系統中也可以去查閱被發放的 IP Address,不用設定更方便。

Host only模式」:跟 NAT模式幾乎一模一樣,但是溝通只跟 Host PC 而已,所以不會藉由 NAT幫忙轉譯到實體的網際網路。


參考的那篇文章,印象中在鳥哥的論壇,再去找一次找不到了。

目前使用過Bridged模式」以及NAT模式」

2007年8月27日 星期一

《 Ubuntu 》安裝 PC-ManX

紀錄這個 package 的名稱

在終端機輸入以下指令和套件名稱

sudo apt-get install pcmanx-gtk2




安裝成功,可以上電子佈告欄了。

2007年8月22日 星期三

《 Blogger 》最後還是 All-in-One 啊~

話說這是前N天的事了,我心血來潮想把 Blogger 裡的阿土伯程式改版
之前是用 All-in-One 的方式將程式碼 work 起來,所以去了一趟阿土伯那裡
照他的方式改阿改的,因為感覺程式碼太高深了,所以我絕對是遵從 "Ctrl+C" 和 "Ctrl+V"
的宗旨,但是經過一番的修改之後,我的部落格...........

什麼都跑不出來.... :(

於是又把它改回原本的樣子,只是連結用css換個顏色....
真不知道自己在幹麻

《 Virtual 》來重新 Debian - Port Forwarding

最近迷上魔獸爭霸III,真的快變成名符其實的宅男了。
後來又看到 今天的 Tetralet 又在唧唧喳喳了 這篇,會不會太方便啊

apt-get install pvpgn



只要這樣就可以安裝魔獸伺服器,太厲害了。
可惜我手邊沒有多餘的主機可以讓我玩玩看,但是還是想碰一下這裡頭的究竟。

第一步驟,在 VMware 安裝 debian-40r0-i386-businesscard.iso(官網載的)

第二步驟,無聊來個安裝 LAMP Server 跑跑看。


apt-get install php5 libapache2-mod-php5 php5-gd php5-mysqli
apt-get install mysql-server mysql-client
apt-get install phpmyadmin


第三步驟,當然不能少 SSH Server。

apt-get install ssh




第四步驟,設定 VMware 的 Port Forward(如下方式)

##CONTINUE##
選取 Virtual Network Setting
















選取 NAT 和 Edit 去設定




















選取 Port Forwarding























新增 Add Port和IP的關係( Host 和 Guest)





















這張是設定的詳細說明












第五步驟,已經可以透過主機連到 Debian 的 SSH 和 Web了。

可能再來就是要考慮,實際上的用途吧?總不能只是淺嚐 Debian.....
不過這個方式可以給我的老爸用,因為他要 Windows XP作工作上的事情,但是模擬
一個 Linux 主機給他處理資料,應該不錯用啦,再加上已經跟中華電信申請固定IP了
接下來或許會用 no-ip或是其他免費的 Domain Service 來繼續實作吧。

哈哈,這只是玩玩(因為我還不知道,社區網路怎樣讓外面連進來我電腦.. :( )

2007年8月14日 星期二

《 PHP 》Date() 完整運用

date

(PHP 3, PHP 4, PHP 5)

date -- Format a local time/date

Description

string date ( string format [, int timestamp] )

這是 http://tw2.php.net/ 一定查得到的資訊,通常會使用制式化的格式還取得
本地時間,格式如同那一堆有用的表格上面的參數


Example

$now_date=date('Y-m-d');
// 出現 2007-08-14 發文日期
echo $now_date;

$now_week=date('w');
// 今天是星期幾呢? 答案是:星期二
echo $now_week;

這個函式就是快在這裡,快速取得時間並將他格式化,也就是我們通常省略 int timestamp
這個參數,所以直接啟用本地時間。
##CONTINUE##
那如何使用 timestamp ?就要借用 mktime() 將時間轉為 UNIX 的 timestamp,因為
date()就是需要咩,直接舉個例子。

Example

$test_time='2007-08-06';
$time_tmp=explode('-',$test_time);
$time_date=mktime(0,0,0,$time_tmp[1],$time_tmp[2],$time_tmp[0]);
$time_week=date('w',$time_date);

// 2007-08-06 是星期幾呢? 答案是:星期二
echo $class_week;


關於切割字串 explode() 請看這一篇,這裡會略過。
其實只要傳成 UNIX timestamp,那就可以準確的使用 date(),不再只是取得本地時間而已,

活用 mktime()

$next_date=mktime(0,0,0,date('m'),date('d')+1,date('Y'));
$show_date=date('Y-m-d',$next_date);
// 明天的日期是? 答案是:2007-08-15
echo $show_date;

裡面的參數可以隨便亂代很好用。

2007年8月13日 星期一

《 IIS 》Windows 系統的免費關刀

Windows Server 2003 的開啟方式:
1.點擊 [控制台],以及 [新增或移除程式] , [新增/移除Windows元件]
2.將 [Internet Information Services (IIS)] 打勾
3.選 [Application Server] 然後 [Internet Information Services (IIS)]
4.成功啟動

Windows XP Professional with Service Pack2
1.點擊 [控制台],以及 [新增或移除程式] , [新增/移除Windows元件]
2.將 [Internet Information Services (IIS)] 打勾
3.[詳細資料] 看是否需要啟動 FTP 功能 (可略)
4.放入安裝光碟,等待安裝套件
5.成功啟動

我個人是拿裡面的 SMTP 這部份,用自己的電腦發信件蠻有趣的。

2007年8月4日 星期六

《 PHP 》字串切割:strtok() v.s explode()

這一篇是比較一下兩個函數的差異,字串切割可以用到某些資料表示法,EX:聚集十進制表示法

程式碼:

// strtok(string1, string2)
$string1="This is a Test for strtok().";
$tok=strtok($string1," ");
while($tok)
{
echo "Part : $tok";
$tok=strtok(" ");
}

// explode(string2, string1)
$string2="This is a Test for explode().";
$tok=explode(" ", $string2);
foreach($tok as $value)
echo "Part : $value";


顯示效果如下:

=====================
Part : This
Part : is
Part : a
Part : Test
Part : for
Part : strtok().
=====================
Part : This
Part : is
Part : a
Part : Test
Part : for
Part : explode().
=====================

以非聚集十進制來說,區碼和數字是間隔的,除了最後一個區碼的地方改為 Sign Bit
所以可以好好利用字串切割來呈現這些資料表示。
感覺上還是 explode() 比較好用耶 :D

2007年8月3日 星期五

《 PHP 》Session 的疑惑

session 拿來儲存登入之後的資訊,但是熊熊會出問題
有去查 Google 大神,但是還是沒感覺到哪邊出問題,現在啟動的是替代方案。

Login 頁面:

if(!(strlen($_SESSION['id'])<1 || strlen($_SESSION['name'])<1))
{
$id=$_SESSION['id'];
$name=$_SESSION['name'];
}

而我在其他網頁會重複使用相同的變數名稱,每當該頁有 session_start()
不管 $name,$id...etc 是否有使用到,他的值一定會變樣(也就是植被更改)

某一頁(問題):

if(!(strlen($_SESSION['id'])<1 || strlen($_SESSION['name'])<1))
{
$id=$_SESSION['id'];
}

// SQL 區段
$id='46564122';
$query="select * from table where id='$id'";
$result=mysql_query($query);

只是連到這頁而已,完全沒用到 session 的變數(頂多是覆蓋)
但是呢,session的值再第三頁讀取發現他已經變樣了,變成剛剛的 46564122。

##CONTINUE##
替代方案(解決頁):

if(!(strlen($_SESSION['id'])<1 || strlen($_SESSION['name'])<1))
{
$id=$_SESSION['id'];
}

// SQL 區段
$ida='46564122';
$query="select * from table where id='$ida'";
$result=mysql_query($query);

竟然改一個變數名稱就可以解決( $id => $ida ),天啊~~
不知道是為啥,這樣來看不用到 session 就別 session_start() 的樣子,
這有可能讓別頁的相同名稱變數改到我的資訊,實在驚人。
應該有正確的解釋方式吧?我只能暫時先這樣做,改天要好好找出問題。

2007年8月1日 星期三

PT-第 22 話 :雛型交件日

7/31 應該是昨天吧 :) 沒辦法,我過了很混亂,哈哈
將整個系統的雛形(包含資料庫結構以及部分資料)拿去給市立圖書館
用我的生日禮物(SONY 4GB USB Flash Disk)裝過去,
反而是圖書館那邊的系統沒有配合好,難道我要幫忙做?
總之,圖書館尚缺 :

1) Win Server2003 IIS 未啟動 SMTP
2) phpMyAdmin /config.inc.php 設定未成功(感覺上只安裝,沒微調。)
3) Apache /httpd.conf 設定未完全(也是沒微調)
不過,好像有請人幫忙這部份的設定,可能是吳大哥不懂的地方。

Anyway,雛型丟過去之後,雖然沒畫面給吳大哥看,但是我用我的三寸不爛
之舌稍微講了一下,真高興他應該都懂了。

在討論之後,有幾項需要更正 :
1) 學員帳號需要修改,把期數去掉。(因為寒暑假沒有期數)
2) 帳單部份也是跳過,呈現選課結果就好。(不一定用我們的系統,所以
等決定之後,在去跑公文也不遲啊,好像是吳大哥的說法)

7/31 的晚上之後,陸陸續續把相關報表製作出來了,雖然還是缺少部分的東西,
但是很快就結束了,就連JS的部份也快補齊了,整體來說蠻有成就感的。