На самом деле AJAX — это не то, чего можно добиться, просто написав JS. У вас все равно должен быть определенный опыт программирования. В противном случае, даже если вы его напишете, идея не будет ясна, и вы не будете знать, с чего начать, когда захотите сделать. изменения в будущем. Итак, после того, как я ненадолго познакомился с объектно-ориентированным программированием, я почувствовал, что добиться успеха в AJAX действительно непросто. Почему я упомянул AJAX, когда писал руководство по разбиению на страницы ASP? больше попрактикуйтесь в важности структуры в процессе программирования.
Кроме того, многие друзья испытывают глубокие чувства к пейджингу, поэтому они никогда не осмеливались его трогать. Они либо используют компоненты, написанные другими людьми, либо модифицируют чужие вещи, я глубоко чувствую, что если вы хотите быстро разработать. проект, я считаю, что .net — очень отличная платформа. Поскольку он жестко контролируется, новички не могут проникнуться идеей программирования и вообще не могут почувствовать программирование, как если бы они были строительными блоками. Иногда вам все же нужно практиковать низкоуровневые вещи, чтобы ваши личные технические способности. можно улучшить. Станьте лучше. Я не хочу быть ассемблером, который может использовать только .NET.
Хорошо, вот исходный код пейджинга ASP для всех. Он подробно прокомментирован и в целом понятен.
Поскольку это первое руководство, я начну с самого простого. Я напрямую использую AbsolutePage для определения текущей страницы, поэтому не использую более сложные методы курсора, такие как MoveFirst, а также использую раскрывающиеся поля выбора для постраничного просмотра. Я подожду следующего урока. Я напишу еще один расширенный метод разбиения на страницы, предоставляющий метод перехода на десять страниц назад, возврата на десять страниц и отображения только текущей группы из десяти страниц.
Хотя ASP является устаревшей вещью, поскольку его можно написать с использованием JS, я считаю, что при выполнении ДЕМО-проекта использовать ASP удобнее, чем .NET или JAVA, поскольку не требуется устанавливать огромную среду. Просто настройте ее. Если вам действительно нужно разработать масштабный проект, я обязательно буду использовать .NET или JAVA, потому что это повлечет за собой проблемы с эффективностью.
Скопируйте код кода следующим образом:
<%@LANGUAGE=КОДОВАЯ СТРАНИЦА JAVASCRIPT=936%>
<%
//Определяем оператор подключения к базе данных
var connstring = Provider=Microsoft.Jet.OLEDB.4.0;Источник данных=
+Server.MapPath(база данных/vote.mdb);
//Создаем запрос к базе данных rs
var rs = Server.CreateObject(ADODB.Recordset)
// метод подключения rs
rs.ActiveConnection = строка подключения
//оператор запроса rs (запрос в порядке, обратном времени отправки пользователем)
rs.Source = выбрать * из пользователей, упорядоченных по времени использования DESC
//Определяем режим запроса к базе данных
rs.CursorType = 3
rs.CursorLocation = 3
rs.LockType = 1
//Определяем объем данных, отображаемых на каждой странице
rs.PageSize = 10
//Открываем соединение с базой данных
rs.Open()
//Определяем общее количество записей базы данных, общее количество страниц и URL-путь
количество переменных, pagecos, thisUrl
количество = rs.RecordCount
pagecos = rs.PageCount
thisUrl = Request.ServerVariables(URL)
//Выполнить, если курсор находится в таблице
if(!rs.EOF || !rs.BOF){
//Выполнить, если параметр страницы URL-адреса не пуст
если(Запрос(страница).Count!= 0){
//Определяем строку ссылки по умолчанию: первая страница, последняя страница, предыдущая страница, следующая страница
//Значение страницы URL (указанная текущая страница), текущая страница, текущее количество данных, отображаемых на каждой странице
var defaltStr,firstpage,lastpage,prepage,nextpage,pages,nowPage,nowSize
defaltStr = '<a href='+thisUrl+'?page='
первая страница = defaltStr+'1>Домашняя страница</a>'
lastpage = defaltStr+pagecos+'>Последняя страница</a>'
страницы = Запрос (страница)
//Если это на первой странице
//Главная страница, предыдущая страница не является ссылкой
если(страниц <= 1){
рс.АбсолютеПейдж = 1;
первая страница = 'Домашняя страница'
prepage = 'предыдущая страница'
следующая страница = defaltStr+'2>Следующая страница</a>'
//Если это на последней странице
//Последняя страница, следующая страница не является ссылкой
}иначе если(страницы >= pagecos){
rs.AbsolutePage = pagecos;
prepage = defaltStr+(pagecos-1)+'>Предыдущая страница</a>'
последняя страница = 'последняя страница'
следующая страница = 'следующая страница'
}еще{
rs.AbsolutePage = страницы
prepage = defaltStr+(Number(pages)-1)+'>Предыдущая страница</a>'
следующая страница = defaltStr+(Число(страниц)+1)+'>Следующая страница</a>'
}
}
nowPage = rs.AbsolutePage
nowSize = rs.PageSize
//Если он находится на последней странице и количество отображаемых данных не равно количеству данных, отображаемых на каждой странице
//Поскольку последняя страница не может быть в точности равна объему данных, отображаемых на каждой странице каждый раз
//Поэтому вам нужно определить неравный метод
if(nowPage >= pagecos && (pagecos*rs.PageSize)%counts != 0){
nowSize = count%rs.PageSize
}
%>
<ширина таблицы=100% граница=0 cellpacing=0 cellpadding=0 class=userinfo>
<тр>
<td align=center>
<!--Показать домашнюю страницу, предыдущую страницу-->
<%=первая страница%> <%=предварительная страница%>
Перейдите к <select onchange=location.href='<%=thisUrl%>?page='+this.value>
<%
//Пейджинг основан на отображении цикла
for(var num=1; num<=pagecos; num++){
если (nowPage == число) {
%>
<значение опции=<%=num%> selected=selected><%=num%></option>
<%
}еще{
%>
<значение опции=<%=num%>><%=num%></option>
<%
}
}
%>
</выбрать> страница
<!--Показать следующую страницу, последнюю страницу-->
<%=следующая страница%> <%=последняя страница%>
<!--Отображение номера текущей страницы, общего количества страниц, общего количества записей и количества данных, отображаемых на каждой странице-->
Всего записей страницы <%=nowPage%> / <%=pagecos%> <%=counts%> / <%=rs.PageSize%>
</td>
</tr>
<%
//Содержимое отображается в цикле
for(var i=1;i<=nowSize;i++){
%>
<тр>
<td><span>IP-адрес пользователя:</span><%=rs(usip)%></td>
</tr>
<тр>
<td><span>Предложение:</span><%=rs(us1)%></td>
</tr>
<тр>
<td><span>Время отправки:</span><%=rs(usetime)%></td>
</tr>
<%
//Курсор базы данных перемещается к следующей записи
rs.MoveNext();
}
%>
</таблица>
<%
//Если курсор базы данных находится не в столбце базы данных
}еще{
Response.Write(Нет информации о пользователе!)
}
//Закрываем соединение с базой данных
rs.Close()
%>