%Option Explicit%>
<%
Response.CacheControl = "no-cache"
Response.AddHeader "Pragma", "no-cache"
Response.AddHeader "cache-control", "no-store"
Response.Expires = -1
%>
<%
Dim MonDSN, MaConnexion
MonDSN = "DBQ=" & Server.MapPath("../../../../database/livredor.mdb") & ";Driver={Microsoft Access Driver (*.mdb)};"
Set MaConnexion = Server.CreateObject("ADODB.Connection")
MaConnexion.ConnectionTimeout = 30
MaConnexion.CommandTimeout = 30
MaConnexion.Open MonDSN
Dim strCAPTCHA
Dim SessionCAPTCHA
Dim NumPageEnCours
Dim TaillePage
Dim MaxPages
Dim MaxEnrgs
Dim CombienDeRecs
Dim RecordsetLivreOr
Dim MessagePostOK
Dim RequeteLivreOr
Session.LCID = 2060
Function CheckCAPTCHA(valCAPTCHA)
SessionCAPTCHA = Trim(Session("CAPTCHA"))
Session("CAPTCHA") = vbNullString
if Len(SessionCAPTCHA) < 1 then
CheckCAPTCHA = False
exit function
end if
if CStr(SessionCAPTCHA) = CStr(valCAPTCHA) then
CheckCAPTCHA = True
else
CheckCAPTCHA = False
end if
End Function
Function AfficheFormLivreDor (RecupRequest)
' MessagePostOK = 0 => Récupère les Request et les met dans les champs (en cas d'erreur de saisie par exmple)
' MessagePostOK = 1 => Champs vide
%>
Pour nous encourager à continuer notre travail, laissez-nous un petit mot ...
N'oubliez d'entrer le code de vérification pour valider votre message.
<%
End Function
Function Livre2Txt(LeTxt)
Dim TxtTmp
TxtTmp = LeTxt
TxtTmp = Replace(TxtTmp,"<",">")
TxtTmp = Replace(TxtTmp,">",">")
TxtTmp = Replace(TxtTmp,vbCrLf,"
")
Livre2Txt = TxtTmp
End Function
Function AfficherLivreDor ()
NumPageEnCours = Request("quelpage")
If NumPageEnCours = "" then NumPageEnCours = 1
TaillePage=10
' Construction de la requete SQL :
' ------------------------------
RequeteLivreOr = "SELECT * FROM livredor ORDER BY LivreDate DESC, LivreHeure DESC"
' Recup des donnees dans la base :
' ------------------------------
Set RecordsetLivreOr = Server.CreateObject("ADODB.Recordset")
RecordsetLivreOr.cursorlocation = aduseclient
RecordsetLivreOr.cachesize = 5
RecordsetLivreOr.Open RequeteLivreOr,MaConnexion
RecordsetLivreOr.pagesize = TaillePage
MaxPages = Cint(RecordsetLivreOr.pagecount)
MaxEnrgs = Cint(RecordsetLivreOr.pagesize)
If Not RecordsetLivreOr.EOF Then RecordsetLivreOr.absolutepage = NumPageEnCours
CombienDeRecs=0
%>
Mon Livre d'Or Cliquez ici pour signer le livre d'or
|
<%If RecordsetLivreOr.EOF Then%>
Le livre est vide pour l'instant
|
<%Exit Function%>
<%Else%>
<%Do UNTIL RecordsetLivreOr.EOF OR CombienDeRecs >= MaxEnrgs%>
| Message de "><%=Livre2Txt(RecordsetLivreOr("LivreNom"))%> le <%=WeekDayName(WeekDay(RecordsetLivreOr("LivreDate")))%> <%=Day(RecordsetLivreOr("LivreDate"))%> <%=MonthName(Month(RecordsetLivreOr("LivreDate")))%> <%=Year(RecordsetLivreOr("LivreDate"))%> à <%=RecordsetLivreOr("LivreHeure")%> |
| <%=Livre2Txt(RecordsetLivreOr("LivreComment"))%> |
| |
<%
RecordsetLivreOr.MoveNext
CombienDeRecs = CombienDeRecs + 1
Loop%>
<%Call PagingBar()%> |
<%End If%>
<%
RecordsetLivreOr.Close
Set RecordsetLivreOr = Nothing
End Function
Function SignerLivreDor()
' Recuperation des donnees utilisateur :
' ------------------------------------
Dim strNom, strEMail, strComment, strIP, Item
strNom = Replace(Request.Form("Nom"), "'", "''")
strEMail = Replace(Request.Form("EMail"), "'", "''")
strComment = Replace(Request.Form("Comment"), "'", "''")
strCAPTCHA = Trim(Request.Form("strCAPTCHA"))
strIP = Request.ServerVariables("REMOTE_ADDR")
if CheckCAPTCHA(strCAPTCHA) = false then
response.redirect ("error.htm")
SignerLivreDor = False
Exit Function
End If
if right(strEMail,10) = "@takoe.com" then%>
Permission denied
<%
SignerLivreDor = False
Exit Function
End If
'Verficiation de la validite des informations :
'--------------------------------------------
For Each Item In Request.Form
If Request.Form(Item) = "" Then%>
Vous n'avez pas saisie tous les champs, veuillez saisir tous les champs.
<%
SignerLivreDor = False
Exit Function
%>
<%End If%>
<%Next%>
<%If InStr(strEmail,"@") = 0 OR InStr(strEmail,".") = 0 Then%>
<%=Request.Form("EMail")%> ne semble pas être une e-mail valide veuillez la resaisir.
<%
SignerLivreDor = False
Exit Function
%>
<%End If%>
<%
' Construction de la requete SQL :
' ------------------------------
RequeteLivreOr = "INSERT INTO livredor (LivreNom, LivreEMail, LivreComment, LivreIP)"
RequeteLivreOr = RequeteLivreOr & " VALUES('" & strNom & "', '" & strEMail & "', '" & strComment &"', '" & strIP &"')"
' Ajout des donnees dans la base :
' ------------------------------
MaConnexion.Execute RequeteLivreOr
If Err.Number = 0 Then
SignerLivreDor = True
Else
SignerLivreDor = False
End If
End Function
%>
<%
Sub PagingBar()
Dim StrHTML
Dim PageEnCours
Dim CompteurFin, CompteurDebut
Dim i, LesVars, Item
If MaxPages <> 0 Then
PageEnCours = Request.ServerVariables("script_name")
Response.Write ""
Response.Write ""
Response.Write ""
LesVars = ""
For each Item In Request.Form
If LCase(Item) <> "quelpage" And LCase(Item) <> "taillepage" Then
LesVars = LesVars & "&" & LCase(Item) & "=" & server.URLencode(Request.Form(Item))
End If
Next
For each Item In Request.QueryString
If LCase(Item) <> "quelpage" And LCase(Item) <> "taillepage" Then
LesVars = LesVars & "&" & LCase(Item) & "=" & server.URLencode(Request.QueryString(Item))
End If
Next
If (NumPageEnCours mod 10) = 0 Then
CompteurDebut = PageEnCours - 9
Else
CompteurDebut = NumPageEnCours - (NumPageEnCours mod 10) + 1
End If
CompteurFin = CompteurDebut + 9
If CompteurFin > MaxPages Then CompteurFin = MaxPages
If CompteurDebut <> 1 Then
StrHTML = "Première page : "
Response.Write StrHTML
StrHTML = "10 pages Précédente "
Response.Write StrHTML
End If
Response.Write "["
For i = CompteurDebut To CompteurFin
If cstr(i) <> Cstr(NumPageEnCours) Then
StrHTML = "Page " & i & ""
Else
StrHTML = "Page " & i & ""
End If
Response.Write StrHTML
If i <> CompteurFin Then Response.Write " "
Next
Response.Write "]"
If CompteurFin <> MaxPages Then
StrHTML = " 10 pages Suivantes"
Response.Write StrHTML
StrHTML = " : Dernière page"
Response.Write StrHTML
End If
Response.Write " "
Response.Write " | "
Response.Write "
"
End If
End Sub
%>
Livre d'or
<%MessagePostOK = 1%>
<%If Request("Signer") = 1 Then%>
<%If SignerLivreDor() = True Then%>
Merci d'avoir signé notre livre d'or.
<%MessagePostOK = 1%>
<%Else%><%MessagePostOK = 0%>
Il y a eu un erreur.
<%End If%>
<%End If%>
<%Call AfficherLivreDor()%>
<%Call AfficheFormLivreDor(MessagePostOK)%>
<%
MaConnexion.Close
Set MaConnexion = Nothing
%>