|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
缺点:正版成本价格贵(盗版就不说了)、不够安全,大多数服务器用windows系统,没有linux安全四.代码:
(1)guestpost.aspx:
<%@PageLanguage="C#"EnableSessionState="False"%>
<%@ImportNamespace="System"%>
<%@ImportNamespace="System.IO"%>
<%@ImportNamespace="System.Data"%>
<%--这些是本程序一般使用所必需的名字空间--%>
<html>
<head>
<title>接待离开我的留言簿</title>
<scriptLanguage="C#"runat="server">
///<summary>
///当提交(submit)按钮按下后,调要这个函数
///</summary>
publicvoidSubmit_Click(Objectsender,EventArgse)
{
file://保存数据的XML文件的路径
file://如果你的路径和上面的分歧,则请修正之
stringdataFile="db/guest.xml";
file://运用一个Try-Catch块完成信息增加功效
try{
file://仅当页面是无效的时分才处置它
if(Page.IsValid){
errmess.Text="";
file://以读的形式翻开一个FileStream来会见数据库
FileStreamfin;
fin=newFileStream(Server.MapPath(dataFile),FileMode.Open,
FileAccess.Read,FileShare.ReadWrite);
file://建立一个数据库工具
DataSetguestData=newDataSet();
file://仅从数据库读取XMLSchema
guestData.ReadXmlSchema(fin);
fin.Close();
file://从数据集的Schema新建一个数据行
DataRownewRow=guestData.Tables[0].NewRow();
file://用响应值填写数据行
newRow["Name"]=Name.Text;
newRow["Country"]=Country.Text;
newRow["Email"]=Email.Text;
newRow["Comments"]=Comments.Text;
newRow["DateTime"]=DateTime.Now.ToString();
file://填写终了,将数据行增加到数据集
guestData.Tables[0].Rows.Add(newRow);
file://为数据库文件新建另外一个写形式的FileStream,并保留文件
FileStreamfout;
fout=newFileStream(Server.MapPath(dataFile),FileMode.Open,
FileAccess.Write,FileShare.ReadWrite);
guestData.WriteXml(fout,XmlWriteMode.WriteSchema);
fout.Close();
file://隐躲以后的面板
formPanel.Visible=false;
file://显示带有感激信息的面板
thankPanel.Visible=true;
}
}
catch(Exceptionedd)
{
file://捕捉非常
errmess.Text="写进XML文件堕落,缘故原由:"+edd.ToString();
}
}
</script>
<LINKhref="mystyle.CSS"type=text/cssrel=stylesheet>
</head>
<body>
<%--包括一个头文件:header.inc--%>
<!--#IncludeFile="header.inc"-->
<br>
<h3align="center"class="newsbody">留言者信息</h3>
<br>
<asp:labelid="errmess"text=""style="color:#FF0000"runat="server"/>
<asp:Panelid=formPanelrunat=server>
<formrunat="server">
<tableborder="0"width="80%"align="Center">
<tr>
<tdclass="newsheading"><b>请在我留言簿留下您可贵的信息!!</b></td>
<tdclass="newsheading"></td>
</tr>
<trclass="newsbody">
<td>姓名:</td>
<td><asp:textboxtext=""id="Name"runat="server"/>
<asp:RequiredFieldValidatorControlToValidate=Namedisplay=static
runat=server>
*</asp:RequiredFieldValidator></td></tr>
<trclass="newsbody"><td>国度:</td>
<td><asp:textboxtext=""id="Country"runat="server"/>
<asp:RequiredFieldValidatorControlToValidate=Countrydisplay=static
runat=server>
*</asp:RequiredFieldValidator></td></tr>
<trclass="newsbody"><td>E-Mail:</td>
<td><asp:textboxtest=""id="Email"runat="server"/>
<asp:RequiredFieldValidatorControlToValidate=Emaildisplay=static
runat=server>
*</asp:RequiredFieldValidator><asp:RegularExpressionValidator
runat="server"
ControlToValidate="Email"
ValidationExpression="[w-]+@([w-]+.)+[w-]+"
Display="Static"
Font-Name="verdana"Font-Size="10pt">
请输出一个格局准确的Email地点!</asp:RegularExpressionValidator></td>
</tr><trclass="newsbody"><td>留言:</td>
<td><asp:Textboxtextmode=multilineid="Comments"columns="25"
rows="4"runat="server"/></td></tr>
<trclass="newsbody">
<tdcolspan="2">
<asp:Buttonclass="newsheading"id="write"Text="Submit"
runat="server"/></td></tr></table></form></asp:Panel>
<asp:Panelid=thankPanelvisible=falserunat=server>
<pclass="newsbody"align=center><b>感谢会见我的留言簿!</b>
<br><ahref="viewguestbook.aspx">请点击这里</a>检察留言簿。
</p>
</asp:Panel>
<!--#IncludeFile="footer.inc"-->
</body>
</html>
大家可以自己去看一看.可以说看得想呕吐.以前有次下了个动网来看.里面连基本内置函数的保护措施(函数没防御性)都没有.难怪经常补这个补那个了.可能现在.NET版会好点吧 |
|