<% '--------------- requete de numero du journal ------------------ srequete1="select numero from TABNUMERO order by numero desc" Set RS_srequete1=Server.CreateObject("ADODB.Recordset") RS_srequete1.Open srequete1, con, 3,3 '--------------- requete de nom de la rubrique ------------------- srequete2="select rubrique from TABRUBRIQUE order by rubrique asc" Set RS_srequete2=Server.CreateObject("ADODB.Recordset") RS_srequete2.Open srequete2, con, 3,3 '--------------- requete de nom de la serie --------------------- srequete3="select serie from TABSERIE order by serie asc" Set RS_srequete3=Server.CreateObject("ADODB.Recordset") RS_srequete3.Open srequete3, con, 3,3 '----------- Cette fonction permet de filter ----------------------- function filtrage (chaine_filtrage,champ,k) tab="auteur,numero,rubrique,serie" tab_split =split(tab,",") if Cstr(champ)="0" then champ="" end if if len(champ)>0 then if StrComp(chaine_filtrage,"")=0 then chaine_filtrage=chaine_filtrage&tab_split(k)&"='"&champ&"'" else chaine_filtrage=chaine_filtrage&" and "&tab_split(k)&"='"&champ&"'" end if end if filtrage=chaine_filtrage end function '------------- fonction de pagination --------------------------- function f_page_actuelle (page,champ) if len(page)>0 then '------ debut 1 if ps="s" then if page < champ then 'RS_srequete1.PageCount page=page+1 end if else if page>1 then page=page-1 else page=1 end if end if end if '-------- debut 1 f_page_actuelle=page end function '--------------------- Paginination --------------------------- page=Cint(request.querystring("page")) ps=lcase(request.querystring("ps")) if len(page)=0 then page=1 end if '############################################################################################################# '######################################## si le formulaire est activé ######################################## rechercher=Lcase(request("rechercher")) titre=Trim(request.querystring("ti")) contenu=request.querystring("co") statut=request.querystring("st") auteur=Trim(request.querystring("au")) numero=Trim(request.querystring("nu")) rubrique=Trim(request.querystring("ru")) serie=Trim(request.querystring("se")) if rechercher="rechercher" then titre=Trim(request.form("titre")) numero=Trim(request.form("numero")) rubrique=Trim(request.form("rubrique")) serie=Trim(request.form("serie")) auteur=Trim(request.form("auteur")) contenu=request.form("contenu") statut=request.form("statut") if Isdate(request.form("date_jour")) then date_jour=Cdate(request.form("date_jour")) end if end if ' rechercher="rechercher" 'chaine_filtrage= request.querystring("cf") 'if len(chaine_filtrage)=0 then chaine_filtrage="" end if chaine_filtrage ="" chaine_filtrage = filtrage(chaine_filtrage,auteur,0) chaine_filtrage = filtrage(chaine_filtrage,numero,1) chaine_filtrage = filtrage(chaine_filtrage,rubrique,2) chaine_filtrage = filtrage(chaine_filtrage,serie,3) srequete4="select * from TABARTICLE where titre Like '%"&titre&"%' and contenu Like '%"&contenu&"%' and statut ='"&statut&"' ORDER BY date_jour DESC " set RS_srequete4 =Server.CreateObject("ADODB.Recordset") RS_srequete4.Open srequete4, con, 3, 3 RS_srequete4.filter=chaine_filtrage ' -------------------- fin de filtrage ------------------- '------- fixation du nombre d'enregistrements par page, ici 10 pour RS_srequete1 RS_srequete4.PageSize= 10 page=f_page_actuelle (page,RS_srequete4.PageCount) if RS_srequete4.recordcount<>0 then RS_srequete4.AbsolutePage= page end if nb_total = RS_srequete4.recordcount %> ardhd, recherches multicritères
 
 

 
 
 
Titre Auteur Numero
Contenu Rubrique Série
 
<% k=1 while not RS_srequete4.EOF and k<= RS_srequete4.PageSize if k mod 2 then class_val = "newsdirect2" else class_val = "newsdirect" end if %> <% k=k+1 RS_srequete4.movenext wend RS_srequete4.close Set RS_srequete4=Nothing %>
Total des articles correspondants à votre requete: <%=nb_total%>

<%if page>1 then%> << <%end if%> <%if page >> <%end if%>
" class="<%=class_val%>" target="_blank"> <%=RS_srequete4("titre")%>

 
 
<% RS_srequete3.close RS_srequete2.close RS_srequete1.close con.close ' fermeture de la connexion Set con=Nothing ' destruction de la= %>