AU SECOURS!!!!!. Voila j'ai un probleme. J'ai une table avec des champs de type case à cocher(Moules,Metiers,Maquettes,Modeles). J'ai une premiere page de recherche avec un formulaires composé de boutons radio. J'ai une seconde page
qui doit récupérer le choix de recherche et l'inclure dans une requete pour afficher le résultat sur plusieurs pages. En fait j'arrive à afficher les 10 premiers résultats mais la seconde page de résultat provoque une erreur sur ma requete sql (au niveau de choix="true").
Si quelqu'un pouvait m'aider merci d'avance.
voici mes 2 pages:(désolé si c long)
recherche.htm
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<script language="JavaScript">
<!--
function test(champ)
{
if(champ[0].checked || champ[1].checked || champ[2].checked || champ[3].checked || champ[4].checked)
return true
alert("Faites un choix !")
return false
}
//-->
</script>
<html>
<head>
<title>Document sans titre</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
Recherche
<form name="rapid" method="post" onSubmit="return test(this.radiobutton)" action="listing.asp?methode=liste">
<p align="left"><font face="Verdana, Arial, Helvetica, sans-serif"><strong>Liste
par critères:</strong></font></p>
<table width="69%" border="0" cellspacing="0">
<tr>
<td><font color="#000000" face="Verdana, Arial, Helvetica, sans-serif">Moules </font>
<input type="radio" name="radiobutton" value="Moules"></td>
<td><font face="Verdana, Arial, Helvetica, sans-serif">Modeles</font>
<input type="radio" name="radiobutton" value="Modeles"></td>
<td><font face="Verdana, Arial, Helvetica, sans-serif">Maquettes</font>
<input type="radio" name="radiobutton" value="Maquettes"> </td>
<td><font face="Verdana, Arial, Helvetica, sans-serif">Métiers</font>
<input type="radio" name="radiobutton" value="Metiers">
<font face="Verdana, Arial, Helvetica, sans-serif"><strong> </strong></font>
</td>
</tr>
</table>
<div align="left">
<p><font face="Verdana, Arial, Helvetica, sans-serif"><strong>Liste complète
:
<input type="radio" name="radiobutton" value="tout">
<input name="imageField" type="image" src="ok.gif" width="35" height="30" border="0">
</strong></font></p>
<p align="center"><font face="Verdana, Arial, Helvetica, sans-serif"><strong>
</strong></font><font face="Verdana, Arial, Helvetica, sans-serif"><strong>
</strong></font></p>
</div>
</form>
</body>
</html>
listing.asp
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<%
Dim choix
Dim a
Dim Conn
Dim Ref
Dim NbEltPage
Dim Page
Dim SQL
Dim ObjRS
Dim ObjRSListe
dim connexion
connexion = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("./database/etude.mdb")
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open connexion
dim totalenreg 'nombre total d'adhérents
SQLQuery = "Select * FROM Adherents ORDER BY Adherents.IDsoc"
Set ObjRS = Server.CreateObject("ADODB.Recordset")
Set ObjRS = Conn.execute(SQLQuery)
totalenreg=0
ObjRS.MoveFirst
do while not ObjRS.EOF
totalenreg=totalenreg+1
ObjRS.Movenext
Loop
ObjRS.Close
Set ObjRS = Nothing
If request.querystring("methode")="liste" then
a = request.form("radiobutton")
If a="tout" then
SQLListe="SELECT * FROM Adherents ORDER BY SOCIETE ASC;"
Else
choix="true"
SQLListe="SELECT * FROM Adherents WHERE "& a &"="& choix &" ORDER BY SOCIETE ASC;"
End If
End if
Response.buffer=True
'---- Définition du nombre d'éléments par page--------------'
NbEltPage = 10
Set ObjRSListe = Server.CreateObject("ADODB.Recordset")
ObjRSListe.Open SQLListe, Conn, 3, 3
If Not ObjRSListe.EOF then '--- Il y a des éléments dans la table
'--- On initialise le nombre d'éléments par page
ObjRSListe.Pagesize=NbEltPage
If request("Page")="" then '--- Si le paramètre page est vide
Page=1 '---- On commence à la page 1
End if
ObjRSListe.AbsolutePage=Page
%>
<html>
<head>
<title>Liste des adhérents</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<p>Liste </p>
<table width="50%" border="0" align="center" cellspacing="0">
<tr>
<td><div align="center"><font face="Verdana, Arial, Helvetica, sans-serif"><strong>SOCIETE</strong></font></div></td>
<td><div align="center"></div></td>
<td><div align="center"></div></td>
</tr>
<%'---- On affiche les éléments trouvés
for i=1 to ObjRSListe.pagesize '--- de 1 jusqu'à la valeur de NbEltPage
%>
<tr>
<td><div align="center"><%=ObjRSListe("SOCIETE")%></div></td>
<td><div align="center"></div></td>
<td><div align="center"></div></td>
</tr>
<% ObjRSListe.movenext
if ObjRSListe.eof then '---- Si on est pas à la fin
exit for
end if
next
%>
</table>
<p> </p><table width="50%" border="0" align="center" cellspacing="0">
<tr>
<td><div align="center"><%
'---- Affichage des boutons suivant et précédent
'------- Bouton précédent
if Page>1 then '--- Si on est pas sur la première page
Ref="listing.asp?methode=liste&Page="&Page-1
response.write("<a href="&ref&">Précédent</a> ")
end if
%></div></td>
<td> </td>
<td><div align="center"> <%
'------- Bouton suivant
if Page<ObjRSListe.pagecount then '--- Si on est pas sur la dernière page
Ref="listing.asp?methode=liste&Page="&Page+1
response.write("<a href="&Ref&">Suivant</a> ")
end if
%></div></td>
</tr>
</table>
<%
Else
response.write("Aucun élément n'a été trouvé")
End if
ObjRSListe.close '---- Fermeture des connexions base de données
set ObjRSListe=nothing
Conn.close
Set Conn=nothing
%>
<p> </p>
</body>
</htm