偶做留言本的時候想起做這麼個,具體思路也許不好,做出來只是拋磚引玉,希望有更好的方法!
IP添加頁是用了一個ListBox, TextBox,兩個Button
而在其他的頁上則直接用當前IP對比數據庫中的IP,代碼如下!
限制IP添加頁Html代碼
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="ip.ASPx.cs" Inherits="admin_ip" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xHtml1-transitional.dtd">
<html XMLns="http://www.w3.org/1999/xHtml" >
<head runat="server">
<title>無標題頁</title>
<link href="../images/news.css" rel="stylesheet" type="text/CSS" />
</head>
<body>
<form id="form1" runat="server">
<div>
<ASP:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:book %>"
ProviderName="<%$ ConnectionStrings:book.ProviderName %>" SelectCommand="SELECT [ip] FROM [ip]">
</ASP:SqlDataSource>
<table align="center" >
<tr>
<td rowspan="2" >
<ASP:ListBox ID="iplxb" runat="server" DataSourceID="SqlDataSource1" DataTextFIEld="ip"
DataValueFIEld="ip" Height="194px" Width="153px"></ASP:ListBox></td>
<td >
填寫標准的IP地址到左下文本框裡面,然後點擊按紐添加!<br />
<ASP:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" ControlToValidate="iptb"
Display="Dynamic" ErrorMessage="IP地址格式不正確" V
alidationExpression="([0-9]{2,3})([.])([0-9]{1,3})([.])([0-9]{1,3})([.])([0-9]{1,3})"></ASP:RegularExpressionValidator></td>
</tr>
<tr>
<td >
<asp:LinkButton ID="LinkButton1" runat="server" OnClick="LinkButton1_Click">刪除選中的行</ASP:LinkButton></td>
</tr>
<tr>
<td >
<asp:TextBox ID="iptb" runat="server" Width="150px">61.139.33.22</ASP:TextBox></td>
<td >
<ASP:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="增加" Width="80px" /></td>
</tr>
</table>
</div>
</form>
</body>
</Html>
限制IP添加頁CS代碼
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class admin_ip : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Server.Execute("chklog.ASPx");
}
protected void Button1_Click(object sender, EventArgs e)
{
iplxb.Items.Add(iptb.Text);
&n
bsp; odb.insert("insert into ip (ip) values ('" + iptb.Text + "')");
}
protected void LinkButton1_Click(object sender, EventArgs e)
{
for (int i = 0; i < iplxb.Items.Count; i++)
{
if (iplxb.Items[i].Selected)
{
odb.insert("delete from ip where ip='"+iplxb.SelectedItem.Text+"'");
iplxb.Items.Remove(iplxb.SelectedItem.Text);
}
}
}
}
被需要限制IP的頁面調用頁的代碼
protected void Page_Load(object sender, EventArgs e)
{
string ip = Request.UserHostAddress.ToString();
if (Convert.ToInt32(odb.scr("select count(*) from [ip] where ip='" + ip + "'")) > 0)
Response.Write("對不起,您的IP被限制訪問,請咨詢管理員");
}
}
http://thcjp.cnblogs.com/archive/2006/06/21/431639.Html