PDA

View Full Version : یک مشکل عجیب در فرم Login سایت !!



merlin_vista
سه شنبه 10 مهر 1386, 15:32 عصر
سلام :
آقا من یک صفحه برای ورود کاربران درست کردم ولی الان این مشکل را دارد !!
بر روی سیستم خودم هم هین مشکل را دارد !!
توجه داشته باسید که بعد از کلیک روی دکمه ورود این مشکل پیش میاد !! اگه هم یوزر و پسورد درست باشه بازم همین خطا را میگیرد !؟

آدرس صفحه لوگین که مشکل داره !!‌:
http://www.esfahannet.com/login.aspx

abadanboy
سه شنبه 10 مهر 1386, 15:38 عصر
ما که چیزی ازش نفهمیدیم کد بزار

merlin_vista
سه شنبه 10 مهر 1386, 15:42 عصر
روی دکمه "ورود" کلیک کنید

abadanboy
سه شنبه 10 مهر 1386, 15:43 عصر
کلیک کردم اما دقیقاً نفهمیدم error از چی هست

یه چیزایی گفته راجبه اینکه اینو off کنی
validateRequest=false

merlin_vista
سه شنبه 10 مهر 1386, 15:47 عصر
کد قسمت 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 login : System.Web.UI.Page
{
private System.Data.SqlClient.SqlCommand sqlSelectCommand1;
private System.Data.SqlClient.SqlConnection sqlConnection1;
private Dslogin dslogin1;
private System.Data.SqlClient.SqlDataAdapter sqlDataAdapter1;
protected override void OnInit(EventArgs e)
{
InitializeComponent();
base.OnInit(e);
}

private void InitializeComponent()
{
this.sqlSelectCommand1 = new System.Data.SqlClient.SqlCommand();
this.sqlConnection1 = new System.Data.SqlClient.SqlConnection();
this.sqlDataAdapter1 = new System.Data.SqlClient.SqlDataAdapter();
this.dslogin1 = new Dslogin();
((System.ComponentModel.ISupportInitialize)(this.d slogin1)).BeginInit();
//
// sqlSelectCommand1
//
this.sqlSelectCommand1.CommandText = "dbo.login";
this.sqlSelectCommand1.CommandType = System.Data.CommandType.StoredProcedure;
this.sqlSelectCommand1.Connection = this.sqlConnection1;
this.sqlSelectCommand1.Parameters.AddRange(new System.Data.SqlClient.SqlParameter[] {
new System.Data.SqlClient.SqlParameter("@RETURN_VALUE", System.Data.SqlDbType.Int, 4, System.Data.ParameterDirection.ReturnValue, false, ((byte)(0)), ((byte)(0)), "", System.Data.DataRowVersion.Current, null),
new System.Data.SqlClient.SqlParameter("@user", System.Data.SqlDbType.NVarChar, 50),
new System.Data.SqlClient.SqlParameter("@pass", System.Data.SqlDbType.NVarChar, 50)});
//
// sqlConnection1
//
this.sqlConnection1.ConnectionString = "Data Source=(local);Initial Catalog=asannet;Persist Security Info=True;User ID=as" +
"************;Password=********";
this.sqlConnection1.FireInfoMessageEventOnUserErro rs = false;
//
// sqlDataAdapter1
//
this.sqlDataAdapter1.SelectCommand = this.sqlSelectCommand1;
this.sqlDataAdapter1.TableMappings.AddRange(new System.Data.Common.DataTableMapping[] {
new System.Data.Common.DataTableMapping("Table", "login", new System.Data.Common.DataColumnMapping[] {
new System.Data.Common.DataColumnMapping("id", "id"),
new System.Data.Common.DataColumnMapping("Fname", "Fname"),
new System.Data.Common.DataColumnMapping("LName", "LName"),
new System.Data.Common.DataColumnMapping("Email", "Email"),
new System.Data.Common.DataColumnMapping("websit", "websit"),
new System.Data.Common.DataColumnMapping("tel", "tel"),
new System.Data.Common.DataColumnMapping("ncode", "ncode"),
new System.Data.Common.DataColumnMapping("gender", "gender"),
new System.Data.Common.DataColumnMapping("password", "password"),
new System.Data.Common.DataColumnMapping("company", "company"),
new System.Data.Common.DataColumnMapping("zipcode", "zipcode"),
new System.Data.Common.DataColumnMapping("MemberLevel", "MemberLevel"),
new System.Data.Common.DataColumnMapping("userpic", "userpic")})});
//
// dslogin1
//
this.dslogin1.DataSetName = "Dslogin";
this.dslogin1.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
((System.ComponentModel.ISupportInitialize)(this.d slogin1)).EndInit();

}
string Uname, Ufamily, Ulevel, upic, umail;
protected void Button1_Click(object sender, EventArgs e)
{
this.sqlDataAdapter1.SelectCommand.Parameters["@user"].Value = this.TextBox1.Text.ToString();
this.sqlDataAdapter1.SelectCommand.Parameters["@pass"].Value = this.TextBox2.Text.ToString();
this.sqlDataAdapter1.Fill(this.dslogin1.login);
if (this.dslogin1.login.Rows.Count != 0)
{
DataRow dr = this.dslogin1.login.Rows[0];
Uname = dr["fname"].ToString();
Ufamily = dr["LName"].ToString();
Ulevel = dr["MemberLevel"].ToString();
upic = dr["userpic"].ToString();
umail = dr["Email"].ToString();
Session.Add("ssUname", Uname);
Session.Add("ssUfamily", Ufamily);
Session.Add("Umlevel", Ulevel);
Session.Add("Umpic", upic);
Session.Add("Umemail", umail);
Session.Add("let", "yes");
Response.Redirect("Default.aspx");

}
else
{
this.Label3.Text = "اطلاعات ورودی صحیح نیست";

}

}

protected void Page_Load(object sender, EventArgs e)
{

}
}
کد قسمت ASPX :

<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="login.aspx.cs" Inherits="login" Title="ورود به سایت" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<div style="text-align: center">
<table border="0" style="width: 450px">
<tr>
<td style="width: 100px; height: 23px">
<asp:Label ID="Label1" runat="server" Text="ایمیل : "></asp:Label></td>
<td style="width: 100px; height: 23px; text-align: right">
<asp:TextBox ID="TextBox1" runat="server" Width="229px"></asp:TextBox></td>
<td style="width: 100px; height: 23px">
</td>
</tr>
<tr>
<td style="width: 100px">
<asp:Label ID="Label2" runat="server" Font-Names="Tahoma" Font-Size="Small" Text="رمز عبور : "></asp:Label></td>
<td style="width: 100px; text-align: right">
<asp:TextBox ID="TextBox2" runat="server" TextMode="Password"></asp:TextBox></td>
<td style="width: 100px">
</td>
</tr>
<tr>
<td style="width: 100px; height: 26px;">
<asp:HyperLink ID="HyperLink1" runat="server" Font-Names="Tahoma" ForeColor="DarkOrange"
NavigateUrl="~/Register.aspx">عضویت در سایت</asp:HyperLink></td>
<td style="text-align: right; height: 26px;" colspan="2">
<asp:Button ID="Button1" runat="server" Font-Names="Tahoma" OnClick="Button1_Click"
Text="ورود" />
<asp:Label ID="Label3" runat="server" Font-Names="Tahoma" ForeColor="Red" Font-Size="Small"></asp:Label></td>
</tr>
</table>
</div>
</asp:Content>

abadanboy
سه شنبه 10 مهر 1386, 16:01 عصر
از کامپوننت استفاده کردی؟
تو masterpage یا login.aspx تو قسمت بالا اینو بنویس ببین چی میشه


ValidateRequest="false"



<%@ Page Language="C#" ValidateRequest="false"
MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="login.aspx.cs" Inherits="login" Title="ورود به سایت" %>

merlin_vista
سه شنبه 10 مهر 1386, 16:05 عصر
مرسی مشکل حل شد !! مچکرم از اینکه مشکل من را حل کردید !!
آیا باید این را دربالای تمام صفحات بگزارم و یا تو masterpage هم میشه اونا گزاشت که دیگه لازم نباشه همه صفحات را دوباره آپلود کنم !!

abadanboy
سه شنبه 10 مهر 1386, 16:08 عصر
فکر کنم تو مستر پیج هم جواب بده تست نکردم تاحالا یه تست کن ظمناً پست که کد رو توش فرستادی اصلاح کن چون یوزر پسورده دیتابیست توشه پاکش کن
موفق باشی

merlin_vista
سه شنبه 10 مهر 1386, 16:15 عصر
نه تو مستر پیچ جواب نداد !!
ممنون از اینکه مشکل من را حل کردید داشت اعصابم داغون میشود !!
در ضمن از یاداوری یوزر و پسورد دیتابیس مچکرم !!

scorpion_man
پنج شنبه 27 دی 1386, 00:44 صبح
نه تو مستر پیچ جواب نداد !!
ممنون از اینکه مشکل من را حل کردید داشت اعصابم داغون میشود !!
در ضمن از یاداوری یوزر و پسورد دیتابیس مچکرم !!

با سلام به همه دوستاندوست عزیز درسته که با false کردن این آیتم مشکل شما حل شد ولی انجام این کار مشکل امنیتی داره علت اینکه میکروسافت تو این ورژن همچین آیتمی رو ایجاد کرده بعلت حک شدن برخی سایتها از این حفره در ورژن قبلی هست این آیتم باعث میشه که تمامی درخواستها و postback ها قبل از پردازش در سرور چک بشه و صحت اونها تایید بشه به هر حال یه تذکری بود برای آیندهموفق و پیروز باشید