Я пробовал страницу входа в веб-приложении Visual Studio 2017 asp.net c # с использованием MySQL, и он показывает следующую ошибку:
Строка 33: queryStr = "SELECT * FROM webapp.userregistration ГДЕ имя пользователя= '"+ usernameTextBox.Text +"' AND password = '"+ passwordTextBox.Text;Строка 34: cmd = new MySql.Data.MySqlClient.MySqlCommand (queryStr, conn);Строка 35: reader = cmd.ExecuteReader ();Строка 36: Строка 37: name = "";
Исходный файл: C: \ Users \ HOME \ source \ repos \ WebPage \ WebPage \ default.aspx.cs Строка: 35
СтекТрассировка:
[MySqlException (0x80004005): в синтаксисе SQL возникла ошибка;проверьте правильность синтаксиса в строке 1, соответствующую вашей версии сервера MySQL, в строке 1]
MySql.Data.MySqlClient.MySqlStream.ReadPacket () + 309
MySql.Data.MySqlClient.NativeDriver.GetResult (Int32 &ouredRow,Int64 & insertId) + 67
MySql.Data.MySqlClient.Driver.GetResult (Int32 StatementId, Int32 & disabledRows, Int64 & pasteId) + 17
MySql.Data.MySqlClient.Driver.NextResult (оператор Boole +1)MySql.Data.MySqlClient.EventArgs e) в C: \ Users \ HOME \ source \ repos \ WebPage \ WebPage \ default.aspx.cs: 35
System.Web.UI.WebControls.Button.OnClick (EventArgs e) + 9782450
Система.Web.UI.WebControls.Button.RaisePostBackEvent (String eventArgument) + 204
System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent (String eventArgument) + 12
System.Web.UI.Page.RaisePostBackEvent (IPostBackEventHandler sourceControl, String eventArgument) + 15
System.Web.UI.Page.RaisePostBackEvent (NameValueCollection postData)UI.Page.ProcessRequestMain (Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) + 1639
Код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System;
using System.Data;
using MySql.Data;
using MySql.Data.MySqlClient;
namespace WebPage
{
public partial class _default : System.Web.UI.Page
{
MySql.Data.MySqlClient.MySqlConnection conn;
MySql.Data.MySqlClient.MySqlCommand cmd;
MySql.Data.MySqlClient.MySqlDataReader reader;
String name;
protected void Page_Load(object sender, EventArgs e)
{
DoSQLQuery();
}
protected void Submit_Click(object sender, EventArgs e)
{
String connString = System.Configuration.ConfigurationManager.ConnectionStrings["WebAppConnString"].ToString();
conn = new MySql.Data.MySqlClient.MySqlConnection(connString);
conn.Open();
String queryStr = "";
queryStr = "SELECT * FROM webapp.userregistration WHERE username='" + usernameTextBox.Text+ "'AND password='" + passwordTextBox.Text;
cmd = new MySql.Data.MySqlClient.MySqlCommand(queryStr,conn);
reader = cmd.ExecuteReader();
name = "";
while (reader.HasRows && reader.Read())
{
{
name = reader.GetString(reader.GetOrdinal("username")) + " " + reader.GetString(reader.GetOrdinal("password"));
}
//if the data matches the rows (username, password), then you enter to the page
if (reader.HasRows)
{
Session["uname"] = name;
Response.BufferOutput = true;
Response.Redirect("login.aspx", false);
}
else
{
passwordTextBox.Text = "invalid user";
}
}
reader.Close();
conn.Close();
}
private void DoSQLQuery()
{
try
{
}
catch (Exception e)
{
passwordTextBox.Text = e.ToString();
}
}
}
}