Recomendado: Comparación entre tecnología ASP y PHP, CGI, JSP y otras tecnologías En la actualidad, los tres lenguajes web dinámicos más utilizados son ASP (Páginas de servidor Active), JSP (páginas Javaserver) y PHP (preprocesador de hipertexto). Introducción ASP Nombre completo Páginas Active Server es un entorno de desarrollo del lado del servidor web.
Después de leer muchas presentaciones, sé que la eficiencia de ejecución de SET RS = Conn.Execute (SQL) es mucho mayor que la de Rs.open SQL, Conn, 1,1, pero el método de ejecución de SET RS = Conn.execute (SQL) también tiene muchas deficiencias. En primer lugar, no tiene atributos de paginación, como Rs.Pagesize, RS, AbsoluTepage y otros atributos. De esta manera, aunque establece RS = Conn.Execute (SQL) se ejecuta más rápido de esta manera, no puede paginar de la manera ordinaria. ¿Qué tengo que hacer? ?
Al día siguiente, revisé la información en línea y de repente pensé si podía mencionar los datos requeridos a una matriz y luego paginar la matriz. Primero, saqué los resultados del conjunto de consultas rs = conn.execute (sql) a través de rs.getrows () y lo adjunté a una matriz. Así que busqué publicaciones pagadas en cada sitio web. Aunque encontré muchas publicaciones pagadas eficientes (incluidos los procedimientos almacenados, etc.), descubrí que todas ellas necesitaban ser ejecutadas a través de SQL, es decir, al girar la página, también necesitaba ejecutar declaraciones SQL. En este momento, estaba mareado, y la única optimización era solo declaraciones SQL. ¡Realmente no tuve más remedio que trabajar duro conmigo mismo! Finalmente, se completó un borrador de la paginación de la matriz. El código no estaba muy completo. ¡Deje que todos lo estudien juntos! El código es el siguiente:
Primero hay una página de consulta index.asp:
| <html xmlns = http: //www.w3.org/1999/xhtml> <Evista> <meta http-oquiv = content-type content = text/html; Charset = GB2312 /> <title> un documento titulado </title> </ablo> <Body> <Form ID = SearchForm name = SearchForm Method = Post Action = Search.asp? Act = Cha> <Div class = input> <input id = palabra clave onMouseOver = this.focus () title = Busque rápidamente el registro de su mensaje OnFocus = this.select () class = en maxLength = 35 name = Keyword /> <select style = width: 120px; margin-top: -25px name = canalID> <opción valor = k2> mensaje </opción> <opción valor = k1> contenido del mensaje </opción> </select> <Input id = search_btn type = enviar value = Query> </div> </form> </body> </html> Search.asp Code: <html xmlns = http: //www.w3.org/1999/xhtml> <Evista> <meta http-oquiv = content-type content = text/html; Charset = GB2312 /> <title> un documento titulado </title> </ablo> <Body> <% If request.querystring (ACT) = cha entonces Search_type = request.form (canalID) Palabras clave = request.form (palabra clave) Si search_type = k1 entonces 'busca de acuerdo con el contenido del mensaje SQL = SELECT * de GBOOK_REC donde G_Content Like '%& Keywords &%' Elseif search_type = k2 entonces 'if search_type = k2 entonces' buscar por el mensaje SQL = SELECT * de GBOOK_REC donde G_Name Like '%& Keywords &%' Demás respuesta. final si Establecer rs = conn.execute (SQL) Si Rs.Eof y Rs.Bof entonces %> <div class = search> ¡El registro que deseas no fue encontrado! </div> <% respuesta. Demás aresults = rs.getrows () 'Saque los datos y póngalos en la fila de matriz Aplicación (Data) = ARESULTS Establecer RS = nada conn.close 'cierre la base de datos Final si Final si aresults = aplicación (datos) Dim I, Row, PageSize, Epage, Número, Pagecount, Fenye Numb = Ubound (AResults, 2) 1 'Número total de filas de registros PageSize = 2 'Número de por página Si NUMB mod PageSize = 0, entonces 'juzga el número total de páginas PageCount = int (NUMB/PAGESIZE) Demás PageCount = int (NUMB/PAGEAZE) 1 Final si episodio = request.querystring (página) Si Epage = entonces Epage = 1 Para i = (Epage-1)*PageSeSe to Epage*PageSize-1 Si i> Ubound (aresults, 2) o i <0 entonces salga para %> <Div class = Content> <ul> <li> registro <%= i 1%> </li> <li> Mensaje: <%= aresults (1, i)%> </li> <li> Contenido: <%= aresults (2, i)%> </li> <li> Tiempo: <%= aresults (3, i)%> </li> <li> ip: <%= aresults (5, i)%> </li> </ul> </div> <% Próximo Si entumece> Pageize entonces fenye = <a href = search.asp? Page = 1> Página de inicio </a> fenye = fenye & <a href = search.asp? Page = & Epage-1 & title = & Epage-1 &> Página anterior </a> fenye = fenye & <a href = search.asp? Page = & Epage 1 & title = & Epage 1 &> Última página </a> fenye = fenye & <a href = search.asp? Page = & PageCount &> Última página </a> Fenye = Fenye & <br> fenye = fenye y número total de páginas y pagecount y, página actual y epageo y, el registro total es: y entumecido Respuesta. Escribe Fenye Final si %> </body> </html> |
Resumen: Creo que el código anterior no necesita estar conectado a la base de datos, excepto la primera consulta, ¡y es muy útil para ahorrar recursos cuando se consultan los datos grandes o cuando hay una gran cantidad de personas que se conectan! Además, guarde la matriz de consulta en el objeto de aplicación, y también puede determinar qué ha consultado alguien según la aplicación (datos) (nombre de usuario). Sin embargo, este código es el primer modelo y será más que suficiente para mejorarlo en el futuro. Espero que todos presten atención y lo apoyen, ¡gracias!
Descargar el código de prueba
Compartir: un código fuente de sala de chat simple gratuito chat.html El siguiente es el contenido referenciado: <html> <adebil> <title> chat </title> </head> <frameset shows =*, 100> &