这是我第一次写,还请大家多指教
只看了一天的csharp就蠢蠢欲试,参考了ngws的帮助文档,写了个留言板小程序。
本程序使用sql server7,库里只有4个字段:
[guestbook]
book_id
username
post_time
content
因为对csharp掌握还不好,写得有点乱,其实很多地方可以写得简单点。输出数据时可以使用不同的方法,我是用了
服务器自带的控件repeater来输出;还可以用getstring的方法读取数据。值得研究的地方还有很多哦,呵呵~
另外没有对数据检查,微软的文档上有说有一个服务器端的检查控件,其实有好几个,很复杂,太多e文了,我还在
看,谁要是有使用经验不妨教我一把。
顺便说一声,ngws文档里面的东西好多错误,真见鬼! :(
<%@ import namespace="system" %>
<%@ import namespace="system.text" %>
<%@ import namespace="system.data" %>
<%@ import namespace="system.data.sql" %>
<%@page responseencoding="gb2312" %>
<script language="c#" runat="server">
void page_load(object semder, eventargs e) {
sqlconnection myconnection = new sqlconnection
("server=sowen;uid=guestbook;pwd=guestbook;database=guestbook");
sqldatareader myreader;
if (request.querystring["action"]=="del") {
string delcmd = "delete from guestbook where book_id=" + request.querystring["book_id"];
sqlcommand mydelcommand = new sqlcommand(delcmd.tostring(),myconnection);
mydelcommand.activeconnection.open();
mydelcommand.execute(out myreader);
message.innerhtml = "<b>删除留言!</b>";
mydelcommand.activeconnection.close();
}
if (request.form["action"]=="save") {
string insertcmd = "insert into guestbook(username,post_time,content) values(" + request.form
["username"] + "," + datetime.now + "," + request.form["content"] + ")";
sqlcommand myinsertcommand = new sqlcommand(insertcmd.tostring(),myconnection);
myinsertcommand.activeconnection.open();
//int rowsaffected = 0;
myinsertcommand.execute(out myreader);
message.innerhtml = "<b>留言成功!</b>";
myinsertcommand.activeconnection.close();
}
sqldatasetcommand mycommand = new sqldatasetcommand("select * from guestbook order by post_time
desc", myconnection);
dataset ds = new dataset();
mycommand.filldataset(ds, "username");
mydatalist.datasource = ds.tables["username"].defaultview;
mydatalist.databind();
}
//boolean check_it(object sender) {
// if (sender.value=="") return false;
//}
</script>
<html>
<body>
<title>留言板</title>
<center>
<table>
<div id=message runat=server></div>
<p><a href="guest.aspx">刷新</a></p>
<form action=guest.aspx method=post>
<tr><td>大名:</td><td><input type=text name=username size=10></td></tr>
<tr><td valign=top>留言:</td><td><textarea colspan=30 rows=4 name=content></textarea></td></tr>
<tr><td colspan=2><input type=submit value="保存"></td></tr>
<input type=hidden name=action value=save>
</table>
</form>
<table>
<asp:repeater id="mydatalist" runat="server">
<template name="itemtemplate">
<tr>
<td>大名:</td><td><%# databinder.eval(container.dataitem, "username") %> <a
href="guest.aspx?action=del&book_id=<%# databinder.eval(container.dataitem, "book_id") %>">删除留言
</a></td>
</tr>
<tr>
<td>留言时间:</td><td><%# databinder.eval(container.dataitem, "post_time") %></td>
</tr>
<tr>
<td>留言内容:</td><td><%# databinder.eval(container.dataitem, "content") %></td>
</tr>
<tr><td colspan=2 height=10></td></tr>
<tr><td colspan=2 height=1 bgcolor=black></td></tr>
<tr><td colspan=2 height=10></td></tr>
</template>
</asp:repeater>
</table>
</body></html>
