公告版位

 

資料來源:http://www.jb51.net/article/2972.htm

asp顯示acess的資料時,由時間因素而不一樣的操作,

比如只顯示上星期的資料之類的

 

13.5.1 列出某一天, 上一星期的数据
SELECT distinct dateandtime
FROM ctdate_by_query_date
WHERE dateandtime between ((#2006-5-15#+(Weekday(2006-5-15)-7))-6) and (#2006-5-15#-7)+Weekday(2006-5-15)
sql="SELECT distinct dateandtime FROM ctarticle WHERE dateandtime between ((#"&date&"#+(Weekday("&date&")"&norp&"7))-6) and (#"&date&"#"&norp&"7)+Weekday("&date&")"
13.5 查询一天, 所隶属星期所有天数的数据
SELECT *
FROM ctdate_by_query_date
WHERE dateandtime between ((#2006-5-15#+Weekday(2006-5-15))-6) and #2006-5-15#+Weekday(2006-5-15)
13.4 查询一个时间段
SELECT *
FROM ctdate_by_query_date
WHERE dateandtime between #2006-5-1# and #2006-5-30#
13.3.2 列出不同年份的年份, 并且不要相同
select distinct year(dateandtime) from ctarticle
结果如:
Expr1000
2000
2003
2004
2005
2006
13.3.1 列出某一天, 上一年的第一条记录
SELECT top 1 dateandtime FROM ctarticle where year(dateandtime)=(2006)-1
sql="SELECT top 1 dateandtime FROM ctarticle where year(dateandtime)=(year(#"&date&"#))"&norp
13.3 列出某一年的数据
sql="select * from ctdate_by_query_date where year(dateandtime)="&year(rqqdt_)&" order by dateandtime desc"
13.2.1 查找上一月中的第一条记录
SELECT top 1 dateandtime FROM ctarticle where year(dateandtime)=year(#2006-5-28#) and month(dateandtime)=month(#2006-5-28#)-1
13.2 列出某一月的数据
sql="select * from ctdate_by_query_date where year(dateandtime)="&year(rqqdt_)&" and month(dateandtime)="&month(rqqdt_)&" order by dateandtime desc"
13.1 列出某一日的数据
sql="select * from ctdate_by_query_date where dateandtime=#"&rqqdt_&"# order by a.articleid desc"
13. 时间日期
例一: 列出当天的数据
sql="select * from ctdate_by_query_date where dateandtime=date() order by a.articleid desc"

smileALin 發表在 痞客邦 留言(0) 人氣()

來源:

http://www.webdesgin-information.com/?p=102

 

ASP時間函數獲取服務器時間和相關例子

介紹一下ASP相關時間函數的時間使用。

一、下面先簡單介紹一下常用的ASP時間函數:
1、now()獲取當前系統日期和時間,ASP輸出:

<%=now()%>
2、Year(now())獲取年份, ASP輸出:
<%=Year(now())%>
3、Month(now())獲取當前月份,ASP輸出:
<%=Month(now())%>
4、day(now())獲取當天數,ASP輸出:
<%=day(now())%>
5、hour(now())獲取小時數,ASP輸出:
<%=hour(now())%>
6、Minute(now())獲取分鐘數,ASP輸出:
<%=Minute(now())%>
7、Second(now())獲取秒鐘數,ASP輸出:
<%=Second(now())%>
8、date()獲取當前系統日期,ASP輸出:
<%=date()%>
9、time()獲取當前系統時間,ASP輸出:
<%=time()%>
10、weekdayname(weekday(now))獲取當前系統星期,ASP輸出:
<%=weekdayname(weekday(now))%>
二、下面就以現在的時間“2009-05-31 17:49:08星期日”為例:
1、<%=now()%>輸出結果為:2009-05-31 17:49:08或2009-05-31下午05:52:53
2、<%=Year(now())%>輸出結果為:2009
3、<%=Month(now())%>輸出結果為:5
4、<%=day(now())%>輸出結果為:31
5、<%=hour(now())%>輸出結果為:17
6、<%=Minute(now())%>輸出結果為:49
7、<%=Second(now())%>輸出結果為:08
8、<%=date()%>輸出結果為:2009-05-31
9、<%=time()%>輸出結果為:17:49:08或下午06:05:12
10、<%=weekdayname(weekday(now))%>輸出結果為:星期日
三、更多ASP時間函數詳解:
Date函數
描述:返回當前系統日期。
語法:Date

DateAdd函數
描述:返回已添加指定時間間隔的日期。
語法:DateAdd(interval, number, date)
interval:必選。字符串表達式,表示要添加的時間間隔。有關數值,請參閱“設置”部分。
number:必選。數值表達式,表示要添加的時間間隔的個數。數值表達式可以是正數(得到未來的日期)或負數(得到過去的日期)。
date:必選。 Variant或要添加interval的表示日期的文字。
interval參數可以有以下值:
yyyy (年) 、q (季度) 、m (月) 、y (一年的日數) 、d (日) 、w (一周的日數) 、ww (週) 、h (小時) 、n (分鐘) 、 s (秒)
說明:可用DateAdd函數從日期中添加或減去指定時間間隔。例如可以使用DateAdd從當天算起30天以後的日期或從現在算起45分鐘以後的時間。要向datekoyamas koyama添加以“日”為單位的時間間隔,可以使用“一年的日數”(“y”)、“日”(“d”)或“一周的日數”(“w”)。
DateAdd函數不會返回無效日期。如下示例將95年1月31日加上一個月:
NewDate = DateAdd(”m”, 1, “31-Jan-95″)
在這個例子中,DateAdd返回95年2月28日,而不是95年2月31日。如果date為96年1月31日,則返回96年2月29日,這是因為1996是閏年。
如果計算的日期是在公元100年之前則會產生錯誤。
如果number不是Long型值,則在計算前四捨五入為最接近的整數。

DateDiff函數
描述:返回兩個日期之間的時間間隔。
語法:DateDiff(interval, date1, date2 [,firstdayofweek[, firstweekofyear>)
interval:必選。字符串表達式,表示用於計算date1和date2之間的時間間隔。有關數值,請參閱“設置”部分。
date1, date2:必選。日期表達式。用於計算的兩個日期。
firstdayofweek:可選。指定星期中第一天的常數。如果沒有指定,則默認為星期日。有關數值,請參閱“設置”部分。
firstweekofyear:可選。指定一年中第一周的常數。如果沒有指定,則默認為1月1日所在的星期。有關數值,請參閱“設置”部分。
interval參數可以有以下值:
yyyy (年) 、q (季度) 、m (月) 、y (一年的日數) 、d (日) 、w (一周的日數) 、ww (週) 、h (小時) 、n (分鐘) 、 s (秒)
firstdayofweek參數可以有以下值:
(以下分別為:常數值描述)
vbUseSystem 0使用區域語言支持(NLS) API設置。
vbSunday 1星期日(默認)
vbMonday 2星期一
vbTuesday 3星期二
vbWednesday 4星期三
vbThursday 5星期四
vbFriday 6星期五
vbSaturday 7星期六
firstweekofyear參數可以有以下值:
(以下分別為:常數值描述)
vbUseSystem 0使用區域語言支持(NLS) API設置。
vbFirstJan1 1由1月1日所在的星期開始(默認)。
vbFirstFourDays 2由在新年中至少有四天的第一周開始。
vbFirstFullWeek 3由在新的一年中第一個完整的周開始。
說明:DateDiff函數用於判斷在兩個日期之間存在的指定時間間隔的數目。例如可以使用DateDiff計算兩個日期相差的天數,或者當天到當年最後一天之間的星期數。
要計算date1和date2相差的天數,可以使用“一年的日數”(“y”)或“日”(“d”)。當interval為“一周的日數”(“w”) 時,DateDiff返回兩個日期之間的星期數。如果date1是星期一,則DateDiff計算到date2之前星期一的數目。此結果包含date2而 不包含date1。如果interval是“週”(“ww”),則DateDiff函數返回日曆表中兩個日期之間的星期數。函數計算date1和 date2之間星期日的數目。如果date2是星期日,DateDiff將計算date2,但即使date1是星期日,也不會計算date1。
如果date1晚於date2,則DateDiff函數返回負數。
firstdayofweek參數會對使用“w”和“ww”間隔符號的計算產生影響。
如果date1或date2是日期文字,則指定的年度會成為日期的固定部分。但是如果date1或date2被包括在引號(" ")中並且省略年份,則在代碼中每次計算date1或date2表達式時,將插入當前年份。這樣就可以編寫適用於不同年份的程序代碼。
在interval為“年”(“yyyy”)時,比較12月31日和來年的1月1日,雖然實際上只相差一天,DateDiff返回1表示相差一個年份。

DatePart函數
描述:返回給定日期的指定部分。
語法:DatePart(interval, date[, firstdayofweek[, firstweekofyear>)
DatePart:函數的語法有以下參數:
interval:必選。字符串表達式,表示要返回的時間間隔。有關數值,請參閱“設置”部分。
date:必選。要計算的日期表達式。
firstdayof week:可選。指定星期中的第一天的常數。如果沒有指定,則默認為星期日。有關數值,請參閱“設置”部分。
firstweekofyear:可選。指定一年中第一周的常數。搬屋 搬運如果沒有指定,則默認為1月1日所在的星期。有關數值,請參閱“設置”部分。
interval參數可以有以下值:
yyyy (年) 、q (季度) 、m (月) 、y (一年的日數) 、d (日) 、w (一周的日數) 、ww (週) 、h (小時) 、n (分鐘) 、 s (秒)
firstdayofweek參數可以有以下值:
(以下分別為:常數值描述)
vbUseSystem 0使用區域語言支持(NLS) API設置。
vbSunday 1星期日(默認)
vbMonday 2星期一
vbTuesday 3星期二
vbWednesday 4星期三
vbThursday 5星期四
vbFriday 6星期五
vbSaturday 7星期六
firstweekofyear參數可以有以下值:
(以下分別為:常數值描述)
vbUseSystem 0使用區域語言支持(NLS) API設置。
vbFirstJan1 1由1月1日所在的星期開始(默認)。
vbFirstFourDays 2由在新年中至少有四天的第一周開始。
vbFirstFullWeek 3由在新的一年中第一個完整的周(不跨年度)開始。
說明:DatePart函數用於計算日期並返回指定的時間間隔。例如使用DatePart計算某一天是星期幾或當前的時間。
firstdayofweek參數會影響使用“w”和“ww”間隔符號的計算。
如果date是日期文字,則指定的年度會成為日期的固定部分。但是如果date被包含在引號(" ")中,並且省略年份,則在代碼中每次計算date表達式時,將插入當前年份。這樣就可以編寫適用於不同年份的程序代碼。

DateSerial函數
描述:對於指定的年、月、日,返回Date子類型的Variant。
語法:DateSerial(year, month, day)
year:從100到9999之間的數字或數值表達式。
month:任意數值表達式。
day:任意數值表達式。
說明:要指定日期,如1991年12月31日,DateSerial函數中每個參數的取值範圍都應該是可接受的;即日的取值應在1和31之間,月的取值應在1和12之間。但是,也可以使用表示某日之前或之後的年、月、日數目的數值表達式為每個參數指定相對日期。
以下樣例中使用了數值表達式代替絕對日期。在這裡,DateSerial函數返回1990年8月1日之前十年(1990 - 10)零兩個月(8 - 2)又一天(1 - 1)的日期:即1980年5月31日。
DateSerial(1990 - 10, 8 - 2, 1 - 1)
對於year參數,若取值範圍是從0到99,則被解釋為1900到1999年。對於此範圍之外的year參數,則使用四位數字表示年份(例如1800年)。
當任何一個參數的取值超出可接受的範圍時,則會適當地進位到下一個較大的時間單位。例如,如果指定了35天,則這個天數被解釋成一個月加上多出來的日數, 多出來的日數取決於其年份和月份。但是如果參數值超出-32,768到32,767的範圍,或者由三個參數指定(無論是直接還是通過表達式指定)的日期超 出了可以接受的日期範圍,就會發生錯誤。

DateValue函數
描述:返回Date子類型的Variant。
語法:DateValue(date)
date參數應是字符串表達式,表示從100年1月1日到9999年12月31日中的一個日期。但是,date也可以是表示上述範圍內的日期、時間或日期時間混合的任意表達式。
說明:如果date參數包含時間信息,則DateValue不會返回時間信息。但是如果date包含無效的時間信息(如"89:98"),就會出現錯誤。
如果date是某一字符串,其中僅包含由有效的日期分隔符分隔開的數字,則DateValue將會根據為系統指定的短日期格式識別月、日和年的順序。 DateValue還會識別包含月份名稱(無論是全名還是縮寫)的明確日期。例如,除了能夠識別12/30/1991和12/30/91之 外,DateValue還能識別December 30, 1991和Dec 30, 1991。
如果省略了date的年份部分,DateValue將使用計算機系統日期中的當前年份。

Day函數
描述:返回1到31之間的一個整數(包括1和31),代表某月中的一天。
語法:Day(date)
date參數是任意可以代表日期的表達式。如果date參數中包含Null,則返回Null。

FormatDateTime函數
描述:返回表達式,此表達式已被格式化為日期或時間。
語法:FormatDateTime(Date[,NamedFormat])
Date:必選。要被格式化的日期表達式。
NamedFormat:可選。指示所使用的日期/時間格式的數值,如果省略,則使用vbGeneralDate。
NamedFormat參數可以有以下值:
(以下分別為:常數值描述)
vbGeneralDate 0顯示日期和/或時間。如果有日期部分,則將該部分顯示為短日期格式。如果有時間部分,則將該部分顯示為長時間格式。如果都存在,則顯示所有部分。
vbLongDate 1使用計算機區域設置中指定的長日期格式顯示日期。
vbShortDate 2使用計算機區域設置中指定的短日期格式顯示日期。
vbLongTime 3使用計算機區域設置中指定的時間格式顯示時間。
vbShortTime 4使用24小時格式(hh:mm)顯示時間。

Hour函數
描述:返回0到23之間的一個整數(包括0和23),代表一天中的某一小時。
語法:Hour(time)
time參數是任意可以代表時間的表達式。如果time參數中包含Null,則返回Null。

Minute函數
描述:返回0到59之間的一個整數(包括0和59),代表一小時內的某一分鐘。
語法:Minute(time)
time參數是任意可以代表時間的表達式。PVC Business Cards Gift Cards
如果time參數包含Null,則返回Null。

Month函數
描述:返回1到12之間的一個整數(包括1和12),代表一年中的某月。
語法:Month(date)
date參數是任意可以代表日期的表達式。如果date參數中包含Null,則返回Null。

MonthName函數
描述:返回表明指定月份的字符串。
語法:MonthName(month[, abbreviate])
month:必選。月份的數值定義。例如,一月是1,二月是2,以此類推。
abbreviate:可選。 Boolean值,表明月份名稱是否簡寫。如果省略,默認值為False,即不簡寫月份名稱。

Now函數
描述:根據計算機系統設定的日期和時間返回當前的日期和時間值。
語法:Now

Second函數
描述:返回0到59之間的一個整數(包括1和59),代表一分鐘內的某一秒。
語法:Second(time)
time參數是任意可以代表時間的表達式。如果time參數中包含Null,則返回Null。

Time函數
描述:返回Date子類型Variant,指示當前系統時間。
語法:Time

TimeSerial函數
描述:返回一個Date子類型的Variant,含有指定時、分、秒的時間。
語法:TimeSerial(hour, minute, second)
hour:其值為從0 (12:00 AM)到23 (11:00 PM)的數值或數值表達式。
minute:任意數值表達式。
second:任意數值表達式。
說明:要指定一時刻,如11:59:59,TimeSerial的參數取值應在可接受的範圍內;也就是說,小時應介於0-23之間,分和秒應介於0-59 之間。但是,可以使用數值表達式為每個參數指定相對時間,這一表達式代表某時刻之前或之後的時、分或秒數。以下樣例中使用了表達式代替絕對時間數。 TimeSerial函數返回中午之前六小時(12 - 6)十五分鐘的時間(-15),即5:45:00 AM。
TimeSerial(12 - 6, -15, 0)
當任何一個參數的取值超出可接受的範圍時,它會正確地進位到下一個較大的時間單位中。例如,如果指定了75分鐘,則這個時間被解釋成一小時十五分鐘。但 是,如果任何一個參數值超出-32768到32767的範圍,就會導致錯誤。如果使用三個參數直接指定的時間或通過表達式計算出的時間超出可接受的日期範 圍,也會導致錯誤。

TimeValue函數
描述:返回包含時間的Date子類型的Variant。
語法:TimeValue(time)
time參數通常是代表從0:00:00 (12:00:00 AM)到23:59:59 (11:59:59 PM)的字符串表達式(包括0:00:00和23:59: 59)。不過,time也可以是代表該範圍內任何時間的表達式。如果time參數包含Null,則返回Null。
說明:可以採用12或24小時時鐘服務優惠 禮物格式輸入時間。例如”2:24PM”和”14:24″都是有效的time參數。
如果time參數包含日期信息, TimeValue函數並不返回日期信息。然而,如果time參數包含無效的日期信息,則會出現錯誤。

Weekday函數
描述:返回代表一星期中某天的整數。
語法:Weekday(date, [firstdayofweek])
date:可以代表日期的任意表達式。如果date參數中包含Null,則返回Null。
firstdayofweek:指定星期中第一天的常數。如果省略,默認使用vbSunday。
firstdayofweek參數有如下設置:
(以下分別為:常數值描述)
vbUseSystem 0使用區域語言支持(NLS) API設置。
vbSunday 1星期日
vbMonday 2星期一
vbTuesday 3星期二
vbWednesday 4星期三
vbThursday 5星期四
vbFriday 6星期五
vbSaturday 7星期六
Weekday函數返回如下值:
(以下分別為:常數值描述)
vbSunday 1星期日
vbMonday 2星期一
vbTuesday 3星期二
vbWednesday 4星期三
vbThursday 5星期四
vbFriday 6星期五
vbSaturday 7星期六

WeekdayName函數
描述:返回一個字符串,表示星期中指定的某一天。
語法:WeekDayName(weekday, abbreviate, firstdayofweek)
weekday:必選。星期中某天的數值定義。各天的數值定義取決於firstdayofweek參數設置。
abbreviate:可選。 Boolean值,指明是否縮寫表示星期各天的名稱。如果省略,默認值為False,即不縮寫星期各天的名稱。
firstdayofweek:可選。指明星期第一天的數值。關於數值,請參閱“設置”部分。
firstdayofweek參數有以下值:
(以下分別為:常數值描述)
vbUseSystem 0使用區域語言支持(NLS) API設置。
vbSunday 1星期日(默認)
vbMonday 2星期一
vbTuesday 3星期二
vbWednesday 4星期三
vbThursday 5星期四
vbFriday 6星期五
vbSaturday 7星期六

Year函數
描述:返回一個代表某年的整數。
語法:Year(date)
date參數是任意可以代表日期的參數。如果date參數中包含Null,則返回Null。

DateDiff(”n”, CDate(”1998-8-3 5:30″), CDate(”1999-4-3 6:5″))
這裡第一個參數是時間間隔,”n”表示分鐘。也可以取其他單位,最小單位為秒。
可以使用DateDiff()函數。如:
DateDiff(”d”, BeginDate, EndDate)。
DateDiff函數實際是用裝修公司,裝修設計BeginDate - EndDate,如果EndDate > BeginDate,DateDiff返回負數。 DateDiff可以計算按日、時等單位計算時間差。

smileALin 發表在 痞客邦 留言(0) 人氣()

/**
 * @(#)HelloApplet.java
 *
 * HelloApplet Applet application
 *
 * @author
 * @version 1.00 2010/1/18
 */
 
import java.awt.*;
import java.applet.*;

public class HelloApplet extends Applet {
    
    public void init() {
    }

    public void paint(Graphics g) {
        
        g.drawString("Welcome to Java!!", 50, 60 );
        
    }
}

未命名.PNG

 

<html>
    <head>
    </head>
    <body bgcolor="000000">
        <center>
            <applet
                code    = "HelloApplet.class"
                width    = "500"
                height    = "300"
                >
            </applet>
        </center>
    </body>
</html>

smileALin 發表在 痞客邦 留言(0) 人氣()

from:http://webdesign.piipo.com/sql/sql_foreign_key

 

FOREIGN KEY 外鍵限制 (SQL FOREIGN KEY Constraint)

外鍵是一個(或多個)指向其它資料表中主鍵的欄位,它限制欄位值只能來自另一個資料表的主鍵欄位,用來確定資料的參考完整性 (Referential Integrity)。

讓我們簡單了解一下什麼是外鍵...

這是一個客戶資料表「customers」:

C_Id Name City Address Phone
1 張一 台北市 XX路100號 02-12345678
2 王二 新竹縣 YY路200號 03-12345678
3 李三 高雄縣 ZZ路300號 07-12345678


而這是客戶訂單的資料表「orders」:

O_Id Order_No C_Id
1 2572 3
2 7375 3
3 7520 1
4 1054 2


在這裡我們會想有一個限制,就是在客戶訂單資料表中的客戶,都一定要在「customers」資料表中存在。所以我們需要在「orders」資料表中設定 一個外鍵,再將此外鍵指向「customers」資料表中的主鍵,以確定所有在「orders」資料表中的客戶都存在於「customers」資料表中, 才不會有任何幽靈訂單的出現...。

FOREIGN KEY Constraint

假設我們要將「customer」資料表中的「C_Id」欄位設為外鍵:

在建立資料表同時 - CREATE TABLE...
MySQL

CREATE TABLE orders
(
O_Id INT NOT NULL,
Order_No INT NOT NULL,
C_Id INT,
PRIMARY KEY (O_Id),
FOREIGN KEY (C_Id) REFERENCES customers(C_Id)
);
如果想在MySQL資料庫中使用外鍵限制,必需讓資料表使用InnoDB儲存引擎。


SQL Server / Oracle / MS Access

CREATE TABLE orders
(
O_Id INT NOT NULL PRIMARY KEY,
Order_No INT NOT NULL,
C_Id INT FOREIGN KEY (C_Id) REFERENCES customers(C_Id)
);


替外鍵命名與多欄位的外鍵
MySQL / SQL Server / Oracle / MS Access

CREATE TABLE orders
(
O_Id INT NOT NULL PRIMARY KEY,
Order_No INT NOT NULL,
C_Id INT,
CONSTRAINT fk_Cusomer_Id FOREIGN KEY (C_Id) REFERENCES customers(C_Id)
);
我們限制C_Id為外鍵,CONSTRAINT後面接著的即是此外鍵的名稱,另一個重點是記得customers資料表中需將C_Id設為主鍵。


更改資料表限制 - ALTER TABLE...
MySQL / SQL Server / Oracle / MS Access

ALTER TABLE orders
ADD FOREIGN KEY (C_Id) REFERENCES customers(C_Id);


替外鍵命名與多欄位的外鍵
MySQL / SQL Server / Oracle / MS Access

ALTER TABLE orders
ADD CONSTRAINT fk_Cusomer_Id FOREIGN KEY (C_Id) REFERENCES customers(C_Id);


移除資料表限制 - ALTER TABLE...
MySQL

ALTER TABLE orders
DROP FOREIGN KEY fk_Cusomer_Id;


SQL Server / Oracle / MS Access

ALTER TABLE orders
DROP CONSTRAINT fk_Cusomer_Id;

 

smileALin 發表在 痞客邦 留言(0) 人氣()

為了解決輸入法只有英文的問題(fedora core2):

打開終端機,

輸入:im-switch (空白) -m  xim

按enter,

然後登出再重新登入系統就好了,

每個身分都要這樣做,

這樣那個身分才能解決這個困擾。

smileALin 發表在 痞客邦 留言(0) 人氣()

內容來自網路:http://tw.knowledge.yahoo.com/question/question?qid=1306052201809
如題,如何去先判斷欄位是否有填寫值或文字。並可顯示或彈跳出欄位內未填寫。

例如,我要寫一新增功能的php程式,程式確定可執行,但能在按按鈕送出資料庫前,先判斷所有欄位或單一位欄是否有填寫,均填寫後,按送出按鈕程式才會確定將欄位內的值或文字,送到資料庫。?

 

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

請先將form標籤命名及設定送出事件為chk(),

如: <form action="" method="post" name="send" onsubmit="return chk();">

而表單內的需要填寫的欄位皆需命名,

而接下來再<script></script>內定義chk()的函式,

要得到表單內欄位的值的javascript寫法為:

document.表單名.欄位名.value

如果名為send的account的欄位為空值的javascript語法為:

if(document.send.account.value=='')

而警示視窗的語法為:

alert('警示文字');

如果要將焦點設定在名為send的account的欄位為空值的javascript語法為:

document.send.account.focus();

若某欄位為空值,

最後要傳回false阻擋表單送出,

若所有的欄位的填寫完畢後,

傳回true讓表單送出。

示範程式碼如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta http-equiv="content-type" content="text/html; charset=big5">
  <title>test</title>
  <script type="text/javascript">
  function chk(){
    if(document.send.account.value==''){
      alert('帳號未填');
      document.send.account.focus();
      return false;
    }
    if(document.send.pass.value==''){
      alert('密碼未填');
      document.send.pass.focus();
      return false;
    }
    return true;
  }
  </script>
</head>
<body>
<form action="" method="post" name="send" onsubmit="return chk();">
帳號<input type="text" name="account" size="5" />
<br />
密碼<input type="password" name="pass" size="5" />
<br />
<input type="submit" value="送出" />
</form>
</body>
</html>

註:

因為JavaScript在Mozilla Firefox是可以被關閉的,

若使用者存心搗亂,

將選項的「使用javascript」的勾選取消,

您辛苦寫的JavaScript就完全無效了!

而您最好在php程式碼再將資料過濾一次,

如:

$account=$_POST['account'];

$pass=$_POST['pass'];

if(isset($account) && isset($pass)){

    //在此處理$account與$pass

}else{

    //輸出錯誤字串

}

 

smileALin 發表在 痞客邦 留言(2) 人氣()

1.form:取得表單資料

request.form("表單變數名稱")

2.QueryString:取得超連結的參數資料,比如:abc.asp?color="pink",color就是參數名稱,pink就是該參數名稱的資料內容。

例: response.write  request.querystring("color"),就會把pink的字眼輸出到螢幕上。

3.TotalBytes:計算瀏覽器送到伺服器的位元數。

request.totalbytes

3.ServerVariables:讀取瀏覽器的環境變數。

request.servervariables("環境變數")

環境變數:

content_length、date_gmt等等

 參考:<學會網站互動程式設計asp 陳姵妤著>

 

smileALin 發表在 痞客邦 留言(0) 人氣()

1.write:將訊息輸出到瀏覽器畫面

response.write "字串" & 變數

2.AppendToLog:記錄字串到伺服器的登錄檔中,可追蹤及分析使用記錄。

response.appendtolog "字串"

3.redirect:轉址功能,必須寫在所有資料被輸出到網頁之前,不然會出錯。

response.redirect  " http://tw.yahoo.com "

4.flush和buffer和clear:都是跟緩衝區處理有關

5.end:停止,之後的程式碼不執行,將結果傳回網頁。

response.end

6.CacheControl:允許將asp處理的結果放在proxy代理伺服器上,如果使用者的瀏覽器有設定proxy,可加快瀏覽者瀏覽同一個網頁的速度。

response.cachecontrol=public/private

7.CharSet:必須寫在html標籤之前。讓瀏覽器知道此網頁使用的語系,比如:big5(繁體中文)。

response.charset=語系

8.Expires:設定存放在瀏覽端的瀏覽器快取區中的時間,以分鐘為單位。

response.expires=分鐘數

9.IsClientConnected:由傳回值判斷瀏覽器是否和伺服器連線中,true:連線,false:斷線。

response.isclientconnected

參考:<學會網站互動程式設計asp 陳姵妤著>

 

 

smileALin 發表在 痞客邦 留言(0) 人氣()

這篇文章教你在一個小時裏如何搞定asp,非常實用,對於想學asp的同學可能有所幫助!!
一、語法
<1>語句
<%...........%>
<2>定義變數dim語句
<%
dim a,b
a=10
b=”ok!”
%>
注意:定義的變數可以是數值型,也可以是字元或者其他類型的
<3>簡單的控制流程語句
1. if 條件1 then
語句1
elseif 條件2 then
語句2
else
語句3
end if
2.while 條件
語句
wend
3.for count=1 to n step m
語句1
exit for
語句2
next
二.asp資料庫簡單*作教程
<1>.資料庫連接(用來單獨編制連接檔conn.asp)
<%
set conn = server.createobject(adodb.connection)
conn.open driver={microsoft access driver (*.mdb)}; dbq= & server.mappath(\bbs\db1\user.mdb)
%>
(用來連接bbs\db1\目錄下的user.mdb資料庫)
<2>顯示資料庫記錄
原理:將資料庫中的記錄一一顯示到用戶端流覽器,依次讀出資料庫中的每一條記錄
如果是從頭到尾:用迴圈並判斷指針是否到末 使用: not rs.eof
如果是從尾到頭:用迴圈並判斷指針是否到開始 使用:not rs.bof
 (包含conn.asp用來打開bbs\db1\目錄下的user.mdb資料庫)
<%
set rs=server.createobject(adodb.recordset) (建立recordset物件)
sqlstr=select * from message ---->(message為資料庫中的一個資料表,即你要顯示的資料所存放的資料表)
rs.open sqlstr,conn,1,3 ---->(表示打開資料庫的方式)
rs.movefirst ---->(將指標移到第一條記錄)
while not rs.eof ---->(判斷指針是否到末尾)
response.write(rs(name)) ---->(顯示資料表message中的name欄位)
rs.movenext ---->(將指標移動到下一條記錄)
wend ---->(迴圈結束)
rs.close
conn.close 這幾句是用來關閉資料庫
set rs=nothing
set conn=nothing
%>
其中response對象是<a rel="nofollow" target="_blank" href='http://school.enet.com.cn/eschool/includes/zhuanti/shuyu/info/1/02/1684.shtml' target='
>增加資料庫記錄
增加資料庫記錄用到rs.addnew,rs.update兩個函數
 (包含conn.asp用來打開bbs\db1\目錄下的user.mdb資料庫)
<%
set rs=server.createobject(adodb.recordset) (建立recordset物件)
sqlstr=select * from message ---->(message為資料庫中的一個資料表,即你要顯示的資料所存放的資料表)
rs.open sqlstr,conn,1,3 ---->(表示打開資料庫的方式)
rs.addnew 新增加一條記錄
rs(name)=xx 將xx的值傳給name欄位
rs.update 刷新資料庫
rs.close
conn.close 這幾句是用來關閉資料庫
set rs=nothing
set conn=nothing
%>
<4>刪除一條記錄
刪除資料庫記錄主要用到rs.delete,rs.update
 (包含conn.asp用來打開bbs\db1\目錄下的user.mdb資料庫)
<%
dim name
name=xx
set rs=server.createobject(adodb.recordset) (建立recordset物件)
sqlstr=select * from message ---->(message為資料庫中的一個資料表,即你要顯示的資料所存放的資料表)
rs.open sqlstr,conn,1,3 ---->(表示打開資料庫的方式)
while not rs.eof
if rs.(name)=name then
rs.delete
rs.update 查詢資料表中的name欄位的值是否等於變數name的值xx,如果符合就執行刪除,
else 否則繼續查詢,直到指針到末尾為止
rs.movenext
emd if
wend
rs.close
conn.close 這幾句是用來關閉資料庫
set rs=nothing
set conn=nothing
%>
<5>關於資料庫的查詢
(a) 查詢欄位為字元型
<%
dim user,pass,qq,mail,message
user=request.form(user)
pass=request.form(pass)
qq=request.form(qq)
mail=request.form(mail)
message=request.form(message)
if trim(user)&x=x or trim(pass)&x=x then (檢測user值和pass值是否為空,可以檢測到空格)
response.write(註冊資訊不能為空)
else
set rs=server.createobject(adodb.recordset)
sqlstr=select * from user where user='&user&' (查詢user資料表中的user欄位其中user欄位為字元型)
rs.open sqlstr,conn,1,3
if rs.eof then
rs.addnew
rs(user)=user
rs(pass)=pass
rs(qq)=qq
rs(mail)=mail
rs(message)=message
rs.update
rs.close
conn.close
set rs=nothing
set conn=nothing
response.write(註冊成功)
end if
rs.close
conn.close
set rs=nothing
set conn=nothing
response.write(註冊重名)
%>
(b)查詢欄位為數字型
<%
dim num
num=request.form(num)
set rs=server.createobject(adodb.recordset)
sqlstr=select * from message where id=&num (查詢message資料表中id欄位的值是否與num相等,其中id為數字型)
rs.open sqlstr,conn,1,3
if not rs.eof then
rs.delete
rs.update
rs.close
conn.close
set rs=nothing
set conn=nothing
response.write(刪除成功)
end if
rs.close
conn.close
set rs=nothing
set conn=nothing
response.write(刪除失敗)
%>
<6>幾個簡單的asp物件的講解
response物件:伺服器端向用戶端發送的資訊物件,包括直接發送資訊給流覽器,重新定向url,或設置cookie值
request對象:用戶端向伺服器提出的請求
session物件:作為一個總體變數,在整個站點都生效
server物件:提供對伺服器上方法和屬性的訪問
(a) response物件的一般使用方法
比如:
<%
resposne.write(hello, welcome to asp!)
%>
在用戶端流覽器就會看到 hello, welcome to asp! 這一段文字
<%
response.redirect(
www.sohu.com)
%>
如果執行這一段,則流覽器就會自動連接到 “搜狐” 的網址
關於response物件的用法還有很多,大家可以研究研究
request物件的一般使用方法
比如用戶端向伺服器提出的請求就是通過request物件來傳遞的列如 :你在申請郵箱的所填寫的個人資訊就是通過該物件來將你所填寫的資訊傳遞給伺服器的
比如:這是一段表單的代碼,這是提供給客戶填寫資訊的,填寫完了按“提交”傳遞給request.asp檔處理後再存入伺服器資料庫
<form target="_blank" name="form1" method="post">
<p>
<input type="text" name="user">
</p>
<p>
<input type="text" name="pass">
</p>
<p>
<input type="submit" name="submit" value="提交">
</p>
</form>
那麼request.asp該如何將其中的資訊讀入,在寫入資料庫,在這裏就要用到
request物件了,下面我們就來分析request.asp的寫法
<%
dim name,password (定義user和password兩個變數)
name=request.form(“user”) (將表單中的user資訊傳給變數name)
password=request.form(“pass”) (將表單中的pass資訊傳給變數password)
%>
通過以上的幾句代碼我們就將表單中的資料讀進來了,接下來我們要做的就是將
資訊寫入資料庫了,寫入資料庫的方法上面都介紹了,這裏就不一一復
述了。

原文出處:http://www.wangchao.net.cn/bbsdetail_582615.html

smileALin 發表在 痞客邦 留言(0) 人氣()

What u gonna do what u gonna do no
What u gonna do what u gonna do

No 直走不回頭的單行道 走一個你也許孤獨
再混亂的長髮擋不住專注的速度 yeah

沒錯 不止一次被說服 要適應這世界的 cool
卻想 在冷淡的人們中 綻放溫暖人心的笑容
不准別人的在乎 偶爾放下大人的武裝就解了脫 孩子氣的我也很不錯
不要被誰定位被糊塗 這樣下了決定的自己 忽然看見 躲在雲後那一道彩虹

#不妥協了 be my better girl keep on moving 走我想走的路
 不怕一事無成要享受起伏 這生命才不孤獨
 愛過我的人們都給我溫度 已失去的所有就讓它都 through
 勇敢去愛未來的人會幸福 不服輸 be my better girl

生活 重複著疑慮顧忌 學不會完美的態度
鬆開 搖擺不定的所有 又何嘗不是種刺激
不要聽誰說的書 偶爾放下大人的姿態 so crazy 搖開窗吹風也很不錯
不用誰來判斷或結束 這樣只做自己的自己 抬頭看見 陽光微笑陪一道彩虹

Repeat #

不妥協了 be my better girl keep on moving 擁抱我的在乎
不怕一事無成要享受起伏 就算要有點殘酷
愛過我的人們都給我溫度 等待我的陽光不會被辜負
勇敢去愛未來的人會幸福 Come on now be my better girl girl girl girl

smileALin 發表在 痞客邦 留言(0) 人氣()

1 2