IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP Discussion :

Application web réservation salles ASP


Sujet :

ASP

  1. #21
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 28
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 90
    Points : 8
    Points
    8
    Par défaut
    Bonjour !

    Je pensais après réflexion, embraquer les if à la suite, avec un if supplémentaire pour le message d'erreur, est-ce que ça marcherai ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    ' Objet utilisé pour vérifier dans la base de donnée si des réservations ont déjà été effectuées pour la salle voulu
    Set res_verif = Server.CreateObject("ADODB.Recordset")
     
    ' et ouverture de l'élément qui permet de reserver une salle
    Set res_choixSalle = Server.CreateObject("ADODB.Recordset")
     
    ' On récupére les infos du formulaire de saisie
     
    	err = " Aucune salle ne correspond à votre requête. Veuillez réitérer votre recherche. "  'Message d'erreur si la requête ne trouve rien.
    	sql = ""
    	sql = sql & "Select Id_Salle from Salle " 						  'Sélectionner l'id de la salle dans la table salle
    	sql = sql & "where 1 = 1 "											'pour que la condition sois toujours vrai
    	sql = sql & "order by ASC, R_Info = 1"                                'résultat ordonné par odre alphabétique et ensuite par salle qui sont informatisées.                     
     
     
    	<%if Len(Trim(request.form("T_Lieu"))) > 0 then%>			      'Si l'utilisateur choisi un lieu 
    		sql = sql & "and H_lieu = '" & request.form("T_Lieu") & "' "	     'alors on rajoute le lieu à Where
     
     
    		<%if Len(Trim(request.form("S_Cap"))) > 0 then%>				  'Si l'utilisateur choisi une capacité 
    			sql = sql & "and H_cap = '" & request.form("S_Cap") & "' " 		  'alors on rajoute la capacité à Where
     
     
                                  <%if Len(Trim(request.form("T_Lieu"))) & Len(Trim(request.form("S_Cap"))) = null%>    'Si la capacité et le lieu ne sont pas compatibles (que la requete ne trouve aucun résultat)
     
     
                                           err = "Aucune salle ne correspond à votre requête. Veuillez refaire une recherche s'il vous plait."
     
                                <%Else if Len(Trim(request.form("R_Info"))) > 0 then%> 				  'Si l'utilisateur veut une salle informatique
    				sql = sql & "and H_info = '" & request.form("R_Info") & "' "	  'alors on rajoute la salle info à Where
     
    		       <%if Len(Trim(request.form("T_Lieu"))) & Len(Trim(request.form("S_Cap"))) & Len(Trim(request.form("R_Info"))) = null%>    'Si la capacité, le lieu et la salle informatique ne sont pas compatibles (que la requete ne trouve aucun résultat)
     
                                           err = "Aucune salle ne correspond à votre requête. Veuillez refaire une recherche s'il vous plait."

  2. #22
    Expert confirmé
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Points : 4 047
    Points
    4 047
    Par défaut
    Re,

    Je prends l'exemple de cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <%if Len(Trim(request.form("T_Lieu"))) & Len(Trim(request.form("S_Cap"))) = null%>    'Si la capacité et le lieu ne sont pas compatibles (que la requete ne trouve aucun résultat)
    Tu ne peux pas, à ce moment, savoir si la requête va te retourner un résultat ou pas. Tu ne peux le savoir qu'une fois la requête exécutée.

    Comme dis plus haut, le caractère "&" sert à concaténer. Il faut utiliser "AND".

    N'utilises pas de variable nommée "err" ; C'est un mot réservé qui permet notamment la gestion des erreurs.

  3. #23
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 28
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 90
    Points : 8
    Points
    8
    Par défaut
    Bonjour,


    J'ai un HTML :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     <div id="centre">
                           <form name="F_Reserv" method="post" action="recapReservationSalle.asp">
                           <input type="hidden" name="H_Lieu" value="<%=request.form("S_Lieu")%>" />
                           <input type="hidden" name="H_Cap" value="<%=request.form("S_Cap")%>" />
                           <input type="hidden" name="H_Info" value="<%=request.form("S_Info")%>" />
       	       <input type="hidden" name="H_Comment" value="<%=request.form("T_Comment")%>" />
    	       <input type="hidden" name="H_Affichage" value="<%request.form("CK_Affichage")%>"/>
    	      <input type="hidden" name="H_Salle" /> 
    ........................................................
     
    <center>
    et de l'ASP:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    <%
     
    'On récupére les infos du formulaire de saisie
     
                 'sql = ""		'Pour les espaces... mais vu que c'est dans une liste déroulante pas besoin
    	sql = "Select * from Salle S " 	'Sélectionner tous les éléments de la salle dans la table salle
    	sql = sql & "where 1 = 1 "		'pour que la condition soit toujours vraie
     
    	<%if Len(Trim(request("S_Lieu"))) > 0 then%>			      			'Si l'utilisateur choisi un lieu 
    		sql = sql & "and H_Lieu = '" & request.form("S_Lieu") & "' "			'alors on rajoute le lieu à Where
    	<%end if%>
     
    	<%if Len(Trim(request("S_Cap"))) > 0 then%>				  		'Si l'utilisateur choisi une capacité 
    		sql = sql & "and H_Cap = '" & request.form("S_Cap") & "' " 			'alors on rajoute la capacité à Where
    	<%end if%>
     
    	<%if Len(Trim(request("S_Info"))) > 0 then%> 				  	'Si l'utilisateur veut la salle info
    		sql = sql & "and H_Info = '" & request.form("S_Info") & "' "			'alors on rajoute la salle info à Where
    	<%end if%>
     
    	sql = sql & "order by ASC, R_Info = 1"                              				'résultat ordonné par odre alphabétique et ensuite par salle qui sont informatisées.                     
    	MesEr = " Aucune salle ne correspond à votre requête. Veuillez réitérer votre recherche. "           'Message d'erreur si la requête ne trouve rien.
     
    %>
    Où mettre le message d'erreur puisqu'il ne peut apparaitre qu'une fois la requête exécutée ?

    Tout ce code provient du fichier choix.asp
    Faudrait-il que je mette le code asp dans saisie.asp finalement ?


    Car saisie --> html + message d'erreur s'il ne donne pas une raison + message d'erreur si aucune salle n'est dispo ?

  4. #24
    Expert confirmé
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Points : 4 047
    Points
    4 047
    Par défaut
    Bonjour,

    Quand ta requête qui doit alimenter le recordset en fonction des choix de l'utilisateur est exécutée, tu testes si ton recordset contient des données :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <%if not MonRecordSet.EOF then%>
       => affichage des salles
    <%else%>
       => affichage du msg "Pas de salles pour la sélection
       => retour à l'écran de sélection
    <%end if%>

  5. #25
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 28
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 90
    Points : 8
    Points
    8
    Par défaut
    Merci beaucoup ! ça m'a permis de comprendre certaines choses qui n'étaient pas commentés sur le code ! Je pense que je suis proche du but, peux-tu me dire si le code te semble correct ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
     
    <%@ Language=VBScript %>
     
    <%if (session("ID_User") = "") then
           response.redirect "../index.asp"
    End if%>
     
    <html>
    <head>
           <title> Projet </title>
           <link rel="stylesheet" type="text/css" href="../../style.css" />
           <script language="Javascript" src="../../javascript/javascript.js"></script>
     
    <script language="Javascript">
    function Dispo(type)
    {	
    	if (sup_elt.length <= 0)
           {
    		   alert("Vous devez sélectionner une salle pour voir ses disponibilités !");
           }
           else
           {
    		   document.F_Reserv.submit();
           }
    }
    </script>
     
    </head>
     
    <body>
     <div id="conteneur">
                   <!-- #include file="../../javascript/calendrier1mois.asp"-->
                   <!-- #include file="../../MiseEnForme/header.asp"-->
                   <!-- #include file="../../MiseEnForme/menuHorizontal.asp"-->
                   <div id="conteneur2">
                           <!-- #include file="../../MiseEnForme/menuVerticalPrive.asp"-->
                           <div id="centre">
                           <form name="F_Reserv" method="post" action="recapReservationSalle.asp">
                           <input type="hidden" name="H_Lieu" value="<%=request.form("S_Lieu")%>" />
                           <input type="hidden" name="H_Cap" value="<%=request.form("S_Cap")%>" />
    					   <input type="hidden" name="H_Info" value= "<%=request.form("S_Info")%>"/>
    					   <input type="hidden" name="H_Comment" value="<%=request.form("T_Comment")%>" />
    					   <input type="hidden" name="H_Affichage" value="<%request.form("CK_Affichage")%>"/>
    					   <input type="hidden" name="H_Salle" />
                           <center>
                           <b> Réserver une salle </b>
                           <br/>
                           à <%=request.form("S_Lieu")%> <br/> pouvant contenir <%=request.form("S_Cap")%> avec salle info ? <%=request.form("S_Visio")%> 		
    				       <br/><br/>
                           <table class="miniCorps" width="800">
                                   <tr>
                                           <td colspan="6" class="entete"> Liste des salles disponibles </td>
                                   </tr>
                                   <tr align="center">
                                           <td width="175">
                                                   <b>Salle</b>
                                           </td>
     
    									   <td width="175">
                                                   <b>Etage</b>
                                           </td>
     
    									   <td width="175">
                                                   <b>Localisation</b>
                                           </td>
     
    									   <td width="175">
                                                   <b>Capacité</b>
                                           </td>
     
    									   <td width="175">
                                                   <b>Info</b>
                                           </td>	
     
                                           <td width="100">
                                                   <b>Réserver</b>
                                           </td>
                                   </tr>
     
                                           <tr><td>&nbsp;</td><tr>
                                           <tr>
                                                   <td colspan="6" align="center">
                                                           <input type="button" name="B_Dispo" value="Voir les disponibilités" onclick="Dispo('');" />
                                                           <br/>&nbsp;
                                                   </td>
                                           </tr>
     
    						res_choixSalle.Close
     
                           </table>
                           </center>
                           </form>
                           </div>
                   </div>
           </div>
    </body>
    </html>
     
    <%
    ' On récupére les infos du formulaire de saisie
     
    	'sql = ""																					'Pour les espaces... mais vu que c'est dans une liste déroulante pas besoin
     
    	sql = "Select * from Salle S " 																'Sélectionner tous les éléments de la salle dans la table salle
    	sql = sql & "where 1 = 1 "																	'pour que la condition soit toujours vraie
    	sql = "order by ASC, R_Info = 1"  															'ordonné par ordre alphabetique et par salle info
     
    	<%if Len(Trim(request.form("S_Lieu"))) > 0 then%>			      							'Si l'utilisateur choisi un lieu 
    		sql = sql & "and H_Lieu = '" & request.form("S_Lieu") & "' "							'alors on rajoute le lieu à Where
    	<%end if%>
     
    	<%if Len(Trim(request.form("S_Cap"))) > 0 then%>				  							'Si l'utilisateur choisi une capacité 
    		sql = sql & "and H_Cap = '" & request.form("S_Cap") & "' " 								'alors on rajoute la capacité à Where
    	<%end if%>
     
    	<%if Len(Trim(request.form("S_Visio"))) > 0 then%> 				  							'Si l'utilisateur veut la visio
    		sql = sql & "and H_Info = '" & request.form("S_Info") & "' "							'alors on rajoute la visio à Where
    		x  			
    	<%end if%>
     
    	<%if not rs_choix.eof then%>																'Si le choix correspond à une requete
     
    		response.write 																			'Afficher nom/etage/lieu/capacite/visio/réserver	
    		"<tr><td>" 
    		& rs_choixSalle("Nom")
     
    		& "</td><td> " 
    		& rs_choixSalle("Etage") 		
     
    		& "</td><td> " 
    		& rs_choixSalle("Lieu")
     
    		& "</td><td> " 
    		& rs_choixSalle("Capacite") 
     
    		& "</td><td> " 
    		& rs_choixSalle("Info") 
     
    		& "</td><td align=""center""> <input type=""radio"" name=""R_Salle"" value="" " 
    		& rs_choixSalle("ID_Salle") 
     
    		& " "" /></td></tr>"                      						
     
    	<%else%>																					'Sinon afficher un message d'erreur.
    		response.write "<tr><td colspan=""3"" align=""center""><br/><b><font color=""red"">Aucune salle ne correspond à vos critères, veuillez réitérer votre recherche.</font></b><br/>&nbsp;</td></tr>"
    	<%end if%>
     
     
    	'Demande si l'utilisateur veut que sa salle soit affichée sur l'écran de l'accueil
     
    	' <%if Len(request("CK_Affichage")) > 0 then%>					'Si oui
    	'		sql = sql & "and H_Affichage = '" & request.form("CK_Affichage") & " ' " 'alors on rajoute l'affichage à Where
    	' <%end if%>
    %>

  6. #26
    Expert confirmé
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Points : 4 047
    Points
    4 047
    Par défaut
    Alors voilà ce qui me "saute aux yeux" :

    La clause "order by" se met après la clause "where"

    Ligne 108 et suivantes : Tu es déjà dans une balise asp ouverte.
    Il ne faut pas la fermer, car la variable "sql" est une variable asp.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if Len(Trim(request.form("S_Lieu"))) > 0 then			      							'Si l'utilisateur choisi un lieu
         sql = sql & "and H_Lieu = '" & request.form("S_Lieu") & "' "							'alors on rajoute le lieu à Where
    end if
    Je ne vois pas où tu exécutes ta requête pour alimenter ton recordset.

    Tu testes que ton recordset contient bien des données avec eof, mais il faut parcourir ce recordset :
    (Encore une fois, attention à la fermeture / ouverture des balises asp)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    if not rs_choix.eof then																'Si le choix correspond à une requete
       do while not rs_choix.eof
    		response.write 																			'Afficher nom/etage/lieu/capacite/visio/réserver
    		"<tr><td>"
    		& rs_choixSalle("Nom")
          ............
          rs_choix.MoveNext
      loop
    else																					'Sinon afficher un message d'erreur.
    		response.write "<tr><td colspan=""3"" align=""center""><br/><b><font color=""red"">Aucune salle ne correspond à vos critères, veuillez réitérer votre recherche.</font></b><br/>&nbsp;</td></tr>"
    end if

  7. #27
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 28
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 90
    Points : 8
    Points
    8
    Par défaut
    Merci, je viens de changer les erreurs de balises et si je comprends bien, j'ai testé que je possédais les données et quand tu as mis do while not re_choix.eof...rs_choix.MoveNext... loop ça a permis de parcourir les données en questions pour voir si on trouvait une correspondance avec la requête, c'est bien ça ?

    Je dois travailler sur d'autres produits comme les salles, du coup j'en apprend beaucoup avec tes explications, je te remercie vraiment. Je vais procéder de la même façon, et normalement je devrais beaucoup mieux m'en sortir, maintenant que j'ai un modèle qui marche

  8. #28
    Expert confirmé
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Points : 4 047
    Points
    4 047
    Par défaut
    Citation Envoyé par Yana20 Voir le message
    quand tu as mis do while not re_choix.eof...rs_choix.MoveNext... loop ça a permis de parcourir les données en questions pour voir si on trouvait une correspondance avec la requête, c'est bien ça ?
    Disons que ça affiche le résultat de la requête en fonction des choix de l'utilisateur. C'est à dire la liste des salles qui répondent aux critères choisis.

  9. #29
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 28
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 90
    Points : 8
    Points
    8
    Par défaut
    D'accord, c'est bien ce que j'avais compris oui

    Je reviendrais vers toi pour l'affichage en calendrier (sur les 3 fichiers, j'en ai 2 opé pour le moment donc je vais refaire ça pour les autres produits) !

    Merci encore !

  10. #30
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 28
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 90
    Points : 8
    Points
    8
    Par défaut
    Bonjour !

    Je ne comprend pas du tout, car à présent que mon serveur est réparé, j'ai pu tester le fichier, et il ne marche pas... Je cherche la raison, mais je ne comprend pas du tout, car il me semblait que j'avais tout mis ! Le html de la saisie marche, il n'y a aucun problème là-dessus, mais dès que je clique sur valider, il me dise qu'il y a une erreur. Et si je tape directement l'adresse url de choix.asp elle me donne un message d'erreur 500.

    Voici mon fichier saisie.asp:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
     
    <%@ Language=VBScript %>
    <%
    If (session("ID_User") = "") Then
    	response.redirect "../index.asp"
    End if
    %>
    <html>
    <head>
    	<title>Projet </title>
    	<link rel="stylesheet" type="text/css" href="../../style.css" />
    	<script language="Javascript" src="../../javascript/javascript.js"></script>
    	<script language="Javascript">
     
    	/*		Description: cette fonction permet de signaler à l'utlisateur les éventuelles erreurs de saisies.	*/
     
    	function Valider()
    	{
    		if (document.F_Res.T_Comment.value.length < 3)
    		{
    			alert('Motif obligatoire !');
    			document.F_Res.T_Comment.focus();
    		}
    		else
    		{
    			document.F_Res.submit();
    		}
    	}
    	</script>
    </head>
    <body>
    	<div id="conteneur">		
    		<!-- #include file="../../javascript/calendrier1mois.asp"-->
    		<!-- #include file="../../MiseEnForme/header.asp"-->
    		<!-- #include file="../../MiseEnForme/menuHorizontal.asp"-->
     
    		<div id="conteneur2">		
    			<!-- #include file="../../MiseEnForme/menuVerticalPrive.asp"-->
    			<div id="centre">
    			<center>
    			<form name="F_Res" action="./Reservation/choix.asp" method="post">
    			<table class="corps">
    				<tr>
    					<td colspan="3" class="entete">
    						Réservation d'une salle par critères
    					</td>
    				</tr>
    				<tr><td>&nbsp;</td></tr>
     
    				<td>
    					<form method="post" >
    						<Font color = #000000 Style= "margin-left:15px"> Lieu: <SELECT id="lieu" name="S_Lieu" style= "width:135px; margin-left:10px">
    													<OPTION value="1"> Non-renseigné
    													<OPTION value="2"> A
    													<OPTION value="3"> B
    													<OPTION value="4"> C
    													<OPTION value="5"> D 							
    													<OPTION value="6"> E
    													<OPTION value="7"> F								
    													<OPTION value="8"> G
    													<OPTION value="9"> H
     
    												</SELECT>
     
    						<Font color = #000000 Style= "margin-left:25px">Capacité: <SELECT id="capacite" name="S_Cap" style= "width:135px; margin-left:10px">
    													<OPTION value="1"> Non-renseigné
    													<OPTION value="2"> 3 personnes
    													<OPTION value="3"> 8 personnes
    													<OPTION value="4"> 10 personnes
    													<OPTION value="5"> 11 personnes
    													<OPTION value="6"> 12 personnes
    													<OPTION value="7"> 15 personnes
    													<OPTION value="8"> 19 personnes
    													<OPTION value="9"> 20 personnes
    													<OPTION value="10"> 22 personnes
    													<OPTION value="11"> 23 personnes
    													<OPTION value="12"> 40 personnes
    												</SELECT>
     
    						<Font color = #000000 Style= "margin-left:25px">Salle info: 	<input type="radio" name="S_Info" value="Oui" /> Oui 
    																						<input type="radio" name="S_Info" value="PI" checked /> Sans Opinion
     
    					</form>	
    				</td>
     
    				<tr>
    					<td>
    						<Font color = #FF0000 Style="margin-left:15px;" >Raison : </font> <textarea name="T_Comment" rows="4" cols="50" style= "margin-left:150px"></textarea>
    					</td>
    				</tr>
     
    				<tr>
    					<td>
    						</br> <input type="checkbox" name="CK_Affichage" value="Oui" checked Style="margin-left:11px;" /> Pour que votre réservation <b>n'apparaisse pas</b> sur l'écran à l'accueil, <b>décochez</b> cette case.</b>
    					</td>
    				</tr>
    				<tr><td>&nbsp;</td></tr>
    				<tr>
    					<td colspan="3" align="center">
    						<input type="button" value="Valider" name="B_Valider" onClick="Valider();" />
    						&nbsp;&nbsp;
    						<input type="reset" value="Annuler" name="B_Reset" />
    					</td>
    				</tr>
    				<tr><td>&nbsp;</td></tr>
    			</table>
    			</form>
    			</center>
    			</div>
    		</div>
    	</div>
    </body>
    </html>
    Et voici mon fichier choix.asp:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
     
     
    <%@ Language=VBScript %>
     
    <%if (session("ID_User") = "") then
           response.redirect "../index.asp"
    End if%>
     
    <html>
    <head>
           <title> Projet </title>
           <link rel="stylesheet" type="text/css" href="../../style.css" />
           <script language="Javascript" src="../../javascript/javascript.js"></script>
     
    <script language="Javascript">
     
    function Dispo(type)
    {	
    	if (sup_elt.length <= 0)
           {
    		   alert("Vous devez sélectionner une salle pour voir ses disponibilités !");
           }
           else
           {
    		   document.F_Reserv.submit();
           }
    }
    </script>
     
    </head>
     
    <body>
     <div id="conteneur">
                   <!-- #include file="../../javascript/calendrier1mois.asp"-->
                   <!-- #include file="../../MiseEnForme/header.asp"-->
                   <!-- #include file="../../MiseEnForme/menuHorizontal.asp"-->
                   <div id="conteneur2">
                           <!-- #include file="../../MiseEnForme/menuVerticalPrive.asp"-->
                           <div id="centre">
                           <form name="F_Reserv" method="post" action="AffichageSalle.asp">
                           <input type="hidden" name="H_Lieu" value="<%=request.form("S_Lieu")%>" />
                           <input type="hidden" name="H_Cap" value="<%=request.form("S_Cap")%>" />
    					   <input type="hidden" name="H_Visio" value= "<%=request.form("S_Visio")%>"/>
    					   <input type="hidden" name="H_Comment" value="<%=request.form("T_Comment")%>" />
    					   <input type="hidden" name="H_Affichage" value="<%request.form("CK_Affichage")%>"/>
    					   <input type="hidden" name="H_Salle" />
                           <center>
                           <b> Réserver une salle </b>
                           <br/>
                           à <% response.write rs_choixSalle("S_Lieu") %> <br/> 
    					   pouvant contenir <% response.write rs_choixSalle("S_Cap") %> <br/> 
    					   avec Visio ? <% response.write rs_choixSalle("S_Visio") %>
     
    				       <br/><br/>
                           <table class="miniCorps" width="800">
                                   <tr>
                                           <td colspan="6" class="entete"> Liste des salles disponibles </td>
                                   </tr>
                                   <tr align="center">
                                           <td width="175">
                                                   <b>Salle</b>
                                           </td>
     
    									   <td width="175">
                                                   <b>Etage</b>
                                           </td>
     
    									   <td width="175">
                                                   <b>Localisation</b>
                                           </td>
     
    									   <td width="175">
                                                   <b>Capacité</b>
                                           </td>
     
    									   <td width="175">
                                                   <b>Info</b>
                                           </td>	
     
                                           <td width="100">
                                                   <b>Réserver</b>
                                           </td>
                                   </tr>
     
                                           <tr><td>&nbsp;</td><tr>
                                           <tr>
                                                   <td colspan="6" align="center">
                                                           <input type="button" name="B_Dispo" value="Voir les disponibilités" onclick="Dispo('');" />
                                                           <br/>&nbsp;
                                                   </td>
                                           </tr>
     
    						res_choixSalle.Close
     
                           </table>
                           </center>
                           </form>
                           </div>
                   </div>
           </div>
    </body>
    </html>
     
     
    <script language="Javascript">
    var arrayLignes = document.getElementById("Reservations").rows; 						//l'array est stocké dans une variable
    var longueur = arrayLignes.length;													//on peut donc appliquer la propriété length
    var i=1; 																			//on définit un incrémenteur qui représentera la clé
     
    while(i<longueur)
    {
     
    	if(i === 2) 																		 // si la ligne est égal à 2 
    	{
    		arrayLignes[i].style.backgroundColor = "#008080";							    // alors la ligne 2 prend la couleur verte
    	}	
    	else if(i % 2 == 0)																   // si la clé est paire
    	{
    		arrayLignes[i].style.backgroundColor = "#bdcbf5";							  // alors la ligne prendra la couleur violet claire
    	}
    	else 																			 // elle est impaire
    	{
    		arrayLignes[i].style.backgroundColor = "#829eeb";							// alors la ligne prendra la couleur violet foncé
    	}
     
    	i++;
    }
     
     
    </script>
     
     
    <%
    ' On récupére les infos du formulaire de saisie
     
    	'sql = ""																					'Pour les espaces... mais vu que c'est dans une liste déroulante pas besoin
     
    	Set rs_salle = Server.CreateObject("ADODB.Recordset")
     
    	sql = "Select * from Salle S " 																'Sélectionner tous les éléments de la salle dans la table salle
    	sql = sql & "where 1 = 1 "																	'pour que la condition soit toujours vraie
     
     
    	if Len(Trim(request.form("S_Lieu"))) > 0 then			      							'Si l'utilisateur choisi un lieu 
    		sql = sql & "and H_Lieu = '" & request.form("S_Lieu") & "' "							'alors on rajoute le lieu à Where
    	end if
     
    	if Len(Trim(request.form("S_Cap"))) > 0 then				  							'Si l'utilisateur choisi une capacité 
    		sql = sql & "and H_Cap = '" & request.form("S_Cap") & "' " 								'alors on rajoute la capacité à Where
    	end if
     
    	if Len(Trim(request.form("S_Visio"))) > 0 then 				  							'Si l'utilisateur veut la visio
    		sql = sql & "and H_Visio = '" & request.form("S_Visio") & "' "							'alors on rajoute la visio à Where  			
    	end if
     
    	sql = "order by ASC, R_Visio = 1"  															'ordonné par ordre alphabetique et par salle visio
     
    	if not rs_choixSalle.eof then																'Si le choix correspond à une requete
     
    		do while not rs_choix.eof
     
    			response.write "<tr><td>" 
    			& rs_choixSalle("S.Nom")
     
    			& "</td><td> " 
    			& rs_choixSalle("S.Etage") 		
     
    			& "</td><td> " 
    			& rs_choixSalle("S.Lieu")
     
    			& "</td><td> " 
    			& rs_choixSalle("S.Capacite") 
     
    			& "</td><td> " 
    			& rs_choixSalle("S.Visio") 
     
    			& "</td><td align=""center""> <input type=""radio"" name=""R_Salle"" value="" " 
    			& rs_choixSalle("ID_Salle") 
     
    			& " "" /></td></tr>" 
     
    			rs_choixSalle.MoveNext
     
    		loop
     
    	else																					'Sinon afficher un message d'erreur.
     
    		response.write "<tr><td colspan=""3"" align=""center""><br/><b><font color=""red"">Aucune salle ne correspond à vos critères, veuillez réitérer votre recherche.</font></b><br/>&nbsp;</td></tr>"
     
    	end if
     
    	rs_salle.Open SQL,bd,3,3
     
    	'Demande si l'utilisateur veut que sa salle soit affichée sur l'écran de l'accueil
     
    	if Len(request("CK_Affichage")) > 0 then											'Si oui
    			sql = sql & "and H_Affichage = '" & request.form("CK_Affichage") & " ' "    'alors on rajoute l'affichage à Where
    	end if
     
    %>
    Avez vous une idée de ce qui pourrait ne pas aller bien ?

  11. #31
    Expert confirmé
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Points : 4 047
    Points
    4 047
    Par défaut
    Citation Envoyé par Yana20 Voir le message
    Bonjour !

    Je ne comprend pas du tout, car à présent que mon serveur est réparé, j'ai pu tester le fichier, et il ne marche pas... Je cherche la raison, mais je ne comprend pas du tout, car il me semblait que j'avais tout mis ! Le html de la saisie marche, il n'y a aucun problème là-dessus, mais dès que je clique sur valider, il me dise qu'il y a une erreur. Et si je tape directement l'adresse url de choix.asp elle me donne un message d'erreur 500.
    "il ne marche pas" => mais encore !
    "il y a une erreur" => laquelle !

    Il te manque des signes "=" à plusieurs endroits :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <input type="hidden" name="H_Affichage" value="<%=request.form("CK_Affichage")%>"/>
    Tu instancies un recordset :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Set rs_salle = Server.CreateObject("ADODB.Recordset")
    et ensuite, tu testes ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    if not rs_choixSalle.eof then																'Si le choix correspond à une requete
     
    		do while not rs_choix.eof
     
    			response.write "<tr><td>" 
    			& rs_choixSalle("S.Nom")
    rs_choixSalle et rs_choix sortent d'où ?
    D'autant qu'entre l'instanciation du recordset et le test de not eof, tu n'exécutes aucune requête.

  12. #32
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 28
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 90
    Points : 8
    Points
    8
    Par défaut
    Désolée, j'ai posté un peu trop rapidement mon code, et j'étais justement en train de corriger les erreurs que tu as cité.

    Je pense que ça doit être dans cette partie qu'il y a un problème mais je ne sais pas où.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    ' On récupère les infos du formulaire de saisie  
    	'sql = ""																					'Pour les espaces... mais vu que c'est dans une liste déroulante pas besoin
     
    	Set rs_choix = Server.CreateObject("ADODB.Recordset")
    	sql = "Select * from Salle S " 																'Sélectionner tous les éléments de la salle dans la table salle
    	sql = sql & "where 1 = 1 "																	'pour que la condition soit toujours vraie
     
    	if Len(Trim(request.form("S_Lieu"))) > 0 then			      							'Si l'utilisateur choisi un lieu 
    		sql = sql & "and H_Lieu = '" & request.form("S_Lieu") & "' "							'alors on rajoute le lieu Ã* Where
    	end if
     
    	if Len(Trim(request.form("S_Cap"))) > 0 then				  							'Si l'utilisateur choisi une capacité 
    		sql = sql & "and H_Cap = '" & request.form("S_Cap") & "' " 								'alors on rajoute la capacité Ã* Where
    	end if
     
    	if Len(Trim(request.form("S_Visio"))) > 0 then 				  							'Si l'utilisateur veut la visio
    		sql = sql & "and H_Visio = '" & request.form("S_Visio") & "' "							'alors on rajoute la visio Ã* Where  			
    	end if
     
    	sql = "order by ASC, R_Visio = 1"  															'ordonne par ordre alphabetique et par salle visio
     
    	if not rs_choix.eof then																'Si le choix correspond Ã* une requete
     
    		do while not rs_choix.eof
     
    			response.write "<tr><td>" & rs_choix("S.Nom") & "</td><td> " & rs_choix("S.Etage") & "</td><td> " & rs_choix("S.Lieu") & "</td><td> " & rs_choix("S.Capacite") & "</td><td> " & rs_choix("S.Visio") & "</td><td align=""center""> <input type=""radio"" name=""R_Salle"" value="" " & rs_choix("ID_Salle") & " "" /></td></tr>" 
    			rs_choix.MoveNext
     
    		loop
     
    	else																					'Sinon afficher un message d'erreur.
     
    		response.write "<tr><td colspan=""3"" align=""center""><br/><b><font color=""red"">Aucune salle ne correspond à* vos critères, veuillez réitérer votre recherche.</font></b><br/>&nbsp;</td></tr>"
     
    	end if
    	rs_choix.Open SQL,bd,3,3
     
    	'Demande si l'utilisateur veut que sa salle soit affichée sur l'écran de l'accueil
     
    	if Len(request("CK_Affichage")) > 0 then											'Si oui
    			sql = sql & "and H_Affichage = '" & request.form("CK_Affichage") & " ' "    'alors on rajoute l'affichage à* Where
    	end if
    J'avais aussi une question au sujet de rs_choix.Open SQL,bd,3,3... j'ai trouvé ça dans un code d'un autre fichier, mais je ne sais pas à quoi ça sert.

  13. #33
    Expert confirmé
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Points : 4 047
    Points
    4 047
    Par défaut
    J'ai modifié ton code.

    Le principe :

    - Construire la requête SQL en fonction des choix de l'utilisateur
    - Exécuter la requête pour alimenter le recordset => rs_choix.Open SQL,bd,3,3
    - Tester si on récupère des données => if not rs_choix.eof then
    - Parcourir le recordset pour afficher,les données => do while not rs_choix.eof

    Pour être "propre" :
    - Fermer le recordset après la boucle d'affichage => rs_choix.close
    - Détruire l'instance du recordset => Set rs_choix = Nothing

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
     
    ' On récupère les infos du formulaire de saisie
    	'sql = ""																					'Pour les espaces... mais vu que c'est dans une liste déroulante pas besoin
     
    	Set rs_choix = Server.CreateObject("ADODB.Recordset")
    	sql = "Select * from Salle S " 																'Sélectionner tous les éléments de la salle dans la table salle
    	sql = sql & "where 1 = 1 "																	'pour que la condition soit toujours vraie
     
    	if Len(Trim(request.form("S_Lieu"))) > 0 then			      							'Si l'utilisateur choisi un lieu 
    		sql = sql & "and H_Lieu = '" & request.form("S_Lieu") & "' "							'alors on rajoute le lieu Ã* Where
    	end if
     
    	if Len(Trim(request.form("S_Cap"))) > 0 then				  							'Si l'utilisateur choisi une capacité 
    		sql = sql & "and H_Cap = '" & request.form("S_Cap") & "' " 								'alors on rajoute la capacité Ã* Where
    	end if
     
    	if Len(Trim(request.form("S_Visio"))) > 0 then 				  							'Si l'utilisateur veut la visio
    		sql = sql & "and H_Visio = '" & request.form("S_Visio") & "' "							'alors on rajoute la visio Ã* Where  			
    	end if
     
    	'Demande si l'utilisateur veut que sa salle soit affichée sur l'écran de l'accueil
     
    	if Len(request("CK_Affichage")) > 0 then											'Si oui
    			sql = sql & "and H_Affichage = '" & request.form("CK_Affichage") & " ' "    'alors on rajoute l'affichage à* Where
    	end if
     
    	sql = "order by ASC, R_Visio = 1"  															'ordonne par ordre alphabetique et par salle visio
     
    	rs_choix.Open SQL,bd,3,3
     
    	if not rs_choix.eof then																'Si le choix correspond Ã* une requete
     
    		do while not rs_choix.eof
     
    			response.write "<tr><td>" & rs_choix("S.Nom") & "</td><td> " & rs_choix("S.Etage") & "</td><td> " & rs_choix("S.Lieu") & "</td><td> " & rs_choix("S.Capacite") & "</td><td> " & rs_choix("S.Visio") & "</td><td align=""center""> <input type=""radio"" name=""R_Salle"" value="" " & rs_choix("ID_Salle") & " "" /></td></tr>"
    			rs_choix.MoveNext
     
    		loop
     
    	else																					'Sinon afficher un message d'erreur.
     
    		response.write "<tr><td colspan=""3"" align=""center""><br/><b><font color=""red"">Aucune salle ne correspond à* vos critères, veuillez réitérer votre recherche.</font></b><br/>&nbsp;</td></tr>"
     
    	end if

  14. #34
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 28
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 90
    Points : 8
    Points
    8
    Par défaut
    Merci beaucoup, mais visiblement ce n'est même pas sur le choix.asp que ça coince mais le fichier saisie.asp (où il y a presque pas de code autre que HTML !)

    Voilà donc le code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
     
     
    <%@ Language=VBScript %>
    <%If (session("ID_User") = "") Then
    	response.redirect "../index.asp"
    End if%>
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html>
    <head>
    	<title>Projet </title>
    	<link rel="stylesheet" type="text/css" href="../../style.css" />
    	<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    	<script language="Javascript" src="../../javascript/javascript.js"></script>
    	<script language="Javascript">
    	/*		Description: cette fonction permet de signaler à* l'utlisateur les éventuelles erreurs de saisies.	*/
     
    	function Valider()
    	{
    	    if (document.F_Res.Comment.value.length < 3)
    		{
    			alert('Motif obligatoire !');
    			document.F_Res.Comment.focus();
    		}
    		else
    		{
    			document.F_Res.submit();
    		}
    	}
    	</script>
    </head>
    <body>
    	<div id="conteneur">		
    		<!-- #include file="../../javascript/calendrier1mois.asp"-->
    		<!-- #include file="../../MiseEnForme/header.asp"-->
    		<!-- #include file="../../MiseEnForme/menuHorizontal.asp"-->
     
    		<div id="conteneur2">		
    			<!-- #include file="../../MiseEnForme/menuVerticalPrive.asp"-->
    			<div id="centre">
    			<center>
    			<form name="F_Res" action="./Reservation/choix.asp" method="post">
    			<table class="corps">
    				<tr>
    					<td colspan="3" class="entete">
    						Réservation d'une salle par critères
    					</td>
    				</tr>
    				<tr><td>&nbsp;</td></tr>
     
    				<td>
    					<form method="post" >
    						<Font color = #000000 Style= "margin-left:15px"> Lieu: <SELECT id="lieu" name="S_Lieu" style= "width:135px; margin-left:5px">
    													<OPTION value="1"> Non-renseigné
    													<OPTION value="2"> A
    													<OPTION value="3"> B
    													<OPTION value="4"> C
    													<OPTION value="5"> E							
    													<OPTION value="6"> F
    													<OPTION value="7"> G							
    													<OPTION value="8"> H
    													<OPTION value="9"> I
     
    												</SELECT>
     
    						<Font color = #000000 Style= "margin-left:25px">Capacité: <SELECT id="capacite" name="S_Cap" style= "width:135px; margin-left:10px">
    													<OPTION value="1"> Non-renseigné
    													<OPTION value="2"> 3 personnes
    													<OPTION value="3"> 8 personnes
    													<OPTION value="4"> 10 personnes
    													<OPTION value="5"> 11 personnes
    													<OPTION value="6"> 12 personnes
    													<OPTION value="7"> 15 personnes
    													<OPTION value="8"> 19 personnes
    													<OPTION value="9"> 20 personnes
    													<OPTION value="10"> 22 personnes
    													<OPTION value="11"> 23 personnes
    													<OPTION value="12"> 40 personnes
    												</SELECT>
     
    						<Font color = #000000 Style= "margin-left:25px">Salle visio: 	<input type="radio" name="S_Visio" value="Oui" /> Oui 
    																						<input type="radio" name="S_Visio" value="SO" checked /> Sans Opinion
     
    					</form>	
    				</td>						
    				<tr>
    					<td>
    						<Font color = #FF0000 Style="margin-left:15px;" >Raison : </font> 
    						<textarea  name="Comment" rows="4" cols="39" style= "margin-left:30px"> </textarea>
    					</td>
    				</tr>				
    				<tr>
    					<td>
    						</br> <input type="checkbox" name="CK_Affichage" value="Oui" checked Style="margin-left:11px;" /> Pour que votre réservation <b>n'apparaisse pas</b> sur l'écran de l'accueil, <b>décochez</b> cette case.</b>
    					</td>
    				</tr>
    				<tr><td>&nbsp;</td></tr>
    				<tr>
    					<td colspan="3" align="center">
    						<input type="button" value="Valider" name="B_Valider" onClick="Valider();" />
    						&nbsp;&nbsp;
    						<input type="reset" value="Annuler" name="B_Reset" />
    					</td>
    				</tr>
    				<tr><td>&nbsp;</td></tr>
    			</table>
    			</form>
    			</center>
    			</div>
    		</div>
    	</div>
    </body>
    </html>
    Le message d'erreur qu'on me donne est le suivant:

    Ligne 588 (alors qu'il n'y a pas autant de ligne donc je ne comprend pasà
    Caractère: 1
    Erreur: Object expected
    Code: 0
    URL: http://........../saisie.asp

  15. #35
    Expert confirmé
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Points : 4 047
    Points
    4 047
    Par défaut
    Pour localiser cette ligne 588, fais plutôt un clic droit sur ta page et affiche la source.

  16. #36
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 28
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 90
    Points : 8
    Points
    8
    Par défaut
    ça viendrait de la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="button" value="Valider" name="B_Valider" onClick="Valider();" />
    sans compter que du coup, le message d'erreur "Motif obligatoire" ne s'affiche pas si je le laisse vide...

  17. #37
    Expert confirmé
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Points : 4 047
    Points
    4 047
    Par défaut
    A priori, l'erreur vient du fait que la fonction javascript ne reconnait pas le champ Comment.
    Tu ouvres la balise <form> à la line 42, mais tu en ouvres une seconde à la ligne 52.
    Tu refermes la seconde balise </form> à la ligne 84, et tu créés ton textarea après cette fermeture.

    Supprime les lignes 52 et 84.

  18. #38
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 28
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 90
    Points : 8
    Points
    8
    Par défaut
    ça marche pour ce qui est de me diriger vers la page choix. Le problème c'est que ça ne m'affiche rien alors que ça devrait. Qu'il me mette le message d'erreur suivant:

    ADODB.Recordset erreur '800a0e78'

    Cette opération n'est pas autorisée si l'objet est fermé.

    /Autanv4/AutanPrive/Reservation/choix.asp, ligne 156

    Que la ligne en question renvoie à une fonction:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     function ds_gettop(el) 
    {
    	var tmp = el.offsetTop;
    	el = el.offsetParent
    	while(el) 
    	{
    		tmp += el.offsetTop;
    		el = el.offsetParent;
    	}
    	return tmp;
    }
    Très exactement el = el.offsetParent

    Je pense pas que ça vienne de ce fichier, mais plutôt du code des deux fichiers, je vais voir ça... si tu as une idée n'hésite pas

  19. #39
    Expert confirmé
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Points : 4 047
    Points
    4 047
    Par défaut
    Tu peux reposter la dernière version de choix.asp, stp ?

  20. #40
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 28
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 90
    Points : 8
    Points
    8
    Par défaut
    Oui, bien sûr !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    <%@ Language=VBScript %>
     
    <%if (session("ID_User") = "") then
           response.redirect "../index.asp"
    End if%>
     
    <html>
    <head>
    <!-- #include file="../../parametres.asp"-->
           <title> Projet </title>
           <link rel="stylesheet" type="text/css" href="../../style.css" />
    	   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
           <script language="Javascript" src="../../javascript/javascript.js"></script>
     
    <script language="Javascript">
    function Dispo(type)
    {	
    	var salDi = "";
           for (i=0; i < document.F_Reserv.elements.length; i++)
           {
                   if (document.F_Reserv.elements[i].name.indexOf("R_Salle") >= 0 )
                   {
                           if (document.F_Reserv.elements[i].checked)
                           {
                                   sup_elt = salDi + document.F_Reserv.elements[i].value;
                           }
                   }
           }
           if (salDi.length <= 0)
           {
                   alert("Vous devez sélectionner une salle pour réserver !");
           }
          else
           {
    		   document.F_Reserv.submit();
           }
    }
     
     
     
    var arrayLignes = document.getElementById("Reservations").rows; 						//l'array est stocké dans une variable
    var longueur = arrayLignes.length;													//on peut donc appliquer la propriété length
    var i=1; 																			//on définit un incrémenteur qui représentera la clé
     
    while(i<longueur)
    {
     
    	if(i === 2) 																		 // si la ligne est égal Ã* 2 
    	{
    		arrayLignes[i].style.backgroundColor = "#008080";							    // alors la ligne 2 prend la couleur verte
    	}	
    	else if(i % 2 == 0)																   // si la clé est paire
    	{
    		arrayLignes[i].style.backgroundColor = "#bdcbf5";							  // alors la ligne prendra la couleur violet claire
    	}
    	else 																			 // elle est impaire
    	{
    		arrayLignes[i].style.backgroundColor = "#829eeb";							// alors la ligne prendra la couleur violet foncé
    	}
    	i++;
    }
    </script>
    </head>
    <body>
     <div id="conteneur">
                   <!-- #include file="../../javascript/calendrier1mois.asp"-->
                   <!-- #include file="../../MiseEnForme/header.asp"-->
                   <!-- #include file="../../MiseEnForme/menuHorizontal.asp"-->
                   <div id="conteneur2">
                           <!-- #include file="../../MiseEnForme/menuVerticalPrive.asp"-->
                           <div id="centre">
                           <form name="F_Reserv" method="post" action="recapReservationSalle.asp">
                           <input type="hidden" name="H_Lieu" value="<%=request.form("S_Lieu")%>" />
                           <input type="hidden" name="H_Cap" value="<%=request.form("S_Cap")%>" />
    					   <input type="hidden" name="H_Visio" value= "<%=request.form("S_Visio")%>"/>
    					   <input type="hidden" name="H_Comment" value="<%=request.form("T_Comment")%>" />
    					   <input type="hidden" name="H_Affichage" value="<%=request.form("CK_Affichage")%>"/>
    					   <input type="hidden" name="H_Salle" />
                           <center>
                           <b> Réserver une salle </b>
                           <br/>
    						<!-- response.write rs_choixSalle("Salle") & rs_choixSalle("Lieu") & rs_choixSalle("S_Cap") & rs_choixSalle("S_Visio") %> -->
     
    				       <br/><br/>
                           <table class="miniCorps" width="800">
                                   <tr>
                                           <td colspan="6" class="entete"> Liste des salles disponibles </td>
                                   </tr>
                                   <tr align="center">
                                           <td width="175">
                                                   <b>Salle</b>
                                           </td>
     
    									   <td width="175">
                                                   <b>Etage</b>
                                           </td>
     
    									   <td width="175">
                                                   <b>Localisation</b>
                                           </td>
     
    									   <td width="175">
                                                   <b>Capacité</b>
                                           </td>
     
    									   <td width="175">
                                                   <b>Info</b>
                                           </td>	
     
                                           <td width="100">
                                                   <b>Réserver</b>
                                           </td>
                                   </tr>
     
                                           <tr><td>&nbsp;</td><tr>
                                           <tr>
                                                   <td colspan="6" align="center">
                                                           <input type="button" name="B_Dispo" value="Voir les disponibilités" onclick="Dispo('');" />
                                                           <br/>&nbsp;
                                                   </td>
                                           </tr>
     
    						</table>
                           </center>
                           </form>
                           </div>
                   </div>
           </div>
    </body>
    </html>
     
    <%
    ' On récupère les infos du formulaire de saisie
    	'sql = ""																					'Pour les espaces... mais vu que c'est dans une liste déroulante pas besoin
     
    	Set rs_choix = Server.CreateObject("ADODB.Recordset")
    	sql = "Select * from Salle S " 																'Sélectionner tous les éléments de la salle dans la table salle
    	sql = sql & "where 1 = 1 "																	'pour que la condition soit toujours vraie
     
    	if Len(Trim(request.form("S_Lieu"))) > 0 then			      							'Si l'utilisateur choisi un lieu 
    		sql = sql & "and H_Lieu = '" & request.form("S_Lieu") & "' "							'alors on rajoute le lieu à Where
    	end if
     
    	if Len(Trim(request.form("S_Cap"))) > 0 then				  							'Si l'utilisateur choisi une capacité 
    		sql = sql & "and H_Cap = '" & request.form("S_Cap") & "' " 								'alors on rajoute la capacité à Where
    	end if
     
    	if Len(Trim(request.form("S_Visio"))) > 0 then 				  							'Si l'utilisateur veut la visio
    		sql = sql & "and H_Visio = '" & request.form("S_Visio") & "' "							'alors on rajoute la visio à Where  			
    	end if
     
    	sql = "order by ASC, R_Visio = 1"  														'ordonne par ordre alphabetique et par salle visio
     
     	if not rs_choix.eof then																'Si le choix correspond à* une requete
     
    		do while not rs_choix.eof
     
    			response.write "<tr><td>" & rs_choix("S.Nom") & "</td><td> " & rs_choix("S.Etage") & "</td><td> " & rs_choix("S.Lieu") & "</td><td> " & rs_choix("S.Capacite") & "</td><td> " & rs_choix("S.Visio") & "</td><td align=""center""> <input type=""radio"" name=""R_Salle"" value="" " & rs_choix("ID_Salle") & " "" /></td></tr>" 
    			rs_choix.MoveNext
     
    		loop
     
    	else																					'Sinon afficher un message d'erreur.
     
    		response.write "<tr><td colspan=""3"" align=""center""><br/><b><font color=""red"">Aucune salle ne correspond à* vos critères, veuillez réitérer votre recherche.</font></b><br/>&nbsp;</td></tr>"
     
    	end if
    	rs_choix.Open SQL,bd,3,3
     
    	'Demande si l'utilisateur veut que sa salle soit affichée sur l'écran de l'accueil
     
    	if Len(request("CK_Affichage")) > 0 then											'Si oui
    			sql = sql & "and H_Affichage = '" & request.form("CK_Affichage") & " ' "    'alors on rajoute l'affichage Ã* Where
    	end if 
    %>

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 8 PremièrePremière 123456 ... DernièreDernière

Discussions similaires

  1. Réponses: 1
    Dernier message: 22/05/2009, 16h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo