發表文章

目前顯示的是 十一月, 2012的文章

利用 google 取得經緯度

根據標準google推出的做法,我們需要串接
http://maps.googleapis.com/maps/api/geocode/json?address=地址
這支API ,不過這支API是有限制使用量的
最近遇到一個問題就是我要批次轉換地址和經緯度,結果就被封鎖起來了

現在這個問題有解決方案了,亂逛亂逛的結果讓我找到另一支隱藏的API。(正確來源我也不知道打哪來的),順手就寫成一個 function 備用吧!


下面的兩個 function 需要同時使用,因為getLatLng會需要用到object_2_array這個函式
function getLatLng($address) { // $address = urlencode($address); $url = 'http://maps.google.com/maps/geo?q='.$address.''; $curl = curl_init() ; curl_setopt($curl , CURLOPT_URL , "$url") ; curl_setopt($curl , CURLOPT_RETURNTRANSFER , 1) ; $info = curl_exec($curl) ; curl_close($curl) ; // print_r($info); $a = json_decode($info); $b = object_2_array($a->Placemark); $c = object_2_array($b[0]->ExtendedData); $d = object_2_array($c['LatLonBox']); // $b = $a->results[0]; // print_r($d); $r['lat'] = $d['north']; $r['lng'] = $d['east']; if($r['lat…

systemctl 來了 Fedora15 之後的服務管理方式

之前我都是用Fedora 13的機器,習慣使用service httpd restart這種指令。但是今天拿到一台Fedora 17的時候卻失靈了。

原因是因為在Fedora15 之後,systemd替代掉了原先的服務管理方式。原先的指令:

service httpd restart 改為
systemctl restart httpd.service 他這樣改應該是有它的用意吧(變長了~好累)

參考說明:
http://forum.icst.org.tw/phpbb/viewtopic.php?f=16&t=20837

利用JavaScript 傳送POST表單

當我們在提交資料的時候都會使用form來傳遞相關需要的資料給下一個頁面,通常如果接收端沒有限定的話,我們要傳遞同時跳轉時也可以用$_GET的方式進行。也就是直接寫在網址上面帶參數。

但是在某些安全性有顧慮的服務,例如金流,通常都會要求必須要使用POST的方式傳遞。而$_POST的方式不像$_GET一樣可以直接在連結上面使用。這時就必須要用JavaScript 自動丟出表單的方式了。

其實這個動作很簡單:只要在中加入

form.submit(); 這樣就可以了,不過網路慢的環境還是會看到一個跳轉的頁面,所以有心的人可以在裡面做個轉場或是讀取中的動畫也可以喔!