Du får lige det hele :-) Det er en gæstebog
skriv.ascx
<%@ Control Language="c#" AutoEventWireup="false" Codebehind="skriv.ascx.cs" Inherits="juelsmindecamping.dk.gaestebog.skriv" TargetSchema="
http://schemas.microsoft.com/intellisense/ie5"%><!-- JavaScript handling SOAP WebCam
function HL(element, on)
{
if (!on)
{
element.style.backgroundColor = '#6699CC';
element.style.color = 'white';
element.style.borderColor = '#6699CC';
} else {
element.style.backgroundColor = '#E1F0FF';
element.style.color = 'blue';
element.style.borderColor = '#FFFFFF';
}
return false;
}
function sp(_serial,_page)
{
document.write( '<a href="
http://www.wanadoo.fr/pages_per'+'so/estat/bin/pwpestat_stat.cgi"><img src'+
'="
http://perso.estat.com/cgi-bin/perso/'+_serial+'?'
+'&n='+Math.round (Math.random () * 1000000000000000)
+'&page='+escape(_page.length?_page:document.title)
+'&referer='+escape(document.referrer)+'" BORDER=0><\/A>')
}
//-->
</script>
<script language="JavaScript" for="HLLink" event="onmouseover">
return HL( this, true );
</script>
<script language="JavaScript" for="HLLink" event="onfocus">
return HL( this, true );
</script>
<script language="JavaScript" for="HLLink" event="onmouseout">
return HL( this, false );
</script>
<script language="JavaScript" for="HLLink" event="onblur">
return HL( this, false );
</script>
<div class="main-left">
<TABLE id="Table5" width="100%" border="0">
<TR>
<TD align="right"></TD>
<TD>
<DIV align="left"><FONT face="verdana" color="#003366" size="4"><B>Gæstebog</B></FONT></DIV>
</TD>
</TR>
<TR>
<TD align="right"><FONT face="verdana" size="2"><asp:label id="Label1" runat="server">Navn</asp:label></FONT></TD>
<TD><asp:textbox id="TextBoxName" runat="server" Width="300px"></asp:textbox><asp:requiredfieldvalidator id="RequiredFieldValidator4" runat="server" ErrorMessage="Indtast venligst dit navn"
ControlToValidate="TextBoxName"></asp:requiredfieldvalidator></TD>
</TR>
<TR>
<TD align="right"><FONT face="verdana" size="2"><asp:label id="Label2" runat="server">E-Mail</asp:label></FONT></TD>
<TD><asp:textbox id="TextBoxEMail" runat="server" Width="300px"></asp:textbox><asp:requiredfieldvalidator id="RequiredFieldValidator3" runat="server" ErrorMessage="Indtast venligst din e-mail adresse"
ControlToValidate="TextBoxEMail"></asp:requiredfieldvalidator><asp:regularexpressionvalidator id="RegularExpressionValidator1" runat="server" ErrorMessage="Indtast venligst en gyldig e-mail adresse"
ControlToValidate="TextBoxEMail" ValidationExpression="\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"></asp:regularexpressionvalidator></TD>
</TR>
<TR>
<TD align="right"><FONT face="verdana" size="2"><asp:label id="Label3" runat="server">Titel på hjemmeside</asp:label></FONT></TD>
<TD><asp:textbox id="TextBoxHomepageTitle" runat="server" Width="300px"></asp:textbox></TD>
</TR>
<TR>
<TD align="right"><FONT face="verdana" size="2"><asp:label id="Label4" runat="server">Adresse på hjemmesiden</asp:label></FONT></TD>
<TD><asp:textbox id="TextBoxHomepageURL" runat="server" Width="300px">
http://</asp:textbox></TD> </TR>
<TR>
<TD align="right"><FONT face="verdana" size="2"><asp:label id="Label5" runat="server">Lokalitet</asp:label></FONT></TD>
<TD><asp:textbox id="TextBoxLocation" runat="server" Width="300px"></asp:textbox><asp:requiredfieldvalidator id="RequiredFieldValidator2" runat="server" ErrorMessage="Indtast venligst din lokalitet"
ControlToValidate="TextBoxLocation"></asp:requiredfieldvalidator></TD>
</TR>
<TR>
<TD align="right"><FONT face="verdana" size="2"><asp:label id="Label6" runat="server">Kommentar</asp:label></FONT></TD>
<TD><asp:textbox id="TextBoxComments" runat="server" Width="300px" Height="110px"></asp:textbox><asp:requiredfieldvalidator id="RequiredFieldValidator1" runat="server" ErrorMessage="Indtast venligst en kommentar"
ControlToValidate="TextBoxComments"></asp:requiredfieldvalidator></TD>
</TR>
<TR>
<TD></TD>
<TD><asp:checkbox id="CheckBoxPrivate" runat="server" Width="380" Font-Size="8" Font-Name="verdana"
Text="PRIVAT - Kun hjemmesidens ejer må se min email"></asp:checkbox><BR>
</TD>
</TR>
<TR>
<TD></TD>
<TD><asp:button id="ButtonContinue" runat="server" Text="Send indlæg"></asp:button></TD>
</TR>
</TABLE>
</div>
skriv.ascs.cs:
namespace juelsmindecamping.dk.gaestebog
{
using System;
using System.IO;
using System.Text;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Xml;
using System.Xml.XPath;
using Juelsminde_Camping;
/// <summary>
/// Summary description for skriv.
/// </summary>
public class skriv : System.Web.UI.UserControl
{
protected System.Web.UI.WebControls.CheckBox CheckBoxPrivate;
protected System.Web.UI.WebControls.RequiredFieldValidator RequiredFieldValidator1;
protected System.Web.UI.WebControls.TextBox TextBoxComments;
protected System.Web.UI.WebControls.Label Label6;
protected System.Web.UI.WebControls.RequiredFieldValidator RequiredFieldValidator2;
protected System.Web.UI.WebControls.TextBox TextBoxLocation;
protected System.Web.UI.WebControls.Label Label5;
protected System.Web.UI.WebControls.TextBox TextBoxHomepageURL;
protected System.Web.UI.WebControls.Label Label4;
protected System.Web.UI.WebControls.TextBox TextBoxHomepageTitle;
protected System.Web.UI.WebControls.Label Label3;
protected System.Web.UI.WebControls.RegularExpressionValidator RegularExpressionValidator1;
protected System.Web.UI.WebControls.RequiredFieldValidator RequiredFieldValidator3;
protected System.Web.UI.WebControls.TextBox TextBoxEMail;
protected System.Web.UI.WebControls.Label Label2;
protected System.Web.UI.WebControls.RequiredFieldValidator RequiredFieldValidator4;
protected System.Web.UI.WebControls.TextBox TextBoxName;
protected System.Web.UI.WebControls.Button ButtonContinue;
protected System.Web.UI.WebControls.Label Label1;
private void Page_Load(object sender, System.EventArgs e)
{
// Put user code to initialize the page here
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.ButtonContinue.Click += new System.EventHandler(this.ButtonContinue_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
private void ButtonContinue_Click(object sender, System.EventArgs e)
{
//Load guestbook database
XmlDocument xmldoc = new XmlDocument();
xmldoc.Load( Server.MapPath("guestbook.xml") );
//Get private status
string strPrivate;
if ( CheckBoxPrivate.Checked )
strPrivate = "yes";
else
strPrivate = "no";
//Create a new element
XmlElement elem = xmldoc.CreateElement("guest");
elem.SetAttribute("private", strPrivate);
//Add the new guest as the first node
xmldoc.DocumentElement.PrependChild(elem);
addTextElement( xmldoc, elem, "name", TextBoxName.Text );
addTextElement( xmldoc, elem, "email", TextBoxEMail.Text );
addTextElement( xmldoc, elem, "homepage", TextBoxHomepageTitle.Text );
XmlAttribute newAttr = xmldoc.CreateAttribute("url");
newAttr.Value = TextBoxHomepageURL.Text;
elem.LastChild.Attributes.Append( newAttr );
addTextElement( xmldoc, elem, "location", TextBoxLocation.Text );
addTextElement( xmldoc, elem, "comment", TextBoxComments.Text );
//Write date
string strDate = DateTime.Now.ToLongDateString() +
" - " +
DateTime.Now.ToLongTimeString();
addTextElement( xmldoc, elem, "date", strDate );
xmldoc.Save( Server.MapPath("guestbook.xml") );
Response.Redirect("View.aspx");
}
private void addTextElement( XmlDocument doc, XmlElement nodeParent, string strTag, string strValue )
{
XmlElement nodeElem = doc.CreateElement( strTag );
XmlText nodeText = doc.CreateTextNode( strValue );
nodeParent.AppendChild( nodeElem );
nodeElem.AppendChild( nodeText );
}
}
}