Recommandé: comparaison entre la technologie ASP et le PHP, CGI, JSP et d'autres technologies À l'heure actuelle, les trois langages Web dynamiques les plus couramment utilisés sont ASP (Pages de serveurs actifs), JSP (Javaserver Pages) et PHP (Hypertext Prerocesseur). Introduction ASP Nom complet Les pages du serveur actif sont un environnement de développement côté serveur Web.
Après avoir lu de nombreuses introductions, je sais que l'efficacité d'exécution de Set Rs = Conn.excute (SQL) est beaucoup plus élevée que celle de Rs.Open SQL, Conn, 1,1, mais la méthode d'exécution de Set Rs = Conn.Exécute (SQL) a également de nombreux lacunes. Tout d'abord, il n'a pas d'attributs de pagination, tels que Rs.PageSize, Rs, Absolutepage et d'autres attributs. De cette manière, bien que Set Rs = Conn.excute (SQL) soit exécuté plus rapidement de cette manière, il ne peut pas paginer de manière ordinaire. Que dois-je faire? ?
Le lendemain, j'ai vérifié les informations en ligne et j'ai soudainement réfléchi si je pouvais mentionner les données requises à un tableau, puis paginer le tableau? Tout d'abord, j'ai retiré les résultats du jeu de requêtes RS = Conn.excute (SQL) via Rs.GetRows () et je l'ai joint à un tableau. J'ai donc cherché des messages paginés sur chaque site Web. Bien que j'aie trouvé de nombreux messages paginés efficaces (y compris les procédures stockées, etc.), j'ai constaté que toutes devaient être exécutées via SQL, c'est-à-dire lors de la tournage de la page, j'avais également besoin d'exécuter des instructions SQL. À l'heure actuelle, j'étais étourdi, et la seule optimisation n'était que des déclarations SQL. Je n'avais vraiment pas d'autre choix que de travailler dur sur moi-même! Enfin, un brouillon de la pagination du tableau a été achevé. Le code n'était pas très complet. Laissez tout le monde l'étudier ensemble! Le code est le suivant:
Il y a d'abord une page d'index.asp de requête:
| <html xmlns = http: //www.w3.org/1999/xhtml> <adal> <meta http-equiv = contenu contenu contenu = text / html; charse = gb2312 /> <Title> UNT intitulé Document </Title> </ head> <body> <form id = searchform name = searchform méthode = post-action = search.asp? act = cha> <div class = input> <input id = keyword onMouseOver = this.focus () title = Recherchez rapidement votre enregistrement de message onfocus = this.select () class = dans maxLength = 35 name = keyword /> <select style = width: 120px; margin-top: -25px name = channelId> <Valeur d'option = K2> Message </opoption> <Valeur d'option = K1> Contenu du message </opoption> </lect> <Input id = search_btn type = soumettre la valeur = requête> </div> </ form> </docy> </html> Code de recherche.asp: <html xmlns = http: //www.w3.org/1999/xhtml> <adal> <meta http-equiv = contenu contenu contenu = text / html; charse = gb2312 /> <Title> UNT intitulé Document </Title> </ head> <body> <% Si demande.QueryString (ACT) = CHA alors search_type = request.form (ChannelId) Keywords = request.form (mot-clé) Si search_type = k1 alors 'Recherchez en fonction du contenu du message sql = select * from gbook_rec où g_content like '% & keywords &%' Elseif search_type = k2 alors 'Si search_type = k2 alors' Rechercher par le message sql = select * from gbook_rec où g_name like '% & keywords &%' Autre réponse. terminer si SET RS = Conn.Execute (SQL) Si Rs.Eof et Rs.Bof alors %> <div class = search> L'enregistrement que vous voulez n'a pas été trouvé! </div> <% réponse. Autre areults = Rs.Getrows () 'Sortez les données et mettez-les dans la ligne du tableau application (données) = aresults Définir RS = rien Conn.close 'Fermez la base de données Terminer si Terminer si aresults = application (données) Dim I, Row, PageSize, Epage, Numb, PageCount, Fenye Numb = Ubound (Aresults, 2) 1 'Nombre total de lignes d'enregistrements PageSize = 2 'Nombre de page Si Numb Mod PageSize = 0 alors 'jugez le nombre total de pages PageCount = int (Numb / PageSize) Autre pageCount = int (Numb / PageSize) 1 Terminer si épisode = request.Querystring (page) Si epage = alors epage = 1 Pour i = (epage-1) * PageSize to Epage * pagesize-1 Si i> ubound (aresults, 2) ou i <0 alors sortez pour %> <div class = contenu> <ul> <li> Enregistrement <% = i 1%> </li> <li> Message: <% = aresults (1, i)%> </li> <li> Contenu: <% = aresults (2, i)%> </li> <li> Temps: <% = aresults (3, i)%> </li> <li> ip: <% = aresults (5, i)%> </li> </ul> </div> <% Suivant Si engourdi> PageSize alors Fenye = <a href = search.asp? Page = 1> Page d'accueil </a> Fenye = Fenye & <a href = search.asp? Page = & epage-1 & title = & epage-1 &> page précédente </a> Fenye = Fenye & <a href = search.asp? Page = & epage 1 & title = & epage 1 &> dernière page </a> Fenye = Fenye & <a href = search.asp? Page = & PageCount &> Dernière page </a> Fenye = Fenye & <br> Fenye = Fenye & Nombre total de pages et de pagect et, page actuelle et epage et, l'enregistrement total est: & Numb Réponse.WRITE FENYE Terminer si %> </docy> </html> |
Résumé: Je crois que le code ci-dessus n'a pas besoin d'être connecté à la base de données, à l'exception de la première requête, et elle est très utile pour enregistrer les ressources lorsque de grandes requêtes de données ou lorsqu'il y a un grand nombre de personnes qui se connectent! De plus, enregistrez le tableau de requête sur l'objet d'application et vous pouvez également déterminer ce que quelqu'un a interrogé en fonction de l'application (données) (nom d'utilisateur). Cependant, ce code est le premier modèle et il sera plus que suffisant pour l'améliorer à l'avenir! J'espère que tout le monde fera attention et le soutiendra, merci!
Télécharger le code de test
Partager: un code source de salle de chat simple gratuit Chat.html Ce qui suit est le contenu référencé: <html> <adread> <ititle> chat </title> </ head> <frameset wows = *, 100> &