<阿胖貞> 說 (下午 04:05):
掰掰 .___.\~~~~~~~~~~~~~~~~~~/
<阿胖貞> 說 (下午 04:05):
手太長 顆顆
狂笑XDDDDDD...
read more
2008年3月24日 星期一
[+/-] : [XD] 手太長.....
2008年3月22日 星期六
2008年3月11日 星期二
[+/-] : 演算法課本題目 (Exercise 4.1-5) : 求 Big-O
CORMEN聖經本的 Exercise 4.1-5,花了我一整個晚上在解
期間還受不了上網偷拜 Google 大神,因為不會輸入 floor 的符號,一直找不到相關題目的解
後來終於解出來了,發哥卻在旁邊說,"這種題目你怎麼沒上網辜?"
我就照他的指示,輸入關鍵字 "2T(floor(n/2)",
只出現短短5項連結,其中有一個就是別人的解!
偉哉,發哥!
不過辜出來的解最後有錯,
在此幫忙勘誤一下:
因為前提為 34*c*lgn - n*(0.3*c-1) <= 0
且 34*c*lgn >= 0
=> - n*(0.3*c-1) <= 0
=> n*(0.3*c-1) >= 0
=> 0.3*c-1 >= 0
=> c >= 3.3~
所以他令 c = 1 是錯的
後來我推導了一下,實際上 c 必須大於等於 1 / lg(6/5) ~= 3.802
如果令 c = 4,n 必須大於等於 2048 才符合條件。
這時,如果有講義上的 Hint,n 不必到2048以上才符合條件:
Hint: T(n) = a n lg n - b lg n - c...
read more
[+/-] : [Diary] 星光三首度25分!
身騎白馬(抒情自編曲)-雞排妹-徐佳瑩
小學到高中的階段,老媽最愛看歌仔戲,
這首歌讓我感動的事可以讓我回想到那時候,
加油,徐佳瑩:)
PS.她的其他歌曲試聽 http://tw.streetvoice.com/music/user-song-list.asp?sd=17555...
read more
小學到高中的階段,老媽最愛看歌仔戲,
這首歌讓我感動的事可以讓我回想到那時候,
加油,徐佳瑩:)
PS.她的其他歌曲試聽 http://tw.streetvoice.com/music/user-song-list.asp?sd=17555...
read more
2008年3月4日 星期二
2008年3月2日 星期日
[+/-] : [XD] 白痴妹第二發XD
2008年2月29日 星期五
[+/-] : PHP從網頁傳遞變數的改變
...
PHP 自從 4.1.0 開始,支援一種比較安全的變數傳遞方式。原本我們在寫 PHP 程式時,從表單以 POST 方式傳入 PHP 程式時,PHP 可以直接拿來使用。例如,有一個表單是下面這個樣子:
<form action=test.php method=post>
<input type=text name=username>
<input type=button value=送出 name=b1>
</form>
當上述的 HTML 按了送出之後,在 test.php 這個程式就會有一個變數名為 $username,其值是我們所填入的名稱。
但是使用者也可以直接在網址列輸入 http://url/test.php?username=myname 來設定 $username 這個變數的值為 myname。
這會有什麼問題呢?讓我們以 PHP 4.1.0 release note 所提出的例子來說明。假設我們有一個程式如下:
<?php
if (authenticate_user()) {
$authenticated = true;
}
...
?>
使用者可以經由網址列輸入一個變數 $authenticated=true,這樣一來,不管是否通過 authenticate_user() 的檢查,$authenticated 永遠都是 true。
所以在 4.1.0 之後,有一個新的方式可以讓我們使用,就是將傳進來的變數全部都存在陣列中。以第一個例子而言,我們以 POST 的方式從表單傳來變數 $username,新的取得變數方式是:$_POST["username"],也就是說所有以 POST 傳遞過來的變數全部存在 $_POST 這個陣列中。詳細說明請參考 http://www.php.net/release_4_1_0.php 。
在 4.2.0 之前,新舊二種方式都可以使用,但是在 4.2.0 之後,Default 只能使用新的方式來傳遞變數。所以如果你安裝的了新 PHP 而發現無法使用舊的 PHP 程式,別驚訝。
如果您還是要以舊的方式來傳遞變數,請修改 php.ini (通常位於 /usr/local/lib/),將原本的 register_globals = Off 改成下列這個樣子,並移除開頭的註解符號 ";":
; register_globals = Off
register_globals = On
新的方式下,用來存放變數的陣列有下列七種:
* $_GET:存放以 GET 傳來的變數
* $_POST:存放以 POST 傳來的變數
* $_COOKIE :包含了存在 HTTP cookie 的變數
* $_SERVER:存放 server 變數 (如 REMOTE_ADDR)
* $_ENV:存放環境變數
* $_REQUEST:存放了 GET、POST、及Cookie 變數,也就是從使用者端傳來的變數。換句話說,這個變數的內容並不可靠。
* $_SESSION:包含了在 session 已註冊的變數。
* $_FILES:使用者上傳檔案(input type="file")
$_FILES['userfile']['name'] -- 檔案在客戶端電腦上的檔案名稱
$_FILES['userfile']['type'] -- 檔案的 MIME 類型,例如 "image/gif"
$_FILES['userfile']['size'] -- 上傳檔案的檔案大小,單為為 bytes
$_FILES['userfile']['tmp_name'] -- 上傳檔案儲存在伺服器端的暫存檔案名
$_FILES['userfile']['error'] -- 在 PHP 4.2.0 或更新的片本才有的這個陣列元素,上傳檔案的錯誤號碼
測試方法:
<?php
if(count($_POST)>0)
foreach($_POST as $k=>$v)
echo $k.'='.$v.'<br>';
?>
read more
消息來源
訂閱:
文章 (Atom)
