2009年5月23日 星期六

PHP 自動更新進入yahoo 拍賣

因為Q經常逛yahoo拍賣,但是都難以搶到拍賣的東西(太多人下標),而且每次都要一直連看好幾的小時,所以心血來潮寫了一個可以每幾秒鐘,就自動更新一次,如果有新的物品po上去,就會自動進入此商品的網頁中。

不過發現沒有很理想,因為很快就出現 yahoo的錯誤999 = =
大家可以試試看

有分兩個檔案,請放在網站根目錄下的test裡面
TEST1.PHP
<?php

session_start();

$seller = "lainjp98";//請輸入賣家帳號

//$fp = fopen("http://tw.user.bid.yahoo.com/tw/user/".$seller,"r");

$fp = fopen("http://tw.user.bid.yahoo.com/tw/user/".$seller."?userID=".$seller."&catID=&catIDselect=&clf=&u=:".$seller."&s1=ptime&o1=d&at=false","r");

$i = 0;

$j = 0;

while(!feof($fp)){

$read = fgets($fp);

$checkread = substr($read,0,14);

echo $read;

//echo ''.$checkread;

if($checkread ==' <td><a href=' and $i == 0){

if (@$read != $_SESSION['save'] and $_SESSION['check'] == '1'){

$check = 'yes';

$msg = explode ('"',$read);

echo $msg[1];

//header("Location: http://127.0.0.1/test/test2.php");

echo '<meta http-equiv="refresh" content="0'.';'.' url=http://127.0.0.1/test/test2.php?msg='.$msg[1].'">';

//echo '<meta http-equiv="refresh" content="5'.'; '.$msg[1].'">';

}

$_SESSION['save'] = $read;

$_SESSION['check'] = '1';

$i = 1 ;

}


}

fclose($fp);

echo $check;



?>

<meta http-equiv="refresh" content="4">

第二個檔案 test2.php 請這樣命名
<?php
$msg = $_GET['msg'];
//echo $msg;
$fp = fopen($msg,"r");
while(!feof($fp)){
$read = fgets($fp);
echo $read;
}
fclose($fp);
?>



當然這還很陽春,有望大家修改修改,呵呵

===================================

PHP 傳送POST使用fsockopen 取代CURL 取得回應

很實用的文章

//接收POST參數的URL
$url = 'http://www.google.com';
//POST參數,在這個陣列裡,索引是name,值是value,沒有限定組數
$postdata = array('post_name'=>'post_value','acc'=>'hsin','nick'=>'joe');
//函式回覆的值就是取得的內容
$result = sendpost($url,$postdata);

function sendpost($url, $data){
//先解析url 取得的資訊可以看看http://www.php.net/parse_url
$url = parse_url($url);
if(!$url) return "couldn't parse url";
//對要傳送的POST參數作處理
$encoded = "";
while(list($k,$v)=each($data)){
$encoded .= ($encoded?"&amp;":'');
$encoded .= rawurlencode($k)."=".rawurlencode($v);
}
//開啟一個socket
$fp = fsockopen($url['host'],($url['port']?$url['port']:80));
if(!$fp) return "Failed to open socket to ".$url['host'];
//header的資訊
fputs($fp,'POST '.$url['path'].($url['query']?'?'.$url['query']:'')." HTTP/1.0rn");
fputs($fp,"Host: ".$url['host']."n");
fputs($fp,"Content-type: application/x-www-form-urlencodedn");
fputs($fp,"Content-length: ".strlen($encoded)."n");
fputs($fp,"Connection: closenn");
fputs($fp,$encoded."n");
//取得回應的內容
$line = fgets($fp,1024);
if(!eregi("^HTTP/1.. 200", $line)) return;
$results = "";
$inheader = 1;
while(!feof($fp)){
$line = fgets($fp,2048);
if($inheader&amp;&amp;($line == "n" || $line == "rn")){
$inheader = 0;
}elseif(!$inheader){
$results .= $line;
}
}
fclose($fp);
return $results;
}

=======END======

PHP 傳送GET使用fsockopen 取代CURL 取得回應

其實直接使用fopen就可以啦!!
不過有看到別人寫了別的方法
避免allow_url_fopen = off 而不能用的方法


function SendGET($_url){
$url = parse_url($_url);
$contents = '';
$fp = fsockopen($url['host'],$url['port']);
if($fp){
$_request = $url['path'].($url['query']==''?'':'?'.$url['query']).($url['fragment']==''?'':'#'.$url['fragment']);
fputs($fp,'GET '.$_request." HTTP/1.0\r\n");
fputs($fp,"Host: ".$url['host']."\n");
fputs($fp,"Content-type: application/x-www-form-urlencoded\n");
fputs($fp,"Connection: close\n\n");
$line = fgets($fp,1024);
if(!eregi("^HTTP/1\.. 200", $line)) return;
else{
$results = '';
$contents = '';
$inheader = 1;
while(!feof($fp)){
$line = fgets($fp,2048);
if($inheader&&($line == "\n" || $line == "\r\n")){
$inheader = 0;
}elseif(!$inheader){
$contents .= $line;
}
}
fclose($fp);
}
}
return $contents;
}

$url = 'http://someone.com:80/index.php?mode=go&id=hsin#top';
$_result = SendGET($url);
print_r($_result);

PHP CURL 發送 GET 和 POST 語法

如果要連到連的網址的話
許多免費空間不支援FOPEN
大家可以使用CURL試試看

PHP CURL

1、http的get傳送

$ch = curl_init("/") ;
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true) ;
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true) ;
$output = curl_exec($ch) ;
$fh = fopen("out.html", 'w') ;
fwrite($fh, $output) ;
fclose($fh) ;

2、http的post傳送

EX1

$URL="www.mysite.com/test.php";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,"https://$URL");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, "Data1=blah&Data2=blah");curl_exec ($ch);
curl_close ($ch);


EX2

//extract data from the post
extract($_POST) ;
//set POST variables
$url = '/get-post.php' ;
$fields = array(
'lname'=>urlencode($last_name) ,
'fname'=>urlencode($first_name) ,
'title'=>urlencode($title) ,
'company'=>urlencode($institution) ,
'age'=>urlencode($age) ,
'email'=>urlencode($email) ,
'phone'=>urlencode($phone)
);
//url-ify the data for the POST
foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&' ; }
rtrim($fields_string ,'&') ;
//open connection
$ch = curl_init() ;
//set the url, number of POST vars, POST data
curl_setopt($ch, CURLOPT_URL,$url) ;
curl_setopt($ch, CURLOPT_POST,count($fields)) ;
curl_setopt($ch, CURLOPT_POSTFIELDS,$fields_string) ;
//execute post
$result = curl_exec($ch) ;
//close connection
curl_close($ch) ;

0-c.php.ini 配置詳細解說

php.ini 配置詳細選項
作者:DDVIP
top

php.ini 或 php3.ini 是 PHP 在啟動時會讀取的配置文件。該文件的存放路徑為 /usr/local/lib/。在 PHP 3.x 版的配置文件為 php3.ini;而在 PHP 4.x 版改為 php.ini。若 PHP 安裝成服務器的模塊,則在 Web 服務器啟動執行時會讀取,之後就不再讀取,因此改動配置的話要重新啟動 Web 服務器。若使用獨立 PHP CGI 方式,則每次都讀一次。
要看目前的系統配置,可以用phpinfo()看到。以下為選項配置

php_value name value
配置變量名稱和值。本選項需 PHP 4.x 版之後才能使用。


php_flag name onoff
配置標誌布爾變量選項。本選項需 PHP 4.x 版之後才能使用。


php_admin_value name value
配置 Apache 的配置文件變量。原來在 .htaccess 的配置改到這個選項配置。本選項需 PHP 4.x 版之後才能使用。


php_admin_flag name onoff
配置布爾變量當標誌。本選項需 PHP 4.x 版之後才能使用。


asp_tags boolean
配置 PHP 程序是否解析以 ASP Script 語法 的標記 (tag)。本選項在 PHP 3.0.4 之後才可使用。更多的細節可以參考>嵌入方法的部份。


auto_append_file string
配置本選項可以讓指定的文件附加在原 PHP 程序後面自動執行。若 PHP 程序中有用到 exit() 函數,則指定的文件不會執行。參數 string 即為指定自動執行的文件。


auto_prepend_file string
配置本選項可以讓指定的文件在原 PHP 程序之前自動執行。參數 string 即為指定自動執行的文件。


cgi_ext string
本選項配置 CGI 程序的擴展名。


display_errors boolean
本選項配置是否要將執行的錯誤信息顯示在用戶的瀏覽器上。


doc_root string
配置服務器的文件及 PHP 文件放置的根目錄。


engine boolean
本選項需要使用apache的模塊方式使用 PHP。可配置是否要使用 PHP 引擎。在 httpd.conf 中加入 php3_engine on/off 亦可配置某目錄或某虛擬網站是否要用 PHP 解析器。


error_log string
本選項用來配置錯誤記錄文件。在 UNIX 系統上參數 string 即為文件名。Windows NT 會將記錄記在事件檢視器的日誌之中。Windows 95/98 則不支持系統記錄。


error_reporting integer
本選項用來配置系統記錄的等級。參數 integer 即為等級的級數標誌,可以加在一起,默認值為 7


open_basedir string
本選項用來配置提供 PHP 存取的最底層目錄。從該指定目錄之下的文件或目錄,PHP 程序才能存取。使用本選項主要是為了系統安全性的考慮。參數 string 即為要限制的最底層目錄節點。值得注意的是在 UNIX 系統中,若該節點之下的文件或目錄有符號鏈結 (symbolic link),則可能會讓使用本選項的目的打折,因此在目錄的設計上考慮,也是 Webmaster 的重要任務。默認值是所有文件均可存取。在 PHP 3.0.7 版之後,可以配置多個底層目錄。


gpc_order string
配置 GET/POST/COOKIE 三種模塊的順序及規則。參數 string 即為要配置的規則,例如:配置成 "GP" 表示忽視 cookie,並在存取方法 (method) 相同時,以 POST 取代 GET。


ignore_user_abort string
默認值為 Off。用來配置當傳輸未完成時,用戶端斷線是要繼續處理。


include_path string
為 PHP 程序中 require、include 及 fopen_with_path 等函數的文件搜尋路徑。在 UNIX 或 Windows 中的斜線方向不同。


log_errors boolean
指定程序錯誤時是否要記錄在 log 文件中。


magic_quotes_gpc boolean
配置 GET/POST/COOKIE 三種模塊的特殊字符,包含單引號、雙引號、反斜線、及空字符 (NUL) 是否要自動加入反斜線當溢出字符。


magic_quotes_runtime boolean
配置返回資料是否自動加入反斜線當溢出字符。


magic_quotes_sybase boolean
配置 sybase 資料中單引號要自動加上反斜線當溢出字符。


max_execution_time integer
配置程序最久執行時間。單位是秒。


memory_limit integer
配置程序最多使用多少內存。


short_open_tag boolean
配置是否使用短的 PHP 標記 ()。若不使用,則必須要用

track_errors boolean
打開本選項可使最後的錯誤信息跟著全局變量 $php_errormsg。


track_vars boolean
打開本選項可讓用戶輸入的字符串自動解析到變量之中,而不用自己處理。


upload_tmp_dir string
指定上傳文件臨時路徑。


user_dir string
指定用戶根目錄的路徑。


warn_plus_overloading boolean
若打開本選項,字符串間就只能用英文的句號 (.) 鏈接,而不能用加號 (+) 鏈接字符串。


SMTP string
在 Windows 系列操作系統中,用來指定 SMTP 服務器,供 mail 函數使用。參數 string 為 SMTP 服務器名字。


sendmail_from string
配置 "From: " 字符串供 Windows 系列操作系統使用 mail 函數。


sendmail_path string
配置 sendmail 程序的放置路徑。例如 /usr/sbin/sendmail。


safe_mode boolean
配置 PHP 在安全模式下執行。


safe_mode_exec_dir string
配置安全模式程序執行的路徑。


debugger.host string
指定遠端調試的服務器名稱,可以是 IP 或 Domain Name。


debugger.port string
配置遠端調試服務器的端口 (port)。


debugger.enabled boolean
配置是否可以為調試模式。


enable_dl boolean
本選項要使用apache模塊 (Apache module) 的方式才有效。用來配置 PHP 的函數可否作用。當系統處於安全模式 (safe-mode) 時,本選項 enable 也無法使用 dl() 函數。


extension_dir string
配置動態函數的路徑。


extension string
PHP 啟動時所要載入的動態擴充功能。


mysql.allow_persistent boolean
配置是否允許 MySQL 數據庫持續連接 (persistent connections),會影響函數。


mysql.max_persistent integer
配置每個處理程序最多保持幾個 MySQL 持續連接。


mysql.max_links integer
配置每個處理程序最多開幾個 MySQL 連接,包括持續連接。


msql.allow_persistent boolean
配置是否允許 mSQL 數據庫持續連接 (persistent connections),會影響函數。


msql.max_persistent integer
配置每個處理程序最多保持幾個 mSQL 持續連接。


msql.max_links integer
配置每個處理程序最多開幾個 mSQL 連接,包括持續連接。


pgsql.allow_persistent boolean
配置是否允許 Postgres 數據庫持續連接 (persistent connections),會影響函數。


pgsql.max_persistent integer
配置每個處理程序最多保持幾個 Postgres 持續連接。


pgsql.max_links integer
配置每個處理程序最多開幾個 Postgres 連接,包括持續連接。


sybase.allow_persistent boolean
配置是否允許 Sybase 數據庫持續連接 (persistent connections),會影響函數。


sybase.max_persistent integer
配置每個處理程序最多保持幾個 Sybase 持續連接。


sybase.max_links integer
配置每個處理程序最多開幾個 Sybase 連接,包括持續連接。


sybct.allow_persistent boolean
配置是否允許 Sybase-CT 數據庫持續連接 (persistent connections),默認值是打開的。


sybct.max_persistent integer
配置每個處理程序最多保持幾個 Sybase-CT 持續連接。默認值為 -1 表示無限制。


sybct.max_links integer
配置每個處理程序最多開幾個 Sybase-CT 連接,包括持續連接。默認值為 -1,表示沒有限制。


sybct.min_server_severity integer
配置 Sybase-CT 服務器錯誤報告的最少筆數。默認值為 10。


sybct.min_client_severity integer
配置 Sybase-CT 客戶端錯誤報告的最少筆數。默認值為 10。


sybct.login_timeout integer
配置 Sybase-CT 最久可以使用的登入時間。默認值為 1 分鐘。


sybct.timeout integer
配置 Sybase-CT 的 query 操作時間限制。默認值為無限制。


sybct.hostname string
配置 Sybase-CT 可連接機器名稱。默認值不設限


ifx.allow_persistent boolean
配置是否允許 Informix 數據庫持續連接 (persistent connections),會影響函數。


ifx.max_persistent integer
配置每個處理程序最多保持幾個 Informix 持續連接。


ifx.max_links integer
配置每個處理程序最多開幾個 Informix 連接,包括持續連接。


ifx.default_host string
配置 Informix 默認連接的服務器名稱,供ifx_connect()或ifx_pconnect()函數使用。


ifx.default_user string
配置 Informix 默認連接的用戶帳號,供ifx_connect()或ifx_pconnect( 函數使用。


ifx.default_password string
配置 Informix 默認連接的用戶密碼,供ifx_connect()或ifx_pconnect() 函數使用。


ifx.blobinfile boolean
配置 Informix 長位類模式,0 表在內存;1 表在文件中。亦可以在 PHP 程序中使用ifx_blobinfile_mode()函數來修改。


ifx.textasvarchar boolean
配置 Informix 文字模式默認值,0 表返回 blob 的代碼;1 表返回 varchar 字符串。亦可在 PHP 程序中使用ifx_textasvarchar() 函數來修改配置。


ifx.byteasvarchar boolean
配置 Informix 位組模式默認值,0 表返回 blob 的代碼;1 表返回 varchar 字符串。亦可在 PHP 程序中使用ifx_byteasvarchar() 來修改配置。


ifx.charasvarchar boolean
配置 Informix 返回字符串的字尾空格是否要自動去除。


ifx.nullformat boolean
配置 NULL 字段的返回方式,true 表示返回字符串 NULL,false 表格返回字符串 ""。亦可在 PHP 程序中以ifx_nullformat() 修改。


bcmath.scale integer
配置 BC 高精確度函數庫的小數點位數。


browscap string
配置瀏覽器的開文件能力名。


uodbc.default_db string
配置 ODBC 默認連接的數據庫名稱,供odbc_connect()或odbc_pconnect()函數使用。


uodbc.default_user string
配置 ODBC 默認連接的用戶帳號,供odbc_connect()或odbc_pconnect()函數使用。


uodbc.default_pw string
配置 ODBC 默認連接的用戶密碼,供odbc_connect()或函數使用。


uodbc.allow_persistent boolean
配置是否允許 ODBC 數據庫持續連接 (persistent connections),會影響odbc_pconnect()函數。


uodbc.max_persistent integer
配置每個處理程序最多保持幾個 ODBC 持續連接。


uodbc.max_links integer
配置每個處理程序最多開幾個 ODBC 連接,包括持續連接。

以下和 session 有關的配置值,都在 PHP 4.x 以上的版本方支持。在 php.ini 的配置文件中。

session.save_handler
定義 session 儲存資料的文件名稱。默認值為 files。


session.save_path
定義 session 儲存資料的文件路徑。默認值為 /tmp。


session.name
配置 session 所使用的 cookie 名稱。默認值為 PHPSESSID。


session.auto_start
配置 session 是否自動打開。默認值為 0 (否)。


session.lifetime
配置 cookie 送到瀏覽器後的保存時間,單位為秒。默認值為 0,表示直到瀏覽器關閉。


session.serialize_handler
定義連續/解連續資料的標頭,本功能只有 WDDX 模塊或 PHP 內部使用。默認值為 php。


session.gc_probability
配置每筆要求回應時的廢物蒐集 (gc, garbage collection) 處理機率。默認值為 1。


session.gc_maxlifetime
配置廢物被清除前的存活秒數。


session.extern_referer_check
決定參照到客戶端的 Session 代碼是否要刪除。有時在安全或其它考慮時,會配置不刪除。默認值為 0。


session.entropy_file
配置 session 代碼建立時,使用外部高熵值資源或文件來建立,例如 UNIX 系統上的 /dev/random 或 /dev/urandom。


session.entropy_length
配置 session 從高熵值資源讀取的位組數。默認值為 0。


session.use_cookies 配置是否要將 session 變成 cookie 存在用戶端。默認值為 1,表是打開本功能。

APACHE PHP MYSQL WindowsXP 安裝教學

這篇是之前在無名發過的,然後拿來用,不過因為表格的關係,所以格試怪怪的,然後圖片也是無名上的,所以有的時候會顯示不出來,如果有需要,請參考完整版本
http://www.wretch.cc/blog/njqa3024/6965224


不過最後發現了一個折衷的辦法,google可以用投影片播放,呵呵













Apache網路伺服器,扮演著serve的角色,別人只要輸入IP或是網址就可以連到這個伺服器,然後如果有放置網頁,apache就會解釋翻譯這些網頁,並傳送給瀏覽者(viewer),瀏覽者就可以看到你做的網頁。一般apache只支援基本的html靜態語法。
PHP性質上就類似一個處理程序,可以寫一個程式,當一筆資料進到這個程式之後可以轉換成另外一個東西,算是比較後台的運作。如果要用在網站上,必須要配合伺服器(ex. apache),也算是幫助伺服器可以解讀更多的程式碼。
MYSQL就是專門處理大量資料的資料庫。可以簡單的讀取或儲存甚至處理大量資料。














在安裝前要先準備好這三個安裝程式



apache

下載頁面

直接下載

(apache_2.2.10-win32-x86-no_ssl.msi)



php

下載頁面

直接下載

(PHP 5.2.6 installer)



mysql

下載頁面

直接下載

(mysql-essential-5.1.29-rc-win32.msi)









這邊以安裝檔的形式介紹,sorce code 安裝方法先略過



先安裝apache





然後安裝php





最後安裝mysql





這樣基本上就安裝完成了



打開瀏覽器,輸入localhost 如果跑出這畫面,就是成功了(apache)



至於要啟動php 就要先把下面的設定完成並且重新啟動apache












apache httpd.conf 設定



開啟



C:\apache\conf\httpd.conf



然後開始改一些設定



搜尋(ctrl + f),因為設定頗多,所以用搜尋



DocumentRoot "C:/apache/htdocs"

網頁放置的位置



DirectoryIndex index.php index.html index.htm

網頁開啟的順序 這邊設定php先開啟



之後將看到最下面



#BEGIN PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL

#指定php.ini存放的目錄

PHPIniDir "C:/apache/php/"



#載入php的模組

LoadModule php5_module "C:/apache/php/php5apache2_2.dll"

#END PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL



除了這些以外

還要自己再輸入



#指名附檔名是 .php .phtml .inc .php3的程式都當成php程式 ,

其於的都當成一般網頁

AddType application/x-httpd-php .php .phtml .inc .php3






然後存檔,重開apache 即可






基本上這樣就大公告成了,至於php.ini再這邊就不提了




2009年5月22日 星期五

0. 基本HTML語法

基本HTML語法



對於架站來說,HTML語法就是最基本的語法,不過相信許多人架站都是使用套裝軟體(ME,TOO),這樣有好 有壞,第一個可以節省時間,然後又可以把版面排的漂漂亮亮的,不過這樣對於網頁的編排功能上就會損失許多,也不能精準的控制每個物件之間的關連。

也許網頁 本來就是漂亮比較重要,不過如果可以快速編排再加上精準控制,這樣不就更可以把HTML的精華發揮出來。



再以PHP來說,HTML語法就變成極為重要了,在PHP世界裡可沒有可以拖拖拉拉用滑鼠就可以移動的功能,純粹只能以語法控制,連出現在網頁的哪邊、大小都要自行設定。



當然你也可以說先設計好然後再把語法剪貼過去使用(我是這樣子= =),但在剪剪貼貼之前最重要的還是必須了解基本語法吧!!

至少也要知道某段語法是有什麼功用,然後才可以依樣畫葫蘆,否則PHP輸出結果大概就只有文字了。


---------------------------------------------------------------


0-1.使用的編輯軟體



筆記本 :

最基本的編輯軟體,主要是給很熟悉語法的人使用。也是最簡單可以取得的軟體。



Editpad :

為FREE版本,他可以清楚的條列語法。是要對語言也一定了解的人使用。



Dreamweaver :

ADOBE公司出版,主要為視覺網頁設計使用,他可以很方便的設計排版,也有提供較深入的語法可以直接使用。(本人主要用這個,功能強強滾)



Frontpage :

也算是比較基本的編輯器,主要也是偏向視覺設計排版,但功能較少,也是需付費軟體。

---------------------------------------------------------------


0-2.HTML基本架構



<html> 告訴瀏覽器,這一行開始以下都是網頁型式的語言。

<head> 重要先讀取的資訊,開始

<title> 標題打在這邊,就是IE最上面那行</title>

</head> 重要先讀取的資訊,結束

<body> 內文開始,就是顯示給viewer看的東西。

</body> 內文結束

</html> 告訴瀏覽器,這一行結束了網頁,以下就不是網頁語言了。



以 上就屬於最最基本的HTML架構,也就是普通舊式語法的開頭,而現在隨著瀏覽器越來越高級,能處理的語法、用法也跟著變多,所以在現在在程式開始執行辨識 前都還要先加入DOCTYPE 宣告以下的內容要用哪一種語法和辨認方法(也就是哪一種版本),當然不輸入也行,瀏覽器會自動判別為舊式的語法,至於能宣告的形式就有分許多,在這邊主要 只推薦一般較好用的宣告:

在<html>上面加入:



<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">



這樣將為定義以下內容使用xhtml來辨識,至於為什麼要用xhtml,其實主要原因又是習慣麻!!(其實是一開始並不知道要設這個,不過DREAMWEAVER都自動設為xhtml了,而之後也就習慣了)~呵呵。(其實還有一些功能上的原因啦)



至於之後很多網頁的<html> 都會再加上xmlns 變成 :

<html xmlns="http://www.w3.org/1999/xhtml">



至於為什麼呢?老實說我也不是很清楚,實際上好像沒有影響,可能只是類似一種標籤之類的吧!! = ="





到目前為止程式碼為 :



<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">





這樣開頭的宣告就差不多了,接下來還要在宣告編碼(語言),這要放在<head>內。

加入 :

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />



or



<meta http-equiv="Content-Type" content="text/html; charset=big5" />



這 段主要就是加入宣告的編碼,在這邊其實很重要,尤其是在之後寫PHP輸出的編碼必須與此配合,否則如果是中文字就會出現亂碼,在這邊如果是使用繁體中文網 頁,首先推薦BIG5(UTF-8可能會有亂碼,還要再做檔案的編碼更換),但如果對電腦比較瞭解的話,就建議使用UTF-8,UTF-8的字元比較多, 比較不會有人名打不出來的問題,至於如果只是單機處理"檔案"的話,也是要用BIG5(正常台灣內電腦編碼為BIG5,或是要轉碼),這方面問題當初也被 搞得亂七八糟的,以後再慢慢道來。



到這邊基本的宣告已經差不多了 :



<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

<title> </title>

</head>

<body>

</body>

</html>



這樣基本架構就完成了,接下來主要就是在BODY裡添加內容。

---------------------------------------------------------------


0-3.文字處理





字型的處理在html語法中算是較基本的,就算不去理會也是可以印出字來,不過如果目標是做一個漂漂亮亮的網頁,就變成不可忽略的一環。不過能夠處理字型的語法卻是五花八門 html, xhtml, ccs 等,都可以讓字型變得專業。



<以下語法接在body中>



首先介紹最直接控制字型的語法: 標題



<h1>輸入要顯示的字</h1>

<h2>輸入要顯示的字</h2>

...

<h6>輸入要顯示的字</h6>

tools(html_test)



這個標題大小有分6種大小,1最大,6最小,如果就以大小來說,這語法還算是方便,不過如果要加上顏色,可能就只能呼叫 ccs 幫忙摟!



接下來是html專門處理字型的語法 <font>

用法也是和上述差不多,也是:

<font>要顯示的字</font>

不過這能加入的元素就可以比較多了(不包含ccs),可以字體大小、調整字型、顏色。



字體大小:<font size=""></font>

<font size="-6">要顯示的字</font>

<font size="+6">要顯示的字</font>

tools(html_test)

總共有12種大小,從-6 ~ +6 可供使用。



字型: <font face=""></font>

<font face="華康粗圓體">要顯示的字</font>

<font face="標楷體">要顯示的字</font>

這邊就可以把你電腦有的字型都打上去試試看,不過請注意一點,如果別人的電腦沒有你有的字型,那就顯示不出來摟!



字的顏色: <font color=""></font>

<font color="#0000FF">要顯示的字為藍色</font>

<font color="#00FF00">要顯示的字為綠色</font>

<font color="#FF0000">要顯示的字為紅色</font>

tools(html_test)

這邊就是在color裡面填入#xxxxxx 為16位元碼,0 ~F,依序為紅綠藍的比例,每個顏色佔2個位元,等於 16*16-1=255 個深淺,然後三色(RGB)組合配成的顏色,就會顯示出來。



當然這三種組合也可以一起使用:<font size="" face=""t color="#">要顯示的字</font> ,(科科~不用照順序嘿)

<font size="+2" face="華康粗圓體"t color="#0000FF">要顯示的字</font>

tools(html_test)



以上三點元素,基本上font差不多就這樣了。