Bonjour,
Normalement ça devrait être ici pour poster mon sujet, en espérant que l'ASP soit un peu connu dans la région ^^
Alors voilà je vous explique: je dois améliorer une application de réservations de salles. Celle qui existe consiste à ce que l'utilisateur rentre une date de début et de fin, ainsi qu'une heure de début et de fin avec un message expliquant pourquoi il réserve.
Je dois le coder en ASP (VB) que j'apprend sur le tas (contrainte supplémentaire donc car je perds beaucoup de temps).
Moi je dois faire une application "par critères" pour que l'utilisateur rentre non pas des dates mais des critères: il y a donc sa localisation (ville), sa capacité (nb_personne), si c'est une salle informatique ou non (sélecteur oui/sans importance) et la raison de sa réservation. C'est le fichier saisie.asp . Après avoir validé, l'utilisateur est dirigé vers la page choix.asp où il y a un tableau avec la liste des salles qui existent en fonction des critères qu'il a rentré.
Le premier problème est le suivant: je voudrais afficher un message d'erreur s'il n'existe aucune salle, et pour ça je ne sais d'une part pas où le faire (est-ce dans saisie.asp ou dans choix.asp) et pas le mettre en forme (requête sql).
Ensuite, pourriez vous me donner votre opinion sur mon code (aurais-je fais des erreurs ?) car mon server ne marche pas... du coup je ne peux rien tester et je code à l'aveugle (minimum jusqu'à lundi).
Fichier saisie.asp
Fichier choix.asp
Je précise que ma base de données regroupent les tables suivantes: User, User_Droits, Salles, Reservations.
Merci d'avance
Normalement ça devrait être ici pour poster mon sujet, en espérant que l'ASP soit un peu connu dans la région ^^
Alors voilà je vous explique: je dois améliorer une application de réservations de salles. Celle qui existe consiste à ce que l'utilisateur rentre une date de début et de fin, ainsi qu'une heure de début et de fin avec un message expliquant pourquoi il réserve.
Je dois le coder en ASP (VB) que j'apprend sur le tas (contrainte supplémentaire donc car je perds beaucoup de temps).
Moi je dois faire une application "par critères" pour que l'utilisateur rentre non pas des dates mais des critères: il y a donc sa localisation (ville), sa capacité (nb_personne), si c'est une salle informatique ou non (sélecteur oui/sans importance) et la raison de sa réservation. C'est le fichier saisie.asp . Après avoir validé, l'utilisateur est dirigé vers la page choix.asp où il y a un tableau avec la liste des salles qui existent en fonction des critères qu'il a rentré.
Le premier problème est le suivant: je voudrais afficher un message d'erreur s'il n'existe aucune salle, et pour ça je ne sais d'une part pas où le faire (est-ce dans saisie.asp ou dans choix.asp) et pas le mettre en forme (requête sql).
Ensuite, pourriez vous me donner votre opinion sur mon code (aurais-je fais des erreurs ?) car mon server ne marche pas... du coup je ne peux rien tester et je code à l'aveugle (minimum jusqu'à lundi).
Fichier saisie.asp
Code:
<%@ 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 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> </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 Importance
</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> </td></tr>
<tr>
<td colspan="3" align="center">
<input type="button" value="Valider" name="B_Valider" onClick="Valider();" />
<input type="reset" value="Annuler" name="B_Reset" />
</td>
</tr>
<tr><td> </td></tr>
</table>
</form>
</center>
</div>
</div>
</div>
</body>
</html>
Fichier choix.asp
Code:
<%@ 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> </td><tr>
<tr>
<td colspan="6" align="center">
<input type="button" name="B_Dispo" value="Voir les disponibilités" onclick="Dispo('');" />
<br/>
</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
<%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 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.
'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%>
%>
Je précise que ma base de données regroupent les tables suivantes: User, User_Droits, Salles, Reservations.
Merci d'avance