1795
צפיות
צפיות
2
תשובות
תשובות
איך אני יכולה להשתמש בנתון ששלפתי מטבלת SQL?
אני כותבת תוכנית בC# ומקשרת אותה למאגר מידע SQL,
פחות או יותר הבנתי איך אני מגיעה לפריט מסוים אבל אם למשל יש לי טבלה של Users (עמודות של שם וסיסמא) ואני רוצה לקלוט מהמשתמש שם וסיסמא ולראות אם זה תואם לערכים בטבלה שלי.
אז איך אני יכולה לקבל את המידע בטבלה בצורת STRING (למשל) או כל סוג טייפ אחר שאוכל לעבוד איתו?(להשוות ערכים/ לקבל נתון כמספר (אם השדה הוא INT וכו)..תודה מראש!! 🙂
2 תשובות
החיבור בין C# לבסיס נתונים מתבצע באמצעות טכנולוגיית צד שרת, ASPNET במקרה שלך. יש לה כל מיני גירסאות ולא ברור מהשאלה עם איזו את עובדת, אבל יש מדריכים כאן באתר שמדגימים את זה
https://webmaster.org.il/articles/aspnetmvc-databases
https://webmaster.org.il/articles/cshtml-data-introduction
יש לי קוד בדיוק מה שאת מחפשת, פשוט אני באמצע לבנות אתר עם מסד נתונים בsql והכניסה מותנת בשם משתמש וסיסמא… בקוד שלפנייך יש פונקציה בשם "Login" שבודקת האם השם משתמש והסיסמא שהזין המשתמש קיימים בטבלתUsers.
הנה הקוד
protected void login_click(object sender, EventArgs e)
{
int flag = 0;
try
{
string connStr = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
using (SqlConnection conn = new SqlConnection(connStr))
{
conn.Open(); //Open a connection
SqlCommand cmd = new SqlCommand("SELECT * FROM tbl_Users where UserName='" + TextBox_username.Text + "' and Password='" + TextBox_Password.Text + "'", conn);
SqlDataReader reader = cmd.ExecuteReader();
if (reader.HasRows)
{
if (reader.Read())
{
int s = reader.GetInt32(7);
if (reader.GetBoolean(4) == true)
{
flag = 2;
Session["Test"] = s;
Session["Test1"] = flag;
}
else
{
flag = 1;
Session["Test1"] = flag;
}
}
conn.Close();
}
else
{
Page.ClientScript.RegisterStartupScript(this.GetType(), "Scripts", "<Script>alert('שם משתמש או סיסמא שגויים') </Script>");
TextBox_Password.Text = "";
TextBox_username.Text = "";
}
}
}
catch (Exception ex)
{
string str = ex.InnerException.ToString();
}
if (flag == 1 || flag == 2)
Response.Redirect("Home.aspx");
}