Archive

Archive for the ‘Other’ Category

建立網頁縮圖(Webthumb)

十月 5th, 2007

目前不少網站都有自動產生網頁縮圖的功能,像是 HEMiDEMifunP 推推王Alexa 等等,雖然很想知道其中所使用的技術,不過似乎很難找到相關文章,大多是倚賴提供縮圖服務的網站居多。

Bluga.net WebThumb
我覺得很不錯的縮圖服務網站,每個月可免費建立 250 組縮圖,且提供 API 可以應用在程式上,產生縮圖速度算滿快的,大約 2~5 分鐘即可顯示。

artViper Website Tools
這網站有提供一些 Website Tools,其中就有網頁縮圖的功能。

Website Thumbnail Generator
這個是不需要依賴其他網站的,使用了 IECapt 這個小工具,所以主機只能是 Windows,配合 PHP 來自動產生縮圖。

延伸閱讀:
Website Thumbnail Creators (Website Snapshot Generators)

Other, PHP, 程式筆記 , , ,

JavaScript 讀取外部文字檔

八月 3rd, 2007

想要利用 JavaScript 來讀取一個檔案內容,搜尋到的方法很多都是用 ActiveX 物件來達成,這樣缺點就只能 IE Only 了。不過後來發現其實用 Ajax 就可以達成了。

搭配 JQuery 使用:


$.get('content.txt', function(data){
	alert(data);
});

這裡透過 Ajax 發出 GET Request 到 content.txt,就會直接將檔案的內容傳回輸出,很簡單吧^^

但是由於 Ajax 考慮到安全性,所以只能作用在同網域底下。如果要讀的檔案是遠端主機上的呢?這時可以利用其他程式當作中間人,例如透過 PHP 去取得不同網域下的檔案。

JS 內容:


$.get('readfile.php', function(data){
	alert(data);
});

PHP 內容:


<?php
echo file_get_contents("http://aaa.com.tw/content.txt");
?>

Ajax, Other, 程式筆記 , , ,

UrMap API 基本應用

八月 3rd, 2007

UrMap 和 Google Map 都是很不錯的線上圖資系統,不過由於 UrMap 是由國人開發維護的,所以目前還是比較適合台灣人使用,尤其在查詢街道方面比 Google 精確。

而這兩套系統也都有釋出各自的 API,讓我們可以做許多的應用,這次幫同學的專題作一個簡單的 Demo,功能是假設有個程式會透過 GPS 接收器取得座標,然後將座標寫入檔案,Web Server 網頁則會定時讀取及更新地圖,標示出目標現在的位置,算是一個基本應用囉!

首先不管是 UrMap API 還是 Google Map API,使用之前都要先申請授權碼(Key),並且將它加入您的網頁裡面,所以只能在您登錄的網址顯示地圖。

接下來顯示地圖部份請參考 Demo 網頁原始碼,其他功能在 API 說明文件都寫得很詳盡。

Ajax, Other, 程式筆記 , ,

幾個 Text Database

六月 3rd, 2006

雖然 PHP 搭配 MySQL 來開發程式可以較快速又方便管理,但多少會遇到一些主機無法支援如 MySQL 等資料庫的 case,只好使用文字檔來儲存資料,不過因為沒有欄位及索引這些東西,開發起來就會麻煩許多,所幸就有人寫出 text base 的資料庫程式,讓我們使用純文字檔存取資料時,可以較接近資料庫操作,加快開發速度。

‧SQLite
這套可以說是目前最火紅的,一堆語言都有支援它,PHP 當然也不例外,可使用 SQL 語法操作,PEAR::DB 也有支援。
只是需要載入 extension,所以要是主機沒有安裝或開啟,就只能以 shell 執行 SQLite 的執行檔來操作了,不過也失去資料庫的特性了。

‧PHP Text DB API
這套是 PHP class,可以使用 SQL 語法、PEAR::DB 的用法,也不用另外載入 extension,並且有包含小型的 GUI 管理程式,非常值得一試。

‧PHP Text DataBase API
這套是對岸的人士寫的,只要一個 class 檔就可以使用了,雖然它不支援 SQL 語法,但是簡單易用,大概花個 10 分鐘看完 manual 及範例就可以上手了,非常適合開發簡單的小程式。

如果有找到更好用的,歡迎來推薦一下哦!

Other, 程式筆記 ,

[Perl] Port Scanner

五月 2nd, 2006

這是課堂上練習的程式,可以掃瞄某主機哪些 Port 有開放。
利用 Perl::Socket 建立 socket 後 connent() 主機,如果回應 true 表示連線正確 (Port 有開啟)。
使用方法:
portscan.pl <主機名稱>


#!/usr/bin/perl
use strict;
use Socket;

my $host = shift;
print "Enter scan port start:";
my $port = <>;
print "Enter scan port end:";
my $port_end = <>;

my $protocol = getprotobyname('tcp');
$host = inet_aton($host) or die "$host failed";

for (my $i = $port; $i <= $port_end; $i++) {
    socket(SOCK , AF_INET , SOCK_STREAM , $protocol) or die "socket() failed: $!";
    my $dest_addr = sockaddr_in($i , $host);
    if (connect(SOCK , $dest_addr)) {
        print "Port: $i is open\n";
    }
    close SOCK;
}

Other, 程式筆記