• 简单网站新闻发布系统


    写这篇文章的时候首先要向bben_h 和jdxx表示感谢,是bben_h提出了C#中字符替换这个问题,jdxx很好的解决了这个问题,同时也使我想起以前做的一些程序(简单网站新闻发布系统),现在就把它奉献给大家,希望能对大家学习通过ADO.NET操作SqlServer数据库和DataGrid控制元件有些帮助。

      数据库结构

      数据库名:mydb,数据表名:news
      news表结构
      id(int 4) 递增ID
      biaoti(nvarchar 50) 新闻标题
      zhaizi(nvarchar 50) 出自
      neirong(ntext 16) 新闻内容
      shijian(datatime 8)发布时间
      img(nvarchar 50)图片路径
      counter(int 4)点击次数
     
      程序中连接SqlServer数据库,其中netfiresoft是我的机子的名称。
     
      网站新闻发布系统源程序:(数据库用的是SqlServer)
     
      增加页面(addnews.aspx)   

    <%@Page language="C#" Debug="True"%>
      
    <%@Import Namespace="System.Data"%>
      
    <%@Import Namespace="System.Data.SqlClient"%>
      
    <html>
      
    <head>
      
    <title>网站新闻信息添加页面</title>
      
    <style type="text/css">
      <!--
      table 
    {  font-size: 9pt}
      body 
    {  font-size: 9pt}
      -->
      
    </style>
      
    <Script Language="C#" runat="server">
      
    void submit_Click(Object sender,EventArgs e)
      
    {
      
    //当单击提交按钮之后执行下面的代码
       SqlConnection MyConnection;
      SqlCommand MyCommand;
      String ConnStr;
       DateTime now
    = DateTime.Now;
       
    //链接SQL Server数据库
      MyConnection =new SqlConnection("Initial Catalog=mydb;Data Source=netfiresoft;Integrated Security=SSPI;");
      MyConnection.Open();
      String neirong2;
      neirong2
    =Server.HtmlEncode(neirong.Text);
      String zh
    =""
      String tmpstr
    =""
      
    for (int i=0; i<neirong2.Length;i++
      zh
    =neirong2.Substring(i,1); 
     
    if (zh==" "{ zh=" ";} 
     
    if (zh=="\n"{ zh="<br>"; } 
     
    if (zh=="\t"{ zh="    ";} 
     tmpstr
    =tmpstr+zh; }
     
     neirong2
    =tmpstr; 
      
    if ((biaoti.Text=="")||(neirong2=="")) 
     
    {
      Label1.Text
    ="标题或内容不能为空!";
      }

      
    else if (biaoti.Text.Length>=100)
     
    {
      Label1.Text
    ="你的标题太长了!";
     }

      
    else if (img.Text.Length>=100)
     
    {
      Label1.Text
    ="你的图片路径太长了!";
     }

      
    else
     
    {
      
    //将新记录插入到数据库中
      ConnStr="insert into news(biaoti,zhaizi,neirong,shijian,img,counter) VALUES(‘"+biaoti.Text+"‘, 
    "+zhaizi.Text+"‘, ‘"+neirong2+"‘, ‘"+now.ToString()+"‘, ‘"+img.Text+"‘,0)";
      MyCommand
    =new SqlCommand(ConnStr,MyConnection);
      MyCommand.ExecuteNonQuery();
      Label1.Text
    ="增加成功!";
     }

      biaoti.Text
    ="";
      zhaizi.Text
    ="";
      neirong.Text
    ="";
      img.Text
    ="";
    }

    void reset_Click(Object sender,EventArgs e)
    {
      
    //当单击取消按钮之后执行下面代码
      biaoti.Text="";
      zhaizi.Text
    ="";
      neirong.Text
    ="";
      img.Text
    ="";
    }

    </Script>
    </head>
    <body >
    <table width="550" border="1" cellspacing="0" cellpadding="0" align="center" 
    bordercolorlight
    ="#666666" bordercolordark="#FFFFFF"> 
    <form runat=server> 
     
    <tr bgcolor="#CCCCCC">
      
    <td colspan="2">网站新闻信息添加页面</td>
     
    </tr>
     
    <tr>
      
    <td colspan="2"> </td>
     
    </tr> 
     
    <tr>
      
    <td width="78">标题:</td>
      
    <td width="416"> <asp:TextBox  id="biaoti" size="50" runat="server"/> 
      
    </td>
     
    </tr>
     
    <tr>
      
    <td width="78">摘自:</td>
      
    <td width="416"> <asp:TextBox id="zhaizi" size="30" runat="server"/> </td>
     
    </tr>
     
    <tr>
      
    <td width="78">图片:</td>
      
    <td width="416"><asp:TextBox id="img" size="30" runat="server"/></td>
     
    </tr> 
     
    <tr>
      
    <td width="78">内容:</td>
      
    <td width="416"> <asp:TextBox id="neirong" Columns="60" Rows="15" TextMode="MultiLine" runat="server"></asp:TextBox></td>
     
    </tr>
     
    <tr> 
      
    <td colspan="2"> </td>
     
    </tr>
     
    <tr>
      
    <td colspan="2"> 
      
    <div align="center"> 
       
    <asp:Button  id="submit"  onClick=submit_Click runat="server" Text="提交"></asp:Button>
       
    <asp:Button  id="reset" onClick=reset_Click runat="server" Text="取消"></asp:Button>
      
    </div>
      
    </td>
     
    </tr>
    </form>
    </table>
    <align="center"><asp:Label id="Label1"  runat="server"/>
    </body>
    </html> 

      显示新闻标题页面(newsshow.aspx):(用到DataGrid控制元件)   

    <%@Page language="C#" Debug="True"%>
    <%@Import Namespace="System.Data"%>
    <%@Import Namespace="System.Data.SqlClient"%>
    <Html>
    <Head>
    <Title>网站新闻发布系统</Title>
    <script language="C#" runat="server" >
    //当刚载入页面时候执行下面的程序。
    int startIndex;
    void Page_Load(Object Src,EventArgs E) 
    {
       
    if (!IsPostBack)
       
    {
               startIndex 
    =0;
        }
               
    //绑定DataGrid
    Binding();
    }

    //链接数据库,绑定DataGrid
    void Binding()
    {
     SqlConnection MyConnection;
     String ConnStr;
     MyConnection 
    =new SqlConnection("Initial Catalog=mydb;Data Source=netfiresoft;Integrated Security=SSPI;");
     MyConnection.Open();
     String strCom
    = "SELECT  id ,biaoti ,zhaizi ,counter ,shijian FROM news ORDER BY id DESC";
     DataSet myDataSet
    = new DataSet();
     SqlDataAdapter myCommand
    =new SqlDataAdapter(strCom,MyConnection);
     
    //填充DataSet 
     myCommand.Fill(myDataSet,"news");
     
    //关闭链接
     DataGrid1.DataSource = myDataSet.Tables["news"].DefaultView;
     
    //绑定 DataGrid
     DataGrid1.DataBind();
    }

    void ChangePage(Object sender,DataGridPageChangedEventArgs e) 
    {
         startIndex 
    = e.NewPageIndex*DataGrid1.PageSize;
         DataGrid1.CurrentPageIndex 
    = e.NewPageIndex;
         Binding();
    }

    </script>
    </Head>
    <Body runat=server>
    <align="Center"><font size="+3">新闻浏览</font>
    <form runat=server>
    <asp:DataGrid id=DataGrid1
     
    runat="server"
     ForeColor
    ="Black" 
     PagerStyle-Mode
    ="NumericPages"
     Headerstyle-BackColor
    ="#AAAADD"
     AlternatingItemStyle-BackColor
    ="#FFFFCD"
     OnPageindexChanged
    ="ChangePage"
     PageSize
    ="10"
     AllowPaging
    ="True"
     Width
    ="80%"
     Font-Name
    ="Verdana"
     Font-Size
    ="8pt"
     autogeneratecolumns
    ="False">
    <Columns>
    <asp:HyperLinkColumn
                   
    HeaderText="标题"
                   DataNavigateUrlField
    ="id"
                   DataNavigateUrlFormatString
    ="show.aspx?id={0}"
                   DataTextField
    ="biaoti"
                   Target
    ="_new"
                   
    />
    <asp:BoundColumn HeaderText="摘自" itemstyle-width=20% DataField=zhaizi/>
    <asp:BoundColumn HeaderText="点击次数" itemstyle-width=10% DataField=counter/>
    <asp:BoundColumn HeaderText="发表日期" itemstyle-width=20% DataField=shijian/>
    </Columns>
    </asp:DataGrid>
    </form>
    </Body>
    </Html> 

    容浏览页面(show.aspx): 
     

    <%@Page language="C#" Debug="True"%>
    <%@Import Namespace="System.Data"%>
    <%@Import Namespace="System.Data.SqlClient"%>
    <html>
    <head>
    <title>新闻发布系统</title>
    <style type="text/css">
    <!--
    TABLE 
    {    FONT-SIZE: 9pt }
    INPUT 
    {    FONT-SIZE: 9pt }
    SELECT
    { FONT-SIZE: 9pt }
    BODY 
    {    FONT-SIZE: 9pt }
    a:link 
    { color: #000099; text-decoration: none}
    a:visited 
    { color:#000099; text-decoration: none}
    a:hover 
    { color: #990000; text-decoration: underline}
    td 
    {font-size:9pt;line-height:13pt;}
    .p1 
    {  font-family: "宋体"; font-size: 9pt}
    .p2 
    {  }
    .p3 
    {  font-family: "宋体"; font-size: 12pt}
    -->
    </style>
    <script Language="C#" runat="server">
     DataSet ds;
     DataRow dr;
     String newsid;
    void Page_Load(Object sender,EventArgs e)
    {
     SqlConnection MyConnection;
     String ConnStr,strCon;
     newsid 
    = Request.Params["id"];
     MyConnection 
    =new SqlConnection("Initial Catalog=mydb;Data Source=netfiresoft;Integrated Security=SSPI;");
     MyConnection.Open();
     String strCom
    = "SELECT  biaoti ,zhaizi ,neirong,img,counter ,shijian FROM news where id="+newsid;
     ds
    = new DataSet();
     SqlDataAdapter myCommand
    =new SqlDataAdapter(strCom,MyConnection);
     myCommand.Fill(ds,
    "news");
     dr 
    = ds.Tables["news"].Rows[0];
     strCon 
    ="SELECT counter FROM news WHERE id = "+newsid;
     SqlCommand myCommand2
    = new SqlCommand(strCon, MyConnection);
     SqlDataReader reader 
    = myCommand2.ExecuteReader();
     reader.Read();
     
    int i = reader.GetInt32(0);
     i
    ++;
     reader.Close();
     strCon 
    ="UPDATE news SET counter = "+i.ToString()+" WHERE (id= "+newsid+")";
     myCommand2.CommandText 
    = strCon;
     myCommand2.ExecuteNonQuery();
     MyConnection.Close();
    }

    </script>
    </head>
    <body bgcolor="#FFFFFF" link="#000000">
    <div align="center" class="p2">
    <table width="500" border="0" cellspacing="0" cellpadding="0"> 
     
    <tr>
      
    <td><div align="center">新闻发布系统</div></td>
     
    </tr>
     
    <tr><td> </td>
     
    </tr>
    </table>
    <table width="500" border="1" cellspacing="0" cellpadding="0" bordercolordark="#FFFFFF" bordercolorlight="#CCCCCC"> 
     
    <tr>
      
    <td background="mmto.gif" height="15" width="470">
      
    <table width="500" border="0" cellspacing="0" cellpadding="0" background="mmto.gif"> 
       
    <tr>
        
    <td background="mmto.gif"> </td>
        
    <td background="mmto.gif"> 
          
    <div align="right">
          
    <img src="printer.gif" width="16" height="14">
          
    <href="javascript:window.print()">打印本页</a>
          
    </div>
        
    </td>
       
    </tr> 
      
    </table>
      
    </td>
     
    </tr>
     
    <tr>
      
    <td width="470"> 
       
    <table width="500" border="0" cellspacing="0" cellpadding="0"> 
        
    <tr align="center">
         
    <td class="p3"><br> <%=dr["biaoti"]%></td>
        
    </tr>
        
    <tr align="center"> 
         
    <td> <div> <hr size="1" width="300"> 
              
    <font color="#999999">[<%=dr["shijian"]%>]</font><br> 
              
    </div>
         
    </td>
        
    </tr>
        
    <tr>
         
    <td>
            
    <%
               
    if(dr["img"] != "") {
               Response.Write(
    "<img src=‘" + dr["img"+ "‘ border=0 align=‘left‘ width=‘20‘ height=‘200‘>");
            }
            
    %><br> <%=dr["neirong"]%> 
         
    </td>
        
    </tr>
        
    <tr> 
         
    <td> <br>   
              
    <br> 摘自: <%=dr["zhaizi"]%>
              
    <br>
         
    </td>
        
    </tr>
        
    <tr>
         
    <td> 
          
    <div align="right"></div>
         
    </td>
        
    </tr>
       
    </table>
      
    </td>
     
    </tr>
     
    <tr> 
      
    <td height="17"> 
       
    <table width="498" border="0" cellspacing="0" cellpadding="0" mmto.gif"> 
        
    <tr>
         
    <td width="172" background="mmto.gif">本条消息被浏览了
           
    <font color="#FF3333">[<%=dr["Counter"]%>]</font>
         
    </td>
         
    <td width="172" background="mmto.gif">  
         
    </td>
         
    <td width="134" background="mmto.gif"> 
          
    <align="right"><href="javascript:window.close()">关闭本窗口 </a></p>
         
    </td>
        
    </tr>
       
    </table>
      
    </td>
     
    </tr>
    </table>
    <table width="500" border="0" cellspacing="0" cellpadding="0"> 
     
    <tr> 
      
    <td><img src="bian.gif" width="500" height="13"></td>
     
    </tr>
    </table>
    </div>
    </body>
    </html>


     

  • 相关阅读:
    Struts2框架(二)
    Struts2框架(一)
    jsp定义全局的错误处理
    BeanUtils的使用、Java中的路径问题
    IntelliJ IDEA 14.1.4(Window)快捷键
    Log4J日志组件
    注解
    反射
    泛型
    AndroidStudio开发工具快捷键(转)
  • 原文地址:https://www.cnblogs.com/CB/p/355393.html
Copyright © 2020-2023  润新知