begin process at 2010 07 31 04:44:53
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Divers

 > PAGINATION HORIZONTALE ASP(JSCRIPT)-ACCESS COMPLÈTE

PAGINATION HORIZONTALE ASP(JSCRIPT)-ACCESS COMPLÈTE


 Information sur la source

 Description

Bon, j'avai besoin d'ajouter une pagination dans une page Web. Le problème c'était que les

scripts sur le net propose soit pagination avec affichage verticale des records ou affichage

horizontale des données mais sans pagination.
J'ai téléchargé deux scripts italiens, un pour la pagination, un autre pour l'affichage

horizontale et un script espagnol. J'ai assemblé le tous, ainsi qu'introduire des modifications

et l'ajout des trucs pour que le script soît le plus complet possible.

Ce script permet de paginer (interfaçage) des records d'une base de données access dans une

table dont les records seront affichés horizontalement, nombre des records total, les records

affichés ex: images [1-9]sur un total de 30, des numéros et les termes "précédent" "suivant"

pour la navigation vers les records suivants et précédents, le record actuel n'est plus afiché

en tant que lien. En plus aller directement au premier ou dernier record. Les termes "suivant"

et "précédent" sont désactivés s'ils sont pas nécessaires alors que les termes "prmier" et

"dernier" ne sont activés que si on ai à 2 records premiers ou finals respectivement et ils ne seront plus du tout affichés si le nombre totale des pages et de 2 seulement.

Un effet de style onmouseover sur les cellules et la possiblité d'ouvrir un popup pour élargir

dedans une image par éxemple et finallement apparition d'infos bulle pour montrer le nom de l'image extrait de la database.

Dans notre éxemple, affichage en trois dans chaque ligne et neuf dans chaque page

Important: Si vous changez le nombre d'images que doit être affiché dans chaque page ou n'importe type de données dans:
Mostra.PageSize = 9; le même changement doît être effectué au niveau de l'expression:
while (!Mostra.EOF  && i<9)



Ce code fonctionne parfaitement avec moi dans un e,vironnement:
Microsoft Internet Explorer 6 - Windows XP Professionnel Service Pack 2 -  IIS 5 .

Bonne programmation

Farid
sidoummoudz@yahoo.fr

Source

  • <html>
  • <head>
  • <title></title>
  • <script><!--
  • function newWindow_Preview(url, name, crtctrstsc){
  • window.open(url, name, crtctrstsc)
  • }
  • //--></script>
  • </head>
  • <body>
  • <%@LANGUAGE = JScript%>
  • <%
  • var Cn = new ActiveXObject("ADODB.Connection");
  • var Sc = "driver={Microsoft Access Driver (*.mdb)};dbq=" + Server.MapPath("showRoom/base.mdb");
  • Cn.Open(Sc);
  • var Sql = "SELECT * FROM url ORDER BY id ";
  • var Mostra = new ActiveXObject("ADODB.Recordset");
  • Mostra.Open(Sql,Cn, 1);
  • var conta = 0;
  • var pag = parseInt(Request.QueryString("id"));
  • if (isNaN(pag) || pag < 1) pag = 1;
  • if (!Mostra.EOF) {
  • Mostra.PageSize = 9;
  • Mostra.AbsolutePage = pag;
  • }
  • var i = 0;
  • if (pag==1)
  • inicio=1
  • else
  • inicio=1+(pag-1)*Mostra.PageSize
  • fin=inicio+Mostra.PageSize-1
  • if (fin > Mostra.recordcount)
  • fin =Mostra.recordcount
  • %>
  • <p align="center"><font face="Tahoma"><span style="font-size:10pt;"><b>Galerie
  • d'images</b></span></font></p>
  • <p><font face="Tahoma" size="2">Nombre d'images par page:<font color="#FF0000"><b>&nbsp;<%=Mostra.PageSize%> &nbsp;</b></font><b><font color="#FF0000">&nbsp;&nbsp;
  • </font><font color="#000000">-</font><font color="#FF0000">&nbsp;&nbsp;&nbsp; </font></b>Affichage
  • des images&nbsp;[<font color="red"><b><%=inicio%> - <%=fin%></font></b>]&nbsp;sur
  • un total de<font color="#FF0000">&nbsp;<b><%=Mostra.recordcount%>&nbsp;
  • &nbsp;&nbsp;</b></font>
  • -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; page<font color="#FF0000"><b>&nbsp;<%=pag%>&nbsp;</b></font>sur<font color="#FF0000">&nbsp;<b><%=Mostra.PageCount%></b></font></p>
  • <table align="center" cellpadding="0" cellspacing="0" height="129" bgcolor="#C0C0C0">
  • <% while (!Mostra.EOF && i<9)
  • {
  • i++
  • // Impostiamo la condizione secondo la quale se arriviamo a 3 record andremo a capo con </tr> e <tr>
  • if (conta == 3) //Mettez ici le nombre d'enregistrement par ligne
  • {
  • conta = 0; // Resettiamo il contatore impostandolo su zero (0)
  • %>
  • <tr><td onmouseover="javascript:this.style.backgroundColor='gray'" onmouseout="javascript:this.style.backgroundColor=''" width="200" height="129"><p align="center"><a href="javascript:newWindow_Preview('showing.asp?imgID=<%=Mostra("id")%>','preview','scrollbars=yes, status=yes, height=300, width=500')" title="<%=Mostra("nom")%>"><%=Mostra("adresse")%></a></td>
  • <%
  • }
  • // altrimenti restiamo sulla stessa riga
  • else
  • {
  • %>
  • <td onmouseover="javascript:this.style.backgroundColor='gray'" onmouseout="javascript:this.style.backgroundColor=''" width="200" height="129"><p align="center"><a href="javascript:newWindow_Preview('showing.asp?imgID=<%=Mostra("id")%>','preview','scrollbars=yes, status=yes, height=300, width=500')" title="<%=Mostra("nom")%>"><%=Mostra("adresse")%></a></td>
  • <%
  • }
  • conta++; // Incrementiamo la variabile contatore
  • Mostra.moveNext()
  • }
  • %>
  • </tr>
  • </table>
  • <table border="0" width="100%">
  • <tr>
  • <td width="100%"></td>
  • </tr>
  • </table>
  • <div align="center">
  • <center>
  • <table width="412" height="1">
  • <tr>
  • <td width="183" height="1">
  • <%if (pag > 2 && Mostra.PageCount > 2) {%><font face=tahoma size=2><a href="galerie.asp?id=<%=1%>">Premier</a><%}%>
  • <%else if (Mostra.PageCount<=2) {%>&nbsp;&nbsp;<%}%>
  • <%else {%><font face=tahoma size=2 color="#C0C0C0">Premier</font></font></font><font face="tahoma" size="2" color="#C0C0C0">&nbsp;&nbsp;
  • </font><font face=tahoma size=2><font face="Tahoma" size="2">&nbsp;<%}%>
  • <%if (pag > 1) {%>&nbsp;&nbsp;&nbsp;</font></font><font face="Tahoma" size="2"><font face=tahoma size=2><a href="galerie.asp?id=<%=pag - 1%>">&lt;&lt; Précédent</a><%}%>
  • <%else {%><font face=tahoma size=2 color="#C0C0C0">&lt;&lt; Précédent<%}%>
  • </font>
  • </font>
  • </font>
  • </td>
  • <td width="65" height="1"><p align="center"><%
  • for (var i=0; i<Mostra.PageCount; i++)
  • {
  • if (pag == (i + 1))
  • {
  • %>
  • <b><%=(i + 1)%></b>
  • <%} else {%>
  • <a href="galerie.asp?id=<%=(i + 1)%>"><%=(i + 1)%></a>
  • <%
  • }
  • }
  • %>
  • </p></td>
  • <td width="189" align="right" height="1">
  • <p align="center">
  • <%if (!Mostra.EOF) {%><font face=tahoma size=2><a href="galerie.asp?id=<%=pag + 1%>">Suivant
  • &gt;&gt;</a><%}%>
  • <%else {%><font color=#C0C0C0 face=tahoma size=2>Suivant &gt;&gt;<%}%>
  • <%if (!Mostra.EOF && pag < Mostra.PageCount-1) {%>&nbsp;&nbsp;<font face=tahoma size=2><a href="galerie.asp?id=<%=Mostra.PageCount%>">Dernier</a><%}%>
  • <%else if (Mostra.PageCount<=2) {%>&nbsp;&nbsp;<%}%>
  • <%else {%>&nbsp;&nbsp;&nbsp;&nbsp;<font color=#C0C0C0 face=tahoma size=2>Dernier<%}%><font face=tahoma size=2>
  • </font>
  • </td>
  • </tr>
  • </table>
  • </center>
  • </div>
  • <%Cn.Close()%>
  • </body>
  • </html>
<html>
 <head>
  <title></title>
  <script><!--
function newWindow_Preview(url, name, crtctrstsc){
window.open(url, name, crtctrstsc)
}
//--></script>
 </head>
<body>
<%@LANGUAGE = JScript%>
<%
  var Cn = new ActiveXObject("ADODB.Connection");
  var Sc = "driver={Microsoft Access Driver (*.mdb)};dbq=" + Server.MapPath("showRoom/base.mdb");
   Cn.Open(Sc); 
   var Sql = "SELECT * FROM url ORDER BY id ";
   var Mostra = new ActiveXObject("ADODB.Recordset");
   Mostra.Open(Sql,Cn, 1);
      var conta = 0;

   var pag = parseInt(Request.QueryString("id"));

       if (isNaN(pag) || pag < 1) pag = 1;
       if (!Mostra.EOF) {
            Mostra.PageSize = 9;
            Mostra.AbsolutePage = pag;
       }
   var i = 0;
   
 if (pag==1)
 inicio=1
else
 inicio=1+(pag-1)*Mostra.PageSize

fin=inicio+Mostra.PageSize-1
if (fin > Mostra.recordcount)
fin =Mostra.recordcount

%>

<p align="center"><font face="Tahoma"><span style="font-size:10pt;"><b>Galerie 
d'images</b></span></font></p>
<p><font face="Tahoma" size="2">Nombre d'images par page:<font color="#FF0000"><b>&nbsp;<%=Mostra.PageSize%> &nbsp;</b></font><b><font color="#FF0000">&nbsp;&nbsp;
</font><font color="#000000">-</font><font color="#FF0000">&nbsp;&nbsp;&nbsp; </font></b>Affichage
des images&nbsp;[<font color="red"><b><%=inicio%> - <%=fin%></font></b>]&nbsp;sur
un total de<font color="#FF0000">&nbsp;<b><%=Mostra.recordcount%>&nbsp;
&nbsp;&nbsp;</b></font>
 -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; page<font color="#FF0000"><b>&nbsp;<%=pag%>&nbsp;</b></font>sur<font color="#FF0000">&nbsp;<b><%=Mostra.PageCount%></b></font></p>
<table align="center" cellpadding="0" cellspacing="0" height="129" bgcolor="#C0C0C0">
<% while (!Mostra.EOF  && i<9)
{ 
i++
// Impostiamo la condizione secondo la quale se arriviamo a 3 record andremo a capo con </tr> e <tr>
        if (conta == 3) //Mettez ici le nombre d'enregistrement par ligne
        {
            conta = 0; // Resettiamo il contatore impostandolo su zero (0)
%>
                    <tr><td onmouseover="javascript:this.style.backgroundColor='gray'" onmouseout="javascript:this.style.backgroundColor=''" width="200" height="129"><p align="center"><a href="javascript:newWindow_Preview('showing.asp?imgID=<%=Mostra("id")%>','preview','scrollbars=yes, status=yes, height=300, width=500')" title="<%=Mostra("nom")%>"><%=Mostra("adresse")%></a></td>
<%
        }
        // altrimenti restiamo sulla stessa riga
        else
        {
%>
                    <td onmouseover="javascript:this.style.backgroundColor='gray'" onmouseout="javascript:this.style.backgroundColor=''" width="200" height="129"><p align="center"><a href="javascript:newWindow_Preview('showing.asp?imgID=<%=Mostra("id")%>','preview','scrollbars=yes, status=yes, height=300, width=500')" title="<%=Mostra("nom")%>"><%=Mostra("adresse")%></a></td>
<%
        }
        conta++; // Incrementiamo la variabile contatore
          Mostra.moveNext()   
        }
%>
 </tr>
</table>

<table border="0" width="100%">
  <tr>
    <td width="100%"></td>
  </tr>
</table>
<div align="center">
  <center>
<table width="412" height="1">
 <tr>
   <td width="183" height="1">
      <%if (pag > 2 && Mostra.PageCount > 2) {%><font face=tahoma size=2><a href="galerie.asp?id=<%=1%>">Premier</a><%}%>
      <%else if (Mostra.PageCount<=2) {%>&nbsp;&nbsp;<%}%>
      <%else {%><font face=tahoma size=2 color="#C0C0C0">Premier</font></font></font><font face="tahoma" size="2" color="#C0C0C0">&nbsp;&nbsp;
   </font><font face=tahoma size=2><font face="Tahoma" size="2">&nbsp;<%}%>
      <%if (pag > 1) {%>&nbsp;&nbsp;&nbsp;</font></font><font face="Tahoma" size="2"><font face=tahoma size=2><a href="galerie.asp?id=<%=pag - 1%>">&lt;&lt; Précédent</a><%}%>
      <%else {%><font face=tahoma size=2 color="#C0C0C0">&lt;&lt; Précédent<%}%>
      </font>
   </font>
   </font>
   </td>
   <td width="65" height="1"><p align="center"><%
      for (var i=0; i<Mostra.PageCount; i++)
      {
         if (pag == (i + 1))
         {
   %>
         <b><%=(i + 1)%></b>
   <%} else {%>
         <a href="galerie.asp?id=<%=(i + 1)%>"><%=(i + 1)%></a>
   <%
       }
      }
   %>
</p></td>
   <td width="189" align="right" height="1">
      <p align="center">
      <%if (!Mostra.EOF) {%><font face=tahoma size=2><a href="galerie.asp?id=<%=pag + 1%>">Suivant
      &gt;&gt;</a><%}%>
      <%else {%><font color=#C0C0C0 face=tahoma size=2>Suivant &gt;&gt;<%}%>
      <%if (!Mostra.EOF && pag < Mostra.PageCount-1) {%>&nbsp;&nbsp;<font face=tahoma size=2><a href="galerie.asp?id=<%=Mostra.PageCount%>">Dernier</a><%}%>
      <%else if (Mostra.PageCount<=2) {%>&nbsp;&nbsp;<%}%>
      <%else {%>&nbsp;&nbsp;&nbsp;&nbsp;<font color=#C0C0C0 face=tahoma size=2>Dernier<%}%><font face=tahoma size=2>
      </font>
</td>
 </tr>
</table>
  </center>
  </div>
      <%Cn.Close()%>
</body>
</html>



 Sources du même auteur

CHANGEMENT DE MOT DE PASSE ASP-ACCESS
UN MESSAGE POUR LES VISITEURS SELON LE TEMPS.

 Sources de la même categorie

Source avec Zip GESTION DES SKIN par youdream
UTILISATION DE FTP.EXE DE WINDOWS EN ASP par Nicolas_kojack
FONCTION SIMPLE POUR ALTERNER LES COULEURS DES LIGNES D'UN T... par pakito_77
Source .NET (Dotnet) COMMENT PASSER UN PARAMÈTRE C# À FLASH ? par zigxag
COMPTEUR DE VISITE AVEC VARIABLE DE SESSION par tidave

 Sources en rapport avec celle ci

Source avec Zip GESTION D'UNE BIBLIOTHÈQUE par Elmarzougui
Source avec Zip UN MODULE POUR APPRENDRE SQL par Elmarzougui
Source avec Zip Source avec une capture Source .NET (Dotnet) GRIDVIEW UTILISANT LINQ ET REFLECTION par jmenfous
Source avec Zip Source avec une capture Source .NET (Dotnet) PAGINATION CONTRÔLE REPEATER ASP.NET AVEC UN DATASET par fabienfs
Source avec Zip Source .NET (Dotnet) PAGINATION ASP.NET par jimmy69

Commentaires et avis

Commentaire de Yoyo2B le 19/04/2005 18:19:46

utilise plutôt

SELECT * FROM (select top 10 * from (select top 20 * FROM URL order by ID ASC) as Url1 order by ID DESC) as Url2 ORDER BY ID ASC

et ça évitera des boucles j'usqu'à NumEnCours = Num paske si bcp record ==> c pas gangé !! surtout avec access !

Commentaire de Yoyo2B le 19/04/2005 18:24:02

oups, c t pas fini :

si tu as une variable NbreSaut = 10 ki te donne le nombre de record suivants ou précédents à trouver,

tu remplace "select top 10" par "select top " & NbreSaut & "..." et 20 pas (2*NbreSaut)

et sur "précédent", tu fait <a href="tapage?NbreMessages=10&NumDepart=x>
où x est le num en cours

Voilà, c peut-être pas trés clair, mais c plus simple en fait, et ça surcharge pas le serveur bdd.
Avec 10-500 renregistrements, ta méthode est valable, mais si tu en as plus , ça craint !!

happy coding ...

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

pagination [ par debutante lambda ] comment paginer un ensemble de résultats issus de plusieurs requetes ? La difficulté est qu'il n'existe qu'un résultat par requête mais plusieurs requ connexion JScript [ par miouly ] Je ne n'arrive pas à me connecter à ma base access en utilisant le langage JScriptVoici mon code : // Ouverture de la connexion à la base pour efranc Comment inserer une image ou un fichier dans une base Access ? [ par langju ] Bonjour à tous,voilà j'ecris pour un petit problème :Sur une page ASP j'ai crée un formulaire avec un FileUpload(champ de fichier.) ma balise form est Nombre de connexions simultanées avec une base ACCESS ? [ par Mik ] J'aimerais avoir des informations concernant les connexions simultanées à une base de donnée access, avec des pages en asp.Merci Urgent ***Plusieurs insertion*** [ par Nicolas ] Très Très urgent Pour projet !!!!!!Bonjour,J'utilise Access comme Base de donnée Est-il possible d'insérer lors d'un même Insert Recordset plusieurs l pagination [ par coralie ] voila , je veux extraire les données de ma base sur plusieurs pages,10 resulta par pages, j'arrive à afficher 10 résultat mais j'ai pas le lien vers l ASP et EXCEL [ par sebcorse ] SalutVoila mon probleme : j'utilise un site qui permet d'afficher, de saisir et de modifier des donnees a partir d'une BDD Access en ASPEt tout foncti Champs de + de 255 Caractère à diviser pour ACCESS [ par pi0up51 ] Voilà, mon pb est presque dans le titre. J'i une base de donnée Access 97 ( pas good) et commme vous le savez, les champs txt sont limités à 255 carac base de donnée sur kilio [ par fabiin ] Salut !voila:g une base de donnée access sur mon site perso(pub:vague sonore) je voulais savoir si il était possible de pouvoi lier 2 tables access [ par fif ] bonjour,je voudrais savoir comment creer une relation dans access entre 2 tables. Il faudrait que pour des champs qui ont le meme nom et comportant le


Nos sponsors


Sondage...

CalendriCode

Juillet 2010
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,671 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales