1. 새 창을 열고 매개변수를 보냅니다. 매개변수
보내기:
response.write("<script>window.open('*.aspx?id="+this.DropDownList1.SelectIndex+"&id1="+...+"' )</script>")
매개변수 수신:
string a = Request.QueryString("id");
string b = Request.QueryString("id1");
2. 버튼에 대화 상자를 추가합니다.
Button1.Attributes.Add("onclick","return verify('Confirm?')");
Button.attributes.add("onclick","if(confirm('확실합니까...?')){return true;}else{return false;}")
3. 테이블에서 선택한 레코드를 삭제합니다.
int intEmpID = (int)MyDataGrid.DataKeys[e.Item.ItemIndex];
string deleteCmd = "emp_id = " + intEmpID.ToString()인 직원에서 삭제
4. 테이블 레코드 삭제 경고
private void DataGrid_ItemCreated(Object sender,DataGridItemEventArgs e)
{
스위치(e.Item.ItemType)
{
ListItemType.Item :
사례 ListItemType.AlternatingItem :
ListItemType.EditItem:
TableCell myTableCell;
myTableCell = e.Item.Cells[14];
링크버튼 myDeleteButton;
myDeleteButton = (LinkButton)myTableCell.Controls[0];
myDeleteButton.Attributes.Add("onclick","return verify('이 메시지를 삭제하시겠습니까?');");
부서지다;
기본:
부서지다;
}
}
5. 테이블 행을 클릭하여 다른 페이지에 연결합니다.
private void grdCustomer_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
//테이블을 클릭하여 엽니다. if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
e.Item.Attributes.Add("onclick","window.open('Default.aspx?id=" + e.Item.Cells[0].Text + "');");
}
테이블을 두 번 클릭하면
itemDataBind 이벤트의
다른 페이지에 연결됩니다. if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
문자열 OrderItemID =e.item.cells[1].Text;
...
e.item.Attributes.Add("ondblclick", "location.href='../ShippedGrid.aspx?id=" + OrderItemID + "'");
}
테이블을 두 번 클릭하여 새 페이지를 엽니다.
if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
문자열 OrderItemID =e.item.cells[1].Text;
...
e.item.Attributes.Add("ondblclick", "open('../ShippedGrid.aspx?id=" + OrderItemID + "')");
}
6. 테이블 하이퍼링크 열
<asp:HyperLinkColumn Target="_blank" headertext="ID 번호" DataTextField="id" NavigateUrl="aaa.aspx?id='
에 매개 변수를 전달합니다.
<%# DataBinder.Eval(Container.DataItem, "데이터 필드 1")%>' & name='<%# DataBinder.Eval(Container.DataItem, "데이터 필드 2")%>' />
7. 색상을 변경하려면 표를 클릭하세요
. (e.Item.ItemType == ListItemType.Item ||e.Item.ItemType == ListItemType.AlternatingItem)
{
e.Item.Attributes.Add("onclick","this.style.BackgroundColor='#99cc00';
this.style.color='buttontext';this.style.cursor='default';");
}
(e.Item.ItemType == ListItemType.Item ||e.Item.ItemType == ListItemType.AlternatingItem)인 경우
DataGrid의 _ItemDataBound에 씁니다
.
{
e.Item.Attributes.Add("onmouseover","this.style.BackgroundColor='#99cc00';
this.style.color='buttontext';this.style.cursor='default';");
e.Item.Attributes.Add("onmouseout","this.style.BackgroundColor='';this.style.color='';");
}
8. 날짜 형식
날짜 형식 설정
에 대해DataFormatString="{0:yyyy-MM-dd}"
e.items.cell["your column"].text=DateTime.Parse(e.items.cell["your column"].text.ToString("yyyy-MM-dd")
에 있어야 한다고 생각합니다.
))
9. 오류 정보를 얻고 지정된 페이지로 이동하려면
Response.Redirect를 사용하지 말고 Server.Transfer를 사용하십시오.
예를 들어
// in global.asax
protected void Application_Error(객체 전송자, EventArgs e) {
if (Server.GetLastError()는 HttpUnhandledException입니다)
Server.Transfer("MyErrorPage.aspx");
//HttpUnhandledException이 아닌 나머지 예외는 ASP.NET 자체에 남겨두어도 됩니다.
}
리디렉션을 하면 포스트백이 생성되고 오류 정보가 손실되므로 페이지 안내를 서버 측에서 직접 실행해야 오류 처리 페이지에서 오류 정보를 얻어 그에 따라 처리할 수 있습니다
.
쿠키.Expires=[날짜시간] ;
Response.Cookies("UserName").Expires = 0
11. 사용자 정의 예외 처리
// 사용자 정의 예외 처리 클래스
시스템 사용;
System.Diagnostics
네임스페이스 MyAppException
사용
{
/// <요약>
/// 시스템 예외 클래스 ApplicationException에서 상속된 응용 프로그램 예외 처리 클래스입니다.
/// Windows NT/2000의 응용 프로그램 로그에 예외 내용을 자동으로 기록합니다. /// </summary>
공용 클래스 AppException:System.ApplicationException
{
publicAppException()
{
if (ApplicationConfiguration.EventLogEnabled)LogEvent("알 수 없는 오류가 발생했습니다.");
}
공개 AppException(문자열 메시지)
{
LogEvent(메시지);
}
공용 AppException(문자열 메시지,예외 innerException)
{
LogEvent(메시지);
if (innerException != null)
{
LogEvent(innerException.Message);
}
}
//시스템을 사용하는 로깅 클래스;
System.Configuration 사용;
System.Diagnostics 사용;
System.IO 사용;
System.Text 사용;
System.Threading
네임스페이스 MyEventLog
사용
{
/// <요약>
/// 이벤트 로깅 클래스, 이벤트 로깅 지원 제공 /// <비고>
/// 4가지 로깅 방법 정의(오류, 경고, 정보, 추적)
/// </비고>
/// </요약>
공개 클래스 ApplicationLog
{
/// <요약>
/// Win2000/NT 이벤트 로그에 오류 정보 기록 /// <param name="message">기록할 텍스트 정보</param>
/// </요약>
공개 정적 무효 WriteError(문자열 메시지)
{
WriteLog(TraceLevel.Error, 메시지);
}
/// <요약>
/// Win2000/NT 이벤트 로그에 경고 정보 기록 /// <param name="message">기록할 텍스트 정보</param>
/// </요약>
공개 정적 무효 WriteWarning(문자열 메시지)
{
WriteLog(TraceLevel.Warning, 메시지);
}
/// <요약>
/// Win2000/NT 이벤트 로그에 프롬프트 정보를 기록합니다. /// <param name="message">기록할 텍스트 정보</param>
/// </요약>
공개 정적 무효 WriteInfo(문자열 메시지)
{
WriteLog(TraceLevel.Info, 메시지);
}
/// <요약>
/// Win2000/NT 이벤트 로그에 추적 정보 기록 /// <param name="message">기록할 텍스트 정보 </param>
/// </요약>
공개 정적 무효 WriteTrace(문자열 메시지)
{
WriteLog(TraceLevel.Verbose, 메시지);
}
/// <요약>
/// 이벤트 로그에 기록되는 텍스트 정보 형식을 포맷합니다. /// <param name="ex">포맷이 필요한 예외 객체</param>
/// <param name="catchInfo">예외 정보 제목 문자열.</param>
/// <재값>
/// 예외 내용 및 추적 스택을 포함하는 <para> 형식의 예외 정보 문자열</para>
/// </재값>
/// </요약>
public static String FormatException(Exception ex, String catchInfo)
{
StringBuilder strBuilder = 새로운 StringBuilder();
if (catchInfo != 문자열.비어 있음)
{
strBuilder.Append(catchInfo).Append("rn");
}
strBuilder.Append(ex.Message).Append("rn").Append(ex.StackTrace);
strBuilder.ToString()을 반환합니다.
}
/// <요약>
/// 실제 이벤트 로그 작성 방법 /// <param name="level">기록할 정보 수준(오류, 경고, 정보, 추적)</param>
/// <param name="messageText">녹화할 텍스트입니다.</param>
/// </요약>
개인 정적 무효 WriteLog(TraceLevel 레벨, 문자열 messageText)
{
노력하다
{
EventLogEntryType LogEntryType;
스위치(레벨)
{
TraceLevel.Error:
LogEntryType = EventLogEntryType.Error;
부서지다;
TraceLevel.Warning:
LogEntryType = EventLogEntryType.Warning;
부서지다;
TraceLevel.Info:
LogEntryType = EventLogEntryType.Information;
부서지다;
TraceLevel.Verbose:
LogEntryType = EventLogEntryType.SuccessAudit;
부서지다;
기본:
LogEntryType = EventLogEntryType.SuccessAudit;
부서지다;
}
EventLog eventLog = new EventLog("Application", ApplicationConfiguration.EventLogMachineName, ApplicationConfiguration.EventLogSourceName );
//이벤트 로그 쓰기 eventLog.WriteEntry(messageText, LogEntryType)
}
catch {} //예외 무시}
} //ApplicationLog 클래스
}
12.패널이 가로로 스크롤되고 자동으로 세로로 확장됩니다.
<asp:panel style="overflow-x:scroll;overflow-y:auto;"></asp:panel>
<script 언어="javascript" for="document" event="onkeydown">
으로 변환하려면 입력하세요.
if(event.keyCode==13 && event.srcElement.type!='버튼' && event.srcElement.type!='제출' && event.srcElement.type!='재설정' && event.srcElement.type!=' '&& event.srcElement.type!='textarea');
event.keyCode=9;
</script>
onkeydown="if(event.keyCode==13) event.keyCode=9"
14.DataGrid 슈퍼 연결 열
DataNavigateUrlField="필드 이름" DataNavigateUrlFormatString=" http://xx/inc/delete.aspx?ID ={0} "
15.DataGrid 행은 마우스
전용 void DGzf_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)를
사용하여 색상을 변경합니다.
{
if (e.Item.ItemType!=ListItemType.Header)
{
e.Item.Attributes.Add("onmouseout","this.style.BackgroundColor=""+e.Item.Style["BACKGROUND-COLOR"]+""");
e.Item.Attributes.Add("onmouseover","this.style.BackgroundColor=""+ "#EFF3F7"+""");
}
}
16. 템플릿 열
www.downcodes.com
<ASP:TEMPLATECOLUMN visible="False" sortexpression="demo" headertext="ID">
<아이템템플릿>
<ASP:LABEL text='<%# DataBinder.Eval(Container.DataItem, "ArticleID")%>' runat="server" width="80%" id="lblColumn" />
<//ITEMTEMPLATE>
</ASP:TEMPLATECOLUMN>
<ASP:TEMPLATECOLUMN 헤더 텍스트="선택됨">
<HEADERSTYLE Wrap="False"horizontalalign="가운데"></HEADERSTYLE>
<아이템템플릿>
<ASP:CHECKBOX id="chkExport" runat="server" />
<//ITEMTEMPLATE>
<아이템템플릿 편집>
<ASP:CHECKBOX id="chkExportON" runat="server" 활성화="true" />
<//EDITITEMTEMPLATE>
</ASP:템플릿컬럼>
코드 숨김
보호 void CheckAll_CheckedChanged(개체 전송자, System.EventArgs e)
{
//열 선택을 모두 선택하거나 선택하지 않도록 변경합니다.
CheckBox chkExport;
if(CheckAll.Checked)
{
foreach(DataGridItem oDataGridItem in MyDataGrid.Items)
{
chkExport = (CheckBox)oDataGridItem.FindControl("chkExport");
chkExport.Checked = true;
}
}
또 다른
{
foreach(DataGridItem oDataGridItem in MyDataGrid.Items)
{
chkExport = (CheckBox)oDataGridItem.FindControl("chkExport");
chkExport.Checked = 거짓;
}
}
}
17. 숫자 서식
[<%#Container.DataItem("price")%>의 결과는 500.0000인데 어떻게 500.00으로 서식을 지정하나요?]
<%#Container.DataItem("price","{0:PY#, # #0.00}")%>
int i=123456;
string s=i.ToString("###,###.00");
18. 날짜 형식 지정
[aspx 페이지에서: <%# DataBinder.Eval(Container.DataItem, "Company_Ureg_Date")%>
는 다음과 같이 표시됩니다: 2004-8-11 19:44:28
원하는 내용: 2004-8-11 ]
<%# DataBinder.Eval(Container.DataItem,"Company_Ureg_Date","{0:yyyy-Md}")%>
어떻게 바뀌어야 할까요?
[날짜 형식]
꺼내세요. 보통 object((DateTime)objectFromDB).ToString("yyyy-MM-dd");
[날짜에 대한 확인식]
가. 올바른 입력 형식은 다음과 같습니다: [2004-2-29 ], [2004-02-29 오후 10:29:39], [2004/12/31]
^((d{2}(([02468][048])|([13579][26])) [ -/s]?((((0?[13578])|(1[02]))[-/s]?((0?[1-9])|([1 -2 ][0-9])|(3[01])))|(((0?[469])|(11))[-/s]?((0?[1-9 ]) |([1-2][0-9])|(30)))|(0?2[-/s]?((0?[1-9])|([1- 2] [0-9])))))|(d{2}(([02468][1235679])|([13579][01345789]))[-/s]?((( (0 ?[13578])|(1[02]))[-/s]?((0?[1-9])|([1-2][0-9])|(3 [01 ])))|(((0?[469])|(11))[-/s]?((0?[1-9])|([1-2][0- 9] )|(30)))|(0?2[-/s]?((0?[1-9])|(1[0-9])|(2[0-8] )) ))))(s(((0?[1-9])|(1[0-2])):([0-5][0-9])((s)| ( :([0-5][0-9])s))([AM|PM|am|pm]{2,2})))?$
B. 다음의 올바른 입력 형식: [0001-12-31], [9999 09 30], [2002/03/03]
^d{4}[-/s]?((((0[ 13578])|(1[02]))[-/s]?(([0-2][0-9])|(3[01])))|((0[469] ) |(11))[-/s]?(([0-2][0-9])|(30)))|(02[-/s]?[0-2 ] [0-9]))$
[대소문자 변환]
HttpUtility.HtmlEncode(string);
HttpUtility.HtmlDecode(문자열)
의 Application_Start() 이벤트
에
전역 변수를 설정
하고전역 변수인
Application[속성 이름] = xxx;를 추가하는
방법20. HyperLinkColumn에 의해 생성된 연결 후 연결을 클릭하여 여는 방법. 새 창?
HyperLinkColumn에는 Target 속성이 있습니다. 값을 "_blank"로 설정하세요. (Target="_blank")
[ASPNETMENU] 메뉴 항목을 클릭하면 menuData
의 메뉴 항목에 URLTarget="_blank"가 표시됩니다. .xml 파일(예:
<?xml version="1.0" 인코딩="GB2312"?>)
<메뉴데이터 ImagesBaseURL="images/">
<메뉴그룹>
<MenuItem Label="내부 매개변수 정보" URL="Infomation.aspx" >
<메뉴그룹 ID="BBC">
<MenuItem Label="공지사항" URL="Infomation.aspx" URLTarget="_blank" LeftIcon="file.gif"/>
<MenuItem Label="정보 브리핑 준비" URL="NewInfo.aspx" LeftIcon="file.gif" />
...
aspnetmenu를 버전 1.2로 업그레이드하는 것이 가장 좋습니다.
21. DataGrid 컨트롤 TextBox 값
(yourDataGrid.Items의 DataGrid dgi)을
읽어보세요.
{
TextBox tb = (TextBox)dgi.FindControl("yourTextBoxId");
tb.텍스트....
}
23. DataGrid에는 텍스트 상자가 포함된 세 개의 템플릿 열이 있습니다: DG_ShuLiang(수량), DG_DanJian(단가) 및 DG_JinE(금액). 이는 5.6.7 열에 입력할 때 금액을 자동으로 계산하는 데 필요합니다.
즉
, 수량 * 단가 = 입력시 금액도 숫자 값으로 제한되어야 합니다. 이 기능을 구현하려면 클라이언트 스크립트를 어떻게 사용해야 합니까
? 수량>
<아이템템플릿>
<asp:TextBox id="ShuLiang" runat='server' Text='<%# DataBinder.Eval(Container.DataItem,"DG_ShuLiang")%>'
onkeyup="javascript:DoCal()"
/>
<asp:RegularExpressionValidator id="revS" runat="server" ControlToValidate="ShuLiang" ErrorMessage="정수여야 합니다" ValidationExpression="^d+$" />
</아이템템플릿>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="단가">
<아이템템플릿>
<asp:TextBox id="DanJian" runat='server' Text='<%# DataBinder.Eval(Container.DataItem,"DG_DanJian")%>'
onkeyup="javascript:DoCal()"
/>
<asp:RegularExpressionValidator id="revS2" runat="server" ControlToValidate="DanJian" ErrorMessage="숫자여야 합니다" ValidationExpression="^d+(.d*)?$" />
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="Amount">
<아이템템플릿>
<asp:TextBox id="JinE" runat='server' Text='<%# DataBinder.Eval(Container.DataItem,"DG_JinE")%>' />
</아이템템플릿>
</asp:TemplateColumn><스크립트 언어="javascript">
함수DoCal()
{
var e = event.srcElement;
var 행 = e.parentNode.parentNode;
var txts = row.all.tags("INPUT");
if (!txts.length || txts.length < 3)
반환;
var q = txts[txts.length-3].value;
var p = txts[txts.length-2].value;
if (isNaN(q) || isNaN(p))
반환;
q = parsInt(q);
p =parseFloat(p);
txts[txts.length-1].value = (q * p).toFixed(2);
}
</script>
24. DataGrid가 맨 아래의 행을 선택하여 비교할 때 왜 항상 새로 고침을 한 다음 맨 위로 스크롤합니까? 화면 때문에 방금 선택한 행이 보이지 않습니다.
페이지_로드
page.smartNavigation=true
25. Datagrid에서 데이터를 수정합니다. 편집 키를 클릭하면 텍스트 상자에 데이터가 나타납니다. 텍스트 상자의 크기를 제어하는 방법은 무엇입니까?
private void DataGrid1_ItemDataBound(obj sender,DataGridItemEventArgs e)
{
for(int i=0;i<e.Item.Cells.Count-1;i++)
if(e.Item.ItemType==ListItemType.EditType)
{
e.Item.Cells[i].Attributes.Add("너비", "80px")
}
}
26.Dialog
개인 정적 문자열 ScriptBegin = "<script 언어="JavaScript">";
private static string ScriptEnd = "</script>"
public static voidConfirmMessageBox(string PageTarget,string Content)
{
stringContent="var retValue=window.confirm('"+Content+"');"+"if(retValue){window.location='"+PageTarget+"';}
"
;
ParameterPage = (페이지)System.Web.HttpContext.Current.Handler;
ParameterPage.RegisterStartupScript("confirm",ConfirmContent);
//Response.Write(strScript);
}
27. 시간 형식 지정: string aa=DateTime.Now.ToString("yyyy year MM Month dd day")
1.1 현재 연도, 월, 일, 시, 분 및 초 가져오기
currentTime=System.DateTime.Now;
1.2 현재 연도 가져오기
int year = DateTime.Now.Year;
1.3 이번 달 구하기
int Month = DateTime.Now.Month;
1.4 현재 날짜 얻기
int day = DateTime.Now.Day;
1.5 현재 시간 가져오기
int hour = DateTime.Now.Hour;
1.6 현재 분 가져오기
int hour = DateTime.Now.Minute;
1.7 현재 초 가져오기
int second = DateTime.Now.Second;
1.8 현재 밀리초 가져오기
int millisecond = DateTime.Now.Millisecond;
28. 사용자 정의 페이징 코드:
먼저 변수 정의:
public static int pageCount; //총 페이지 수
public static int curPageIndex=1; //현재 페이지의 다음 페이지:
if(DataGrid1.CurrentPageIndex < (DataGrid1.PageCount - 1))
{
DataGrid1.CurrentPageIndex += 1;
curPageIndex+=1;
}
바인딩(); // DataGrid1 데이터 바인딩 함수 이전 페이지:
if(DataGrid1.CurrentPageIndex > 0)
{
DataGrid1.CurrentPageIndex += 1;
curPageIndex-=1;
}
bin(); // DataGrid1 데이터 바인딩 함수는 페이지로 직접 이동합니다.
int a=int.Parse(JumpPage.Value.Trim()) //JumpPage.Value.Trim()은 점프 값입니다
. DataGrid1.PageCount)
{
this.DataGrid1.CurrentPageIndex=a;
}
바인드();
29. DataGrid 사용법:
추가 및 삭제 확인:
private void DataGrid1_ItemCreated(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
foreach(this.DataGrid1.Items의 DataGridItem di)
{
if(di.ItemType==ListItemType.Item||di.ItemType==ListItemType.AlternatingItem)
{
((LinkButton)di.Cells[8].Controls[0]).Attributes.Add("onclick","return verify('이 항목을 삭제하시겠습니까?');");
}
}
}
스타일 변경:
ListItemType itemType = e.Item.ItemType;
if (itemType == ListItemType.Item )
{
e.Item.Attributes["onmouseout"] = "javascript:this.style.BackgroundColor='#FFFFFF';";
e.Item.Attributes["onmouseover"] = "javascript:this.style.BackgroundColor='#d9ece1';cursor='hand';"
}
else if( itemType == ListItemType.AlternatingItem)
{
e.Item.Attributes["onmouseout"] = "javascript:this.style.BackgroundColor='#a0d7c4';";
e.Item.Attributes["onmouseover"] = "javascript:this.style.BackgroundColor='#d9ece1';cursor='hand';"
}
숫자 열 추가:
DataTable dt= c.ExecuteRtnTableForAccess(sqltxt) //sql에서 반환된 DataTable을 실행합니다.
DataColumn dc=dt.Columns.Add("number",System.Type.GetType("System.String"))
for(int i=0;i<dt.Rows.Count;i++)
{
dt.Rows[i]["number"]=(i+1).ToString();
}
DataGrid1.DataSource=dt;
DataGrid1.DataBind();
DataGrid1에 CheckBox를 추가하고 페이지에 전체 선택 상자를 추가합니다.
private void CheckBox2_CheckedChanged(object sender, System.EventArgs e)
{
foreach(DataGrid1.Items의 DataGridItem 이 항목)
{
((CheckBox)thisitem.Cells[0].Controls[1]).Checked=CheckBox2.Checked;
}
}
각(DataGrid1.Items의 DataGridItem 이 항목)에 대해
현재 페이지의 DataGrid1에 표시된 모든 데이터를 삭제합니다
.
{
if(((CheckBox)thisitem.Cells[0].Controls[1]).Checked)
{
문자열 strloginid= DataGrid1.DataKeys[thisitem.ItemIndex].ToString();
Del (strloginid) //함수 삭제}
}
30. 파일이 다른 디렉터리에 있는 경우 데이터베이스 연결 문자열을 가져와야 합니다(연결 문자열이 Web.config에 있는 경우 Global.asax에서 초기화).
Application_Start에 다음 코드를 추가합니다.
Application["ConnStr"]= this.Context.Request.PhysicalApplicationPath+ConfigurationSettings.
AppSettings["ConnStr"].ToString();
31. Variable.ToString()
문자 유형을 문자열로 변환
12345.ToString("n") //12,345.00 생성
12345.ToString("C"); //12,345.00엔 생성
12345.ToString("e"); //1.234500e+004 생성
12345.ToString("f4"); //12345.0000 생성
12345.ToString("x"); //3039(16진수) 생성
12345.ToString("p"); //1,234,500.00% 생성
32. Variable .Substring(매개변수 1, 매개변수 2);
문자열의 일부를 가로채고, 매개변수 1은 왼쪽부터 시작하는 숫자이고, 매개변수 2는 가로챌 자릿수입니다. 예: 문자열 s1 = str.Substring(0,2)
; 자신의 웹사이트에서 다른 웹사이트에 로그인하세요. (페이지가 중첩되어 있는 경우 페이지에는 하나의 FORM만 있을 수 있으므로 다른 페이지로 이동하여 로그인 정보를 제출할 수 있습니다.)
<SCRIPT 언어="javascript">
<!--
함수 gook(pws)
{
frm.제출();
}
//-->
</SCRIPT> <body leftMargin="0" topMargin="0" onload="javascript:gook()" marginwidth="0" marginheight="0">
<form name="frm" action=" http://220.194.55.68:6080/login.php?retid=7259 " method="post">
<tr>
<td>
<입력 id="f_user" type="hidden" size="1" name="f_user" runat="server">
<입력 id="f_domain" type="hidden" size="1" name="f_domain" runat="server">
<input class="box" id="f_pass" type="hidden" size="1" name="pwshow" runat="server">
<INPUT id="lng" type="hidden" maxLength="20" size="1" value="5" 이름="lng">
<INPUT id="tem" type="hidden" size="1" value="2" name="tem">
</td>
<//tr>
<//
form>
텍스트 상자의 이름은 로그인하려는 웹페이지의 이름이어야 합니다. 소스 코드가 작동하지 않으면 vsniffer를 사용하여 살펴볼 수 있습니다.
다음은 사용자가 입력한 로그인 정보를 가져오는 코드입니다.
string name;
name=Request.QueryString["EmailName"];
시도
{
int a=name.IndexOf("@",0,name.Length);
f_user.Value=name.Substring(0,a);
f_domain.Value=name.Substring(a+1,name.Length-(a+1));
f_pass.Value=Request.QueryString["Psw"];
}
잡다
{
Script.Alert("잘못된 이메일입니다!");
Server.Transfer("index.aspx");
}