Un livre d'or (version acces)

Soyez le premier à donner votre avis sur cette source.

Vue 9 735 fois - Téléchargée 1 232 fois

Description

Un livre d'or avec un base de données et un seule page (index.asp). Il suffit juste de créer une base de donnée ac une seule table : T_guest_book
Soyez indulgent c'est ma première réalisation.

Source / Exemple :


<%
msg=""
Afficher=25 ' afficher les 25 derniers messages
select case request("action")

Case "Envoyer"

	If trim(request("Nom"))="" OR trim(request("commentaire"))="" then
		msg="<font face=arial size=2 color=red>Erreur : <br> Remplissez tous les champs </font><br>"
	end if

	if msg="" then ' tous les champs ont été remplis correctement

		' Ouverture de la base et table T_guest_book
	    Set conn = Server.CreateObject("ADODB.Connection")
		connstring="DRIVER={Microsoft Access Driver (*.mdb)}; " & "DBQ=" & Server.MapPath(".") & "/db.mdb" 
		conn.Open connstring 
		
		'Requête pour sélectionner tous les messages
		sql = "SELECT *  FROM T_guest_book"
		
		'Création d'un objet message pour inscrire le message dans la base de données
		Set message = Server.CreateObject("ADODB.Recordset")
	    message.Open sql, conn, 3, 3
		message.AddNew
		message.fields('"nom"')=trim(request("nom"))
		message.fields('"message"')=trim(request("commentaire"))
		message.fields('"date"')=now()
		message.Update
		
		'Fermeture des objets créés
		message.close
		set message=nothing
		conn.close
		set conn=nothing
		
		' Redirection vers index.asp pour faire apparaître le message envoyé
		response.redirect "index.asp"
	end if

end select

%>
<html>
 <head>
  <title>Livre d'or</title>
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  <meta name="GENERATOR" content="Visual Studio 6.0">
 </head>

 <body bgcolor="#66ccff">
<%
'Connexion à la base de données
Set Conn = Server.CreateObject("ADODB.Connection")
Connstring="DRIVER={Microsoft Access Driver (*.mdb)}; " & "DBQ=" & Server.MapPath(".") & "/db.mdb" 
Conn.Open connstring

%>
<%  
' sélection de la table T_guest_book classée par date
sql = "SELECT *  FROM T_guest_book"
sql = sql &" ORDER by Date DESC"
Set message = Server.CreateObject("ADODB.Recordset")
message.Open sql, conn, 3, 3
%>

<p><font face="Arial" color="#004080"><strong>LIVRE D'OR</strong></font></p>
<div align="center">
 <center>
  <table border="0" cellpadding="0" cellspacing="0" width="500">
   <tr>
    <td><font face="Arial"><small>Un Guest Book (ou livre d'or en français) vous offre la possibilité de laisser un commentaire sur notre site.</small><br></font>
    </td>
   </tr>
  </table>
 </center>
</div>
<p align="left"><font face="Arial"><br></font><%=msg%></p>
<div align="center">
 <center>
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
   <tr>
    <td valign="top"><p align="center"><font face="Arial" color="#004080"><strong>Ajouter un Message</strong></font></td>
    <td valign="top"><p align="center"><font face="Arial" color="#004080"><strong>Contenu du Livre d'OR :</strong></font></td>
   </tr>
   <tr>
    <td valign="top"><form method="POST" action="index.Asp">
     <div align="center"><center><table border="0" cellpadding="3" width="100%">
      <tr>
       <td width="100%" bgcolor="#E1E7F7"><font face="Arial"><small>Votre Nom</small></font>:<br>
        <input type="text" name="nom" size="20" value="<%=request("nom")%>"><p><font face="Arial"><small>Commentaire:</small><br>
        <textarea rows="4" name="commentaire" cols="30"><%=request("commentaire")%></textarea></font></td>
       </tr>
       <tr>
        <td width="100%" bgcolor="#C7D0EF"><div align="center"><center><p><input type="reset" value="Effacer" name="action"><input type="submit" value="Envoyer" name="action"></td>
       </tr>
      </table>
     </center>
    </div>
   </form>
  </td>
  <td valign="top" align="center">
   <div align="right">
    <table border="0" cellpadding="2" width="400">
<%
'Test pour connaître le nombre de message
if message.recordcount>0 then%>
<% 
	i=1 ' compteur du nombre de message
	' On exécute tant que l'on est pas au dernier enregistrement et que i est <= à 25
	do while not message.eof AND i<=afficher
%>
    <tr>
     <td valign="top" bgcolor="#C7D0EF" width="30%"><font face="arial" size="2"><%=message.fields("date")%> </font></td>
     <td valign="top" bgcolor="#E1E7F7" width="70%"><font face="arial" size="2"><b><%=message.fields("nom")%> : </b><%=message.fields("message")%><b><br></b></font></td>
    </tr>
<%
		i=i+1 ' on incrémente le compteur
		'Allee au prochain enregistrement
		message.movenext
	loop 
else
	'Affiche un message signalant que le livre d'or est vide
	Response.Write("<tr> <td valign=""top"" colspan=""2"">Le livre d'Or est vide </td></tr>")
end if

' Fermeture des objets créés
message.close
set message=nothing
conn.close
set conn=nothing
%>
         </table>
        </div>
       </td>
      </tr>
     </table>
    </center>
   </div>
  </body>
</html>

Conclusion :


Tout est dans le zip

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

cs_Yopyop
Messages postés
586
Date d'inscription
lundi 7 janvier 2002
Statut
Membre
Dernière intervention
10 février 2010
1 -
Bien, mais il faut que tu double les guillemets avant de mettre qqch dans une BD telle que Access, sinon les phrases seront coupées... par exemple l'hélicoptère :)
BennyB
Messages postés
9
Date d'inscription
vendredi 12 octobre 2001
Statut
Membre
Dernière intervention
25 novembre 2002
-
Oui merci c'est que ce mieux de faire ainsi '" VARIABLE "', mais le but serait d'arriver à faire un paging alors si le coeur vous en dis n'hésiter pas.
Je prépare une nouvelle version alors si vous le souhaiter y'a qu'a demander.
djbebert92@netcourrier.com
BennyB
BBeppe
Messages postés
16
Date d'inscription
mardi 10 février 2004
Statut
Membre
Dernière intervention
10 février 2004
-
Bonsoir
Et est il possible d'avoir la mêm chose cote serveur pour me creer une base en interne et sauver vers DISQUE DUR ??????????

Projet Editeur Multilingue et TRADUCTEUR TEMPS REEL

MERCI

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.