แนะนำ: ASP เพื่อแก้ไขบันทึก บันทึกการปรับเปลี่ยน ASP: วัตถุประสงค์การเรียนรู้: เรียนรู้การดำเนินการพื้นฐานของฐานข้อมูล - ก่อนอื่นให้ดูที่รหัสของการแก้ไขบันทึก: (บันทึกเป็น Exam8.asp) % conn = server.createObject (adoDB.Connection) conn.open driver = {microsoft access driver ( *.mdb)}; dbq = เซิร์ฟเวอร์
#formattableid_0#
<html>
<head>
<title> รายการข่าวง่าย ๆ </title>
<ภาษาสคริปต์ = JavaScript>
-
// การควบคุม AJAX สามารถทำเป็นไฟล์แยกต่างหากและสะดวกสำหรับการโทรในสถานที่อื่น
ฟังก์ชั่น ajax ()
-
var xhrobj = null;
if (window.xmlhttprequest)
-
xhrobj = ใหม่ xmlhttprequest ();
-
อื่นถ้า (window.activexobject)
-
พยายาม{
xhrobj = new ActiveXObject (microsoft.xmlhttp);
-
จับ (E1)
-
พยายาม{
xhrobj = new ActiveXObject (msxml2.xmlhttp);
-
จับ (e2) {
พยายาม{
xhrobj = new ActiveXObject (msxml3.xmlhttp);
-
จับ (e3) {
การแจ้งเตือน (การสร้าง Ajax ล้มเหลว: +E3)
-
-
-
-
อื่น
-
การแจ้งเตือน (เบราว์เซอร์ที่ไม่ได้รับการยอมรับ);
-
กลับ xhrobj;
-
ฟังก์ชั่น $ (id)
-
ส่งคืนเอกสารทั้งหมด [id];
-
</script>
<ภาษาสคริปต์ = JavaScript Delfer>
var xhr = ใหม่ ajax ();
var page = 0;
ไอคอน var = 0; // จำนวนหน้าปัจจุบัน
var pagecount; // จำนวนหน้าทั้งหมด
count var = 0;
var pagecount = 0;
VAR PAGESIZE = 5; // จำนวนระเบียนที่แสดงต่อหน้า
var pp = 0;
var page = 0;
var dom = null;
ฟังก์ชั่น getlist (curpage)
-
ถ้า (pagecount! = 0)
-
Page = ParseInt ((curpage-1)/pagecount) +1;
}อื่น{
หน้า = 1
-
หน้า = curpage;
ถ้า (pp! = หน้า)
-
dom = null;
pp = หน้า;
xhr.open (รับ, data.asp? curpage =+pp, true);
xhr.onreadystatechange = $ callback;
XHR.Send (NULL);
-
อื่น
-
$ showlist ();
-
-
ฟังก์ชั่น $ callback ()
-
ถ้า (xhr.readystate == 1)
-
$ (จดหมายข่าว) .innerhtml = การเชื่อมต่อเซิร์ฟเวอร์;
-
อื่นถ้า (xhr.readystate == 2 || xhr.readystate == 3)
-
$ (จดหมายข่าว) .innerhtml = ข้อมูลการอ่าน;
-
อื่นถ้า (xhr.readystate == 4)
-
if (xhr.status == 200)
-
dom = xhr.responsexml;
$ showlist ();
-
-
-
ฟังก์ชั่น $ showlist ()
-
var html =;
รายการ var = dom.selectNodes (// item);
icon = dom.selectNodes (// item) .length; //ปริมาณ
count = dom.selectsingLenode (// data) .getAttribute (count); // จำนวนทั้งหมด
pagecount = parseint ((icount-1)/pagesize) +1;
pagecount = parseint ((count-1)/pagesize) +1;
startPosition = (page-1)*pagesize;
endPosition = (หน้า*pageSize)
ถ้า (endposition> นับ) endPosition = นับ
สำหรับ (var i = startposition; i <endposition; i ++)
-
html+= <div id = title> <a href =+รายการ [i] .lectsingLenode (htmlurl) .Text+>+รายการ [i]
SELECTSINGLENODE (HITS) .Text+</a> </div>;
-
$ (จดหมายข่าว) .innerhtml = html;
var statushtml = <a href = JavaScript: PreviousPage ()> หน้าก่อนหน้า </a> | <a href = JavaScript: NextPage ()> หน้าถัดไป </a>;
ถ้า (pagecount <= 10)
-
สำหรับ (var i = 1; i <= pagecount; i ++)
-
if (i == หน้า)
-
statushtml+= <b>+i+</b> & nbsp;
-
อื่น
-
statushtml+= <a href = javaScript: turnpage (+i+)>+i+</a> & nbsp;
-
-
-
อื่นถ้า (หน้า+10 <pagecount && pagecount> 10)
-
ถ้า (หน้า%10 == 0)
-
สำหรับ (var i = page-9; i <= หน้า+1; i ++)
-
if (i == หน้า)
-
statushtml+= <b>+i+</b> & nbsp;
-
อื่น
-
statushtml+= <a href = javaScript: turnpage (+i+)>+i+</a> & nbsp;
-
-
-
อื่นถ้า (หน้า % 10 == 1 && หน้า! = 1)
-
สำหรับ (var i = page-1; i <= หน้า+10; i ++)
-
if (i == หน้า)
-
statushtml+= <b>+i+</b> & nbsp;
-
อื่น
-
statushtml+= <a href = javaScript: turnpage (+i+)>+i+</a> & nbsp;
-
-
-
อื่นถ้า (หน้า <= 11)
-
สำหรับ (var i = 1; i <= 11; i ++)
-
if (i == หน้า)
-
statushtml+= <b>+i+</b> & nbsp;
-
อื่น
-
statushtml+= <a href = javaScript: turnpage (+i+)>+i+</a> & nbsp;
-
-
-
อื่น
-
สำหรับ (var i = (หน้า-(หน้า % 10)); i <= หน้า+(10- (หน้า % 10))+1; i ++)
-
if (i == หน้า)
-
statushtml+= <b>+i+</b> & nbsp;
-
อื่น
-
statushtml+= <a href = javaScript: turnpage (+i+)>+i+</a> & nbsp;
-
-
-
-
อื่นถ้า (หน้า+10> = pagecount && pagecount> 10)
-
ถ้า (หน้า%10 == 0)
-
สำหรับ (var i = page-9; i <= หน้า+1; i ++)
-
if (i == หน้า)
-
statushtml+= <b>+i+</b> & nbsp;
-
อื่น
-
statushtml+= <a href = javaScript: turnpage (+i+)>+i+</a> & nbsp;
-
-
-
อื่นถ้า (หน้า % 10 == 1 && หน้า! = 1)
-
สำหรับ (var i = page-1; i <= หน้า+9; i ++)
-
if (i == หน้า)
-
statushtml+= <b>+i+</b> & nbsp;
-
อื่น
-
statushtml+= <a href = javaScript: turnpage (+i+)>+i+</a> & nbsp;
-
-
-
-
document.getElementById (pagestatus) .innerhtml = statushtml;
-
ฟังก์ชั่นหน้าก่อนหน้า ()
-
ถ้า (หน้า> 1)
-
GetList (Page-1);
-
อื่น
-
การแจ้งเตือน (หน้าแรกแล้ว);
-
-
ฟังก์ชั่น NextPage ()
-
ถ้า (หน้า <pagecount)
-
getList (หน้า+1);
-
อื่น
-
การแจ้งเตือน (มาถึงหน้าสุดท้ายแล้ว);
-
-
ฟังก์ชัน Turnpage (P)
-
GetList (P);
-
getList (1);
</script>
</head>
<body>
<div id = จดหมายข่าว> </div>
<div id = pagestatus> </div>
</body>
</html>
สร้างไฟล์ data.asp
หมายเหตุ: ฉันใช้ฐานข้อมูลการเข้าถึงที่นี่ชื่อไลบรารีคือ data.mdb แน่นอนว่าสิ่งนี้สามารถกำหนดได้ด้วยตัวเอง ฟิลด์ในไลบรารีคือ ID (หมายเลขอัตโนมัติ), A, B, C และ D (ประเภทวันที่)
< %@ language = vbscript codepage = 936 %>
-
Response.cacheControl = ไม่มีแคช
Response.addheader Pragma ไม่มีแคช
Response.expires = -1
Response.expiresabsolute = Now-1
Response.contentType = text/xml
'ฐานข้อมูล SQL SET CONN = Server.CreateObject (ADODB.Connection)
'sconn = driver = {sql server}; server = (local); uid = **; pwd = **; ฐานข้อมูล = ***
'conn.open sconn
SET Conn = Server.CreateObject (ADODB.Connection)
file = server.mappath (data.mdb)
conn.open driver = {Microsoft Access Driver (*.mdb)}; & dbq = & file%>
<? XML เวอร์ชัน = 1.0 การเข้ารหัส = GB2312?>
-
Dim Ipagesize, RS, SSQL, ICURPAGE, IPRESIZE, ICOUNT, IPAGECOUNT
ICEPAGE = TRIM (request.QueryString (curpage))
ipagesize = ขนาดหน้า 500 '
ตั้งค่า rs = server.createObject (adodb.recordset)
'rs.open select count (id) จาก ca_news โดยที่สถานะ = 1, Conn, 1,1
Rs.Open Select Count (ID) จาก INFO, Conn, 1,1
icon = Rs (0) 'จำนวนระเบียนทั้งหมด
Rs.close
pagecount = int ((icount-1)/ipagesize) +1 'จำนวนหน้าทั้งหมด
ถ้า IcePage = จากนั้น
IcePage = 1
อื่น
ICEPAGE = CINT (ICURPAGE)
สิ้นสุดถ้า
ถ้า IcePage <1 แล้ว
IcePage = 1
สิ้นสุดถ้า
ถ้า iicurpage> ipagecount แล้ว iicurpage = ipagecount
IICURPAGE-1)*PAGESIZE
ถ้า idictize = 0 แล้ว
ssql = เลือก * จากคำสั่งซื้อข้อมูลโดย id desc
อื่น
'ssql = เลือก Top & ipagesize & id, ชื่อเรื่อง, postdate, hit, htmlurl จากข่าวที่สถานะ = 1 และ id ไม่ได้อยู่ใน (เลือก top & ipresize & id จากข่าวที่สถานะ = 1 คำสั่งซื้อ id) คำสั่งซื้อโดย id asc
SSQL = เลือก TOP & PAGESIZE & * จาก INFO ID ไม่ได้อยู่ใน (เลือก TOP & IPRESIZE & ID จากคำสั่งซื้อข้อมูลโดย ID DESC) คำสั่งซื้อโดย ID DESC
สิ้นสุดถ้า
Rs.Open SSQL, Conn, 1,1
-
<data count = <%= icon%> pagesize = <%= pageSize%> pagecount = <%= pagecount%>>
-
ในขณะที่ไม่ใช่ Rs.EOF
-
<item id = <%= rs (id)%>>
<title> & lt;! [cdata [<%= rs (a)%>]] & gt; </title>
<htmlurl> & lt;! [cdata [<%= rs (b)%>] & gt; </htmlurl>
<postdate> < %= dateValue (rs (d)) %> <//postdate>
<hit> < %= trim (rs (c)) %> </hits>
</item>
-
Rs.Movenext
ใช้
-
</data>
-
Rs.close
ตั้งค่า rs = ไม่มีอะไร
conn.close
ตั้งค่า conn = ไม่มีอะไร
-
แบ่งปัน: บันทึกการสอบถาม ASP ASP Query Records: วัตถุประสงค์การเรียนรู้: เรียนรู้การดำเนินการพื้นฐานของฐานข้อมูล - ในวันที่สี่ของบันทึกการสืบค้นเราใช้โปรแกรมต่อไปนี้: เราสอบถามบันทึกทั้งหมด แต่เมื่อเราต้องการแก้ไขและลบระเบียนเราไม่สามารถเป็นบันทึกทั้งหมดเราต้องเรียนรู้ที่จะดึงบันทึกที่เหมาะสม ก่อนอื่นดูคำสั่ง: a = aaa b = 1111110 exec = select * จากแขก