Hallo,
ich verwende eine mySQL-DB in der Version 4.1. Programmieren tue ich mit ASP.net 1.1.
Ich habe folgendes Problem:
Um SQLinjection zu verhindern habe ich folgenden Quelltext gechrieben
connMySQL.Open();
//Anfrage: gibt es einen Eintrag mit diesem Login und Password
string sQuery = "SELECT COUNT (*) FROM login WHERE login= @login AND password= @password;";
MySqlCommand sqlCommand = new MySqlCommand(sQuery, connMySQL);
//UserName und Password sind Textboxen
sqlCommand.Parameters.Add("@login", UserName.Text));
sqlCommand.Parameters.Add("@password", Password.Text);
//iAnzahlDatensätze == 1, korrekter LOGIN
//sonst Fehler
int iAnzahlDatensätze = (int) sqlCommand.ExecuteScalar();
//Datenbankverbindung schliessen
connMySQL.Close();
Leider meldet der Browser einen Fehler im SQL-Syntax. Die Fehlermeldung sagt, dass ein Fehler in der Nähe von "FROM login WHERE login= @login AND password= @password;"
aufgetreten ist. Das scheint, als ob @login und @password nicht ersetzt werden.
Was läuft verkehrt? - Bitte helft mir! - Danke
Pauline
ich verwende eine mySQL-DB in der Version 4.1. Programmieren tue ich mit ASP.net 1.1.
Ich habe folgendes Problem:
Um SQLinjection zu verhindern habe ich folgenden Quelltext gechrieben
connMySQL.Open();
//Anfrage: gibt es einen Eintrag mit diesem Login und Password
string sQuery = "SELECT COUNT (*) FROM login WHERE login= @login AND password= @password;";
MySqlCommand sqlCommand = new MySqlCommand(sQuery, connMySQL);
//UserName und Password sind Textboxen
sqlCommand.Parameters.Add("@login", UserName.Text));
sqlCommand.Parameters.Add("@password", Password.Text);
//iAnzahlDatensätze == 1, korrekter LOGIN
//sonst Fehler
int iAnzahlDatensätze = (int) sqlCommand.ExecuteScalar();
//Datenbankverbindung schliessen
connMySQL.Close();
Leider meldet der Browser einen Fehler im SQL-Syntax. Die Fehlermeldung sagt, dass ein Fehler in der Nähe von "FROM login WHERE login= @login AND password= @password;"
aufgetreten ist. Das scheint, als ob @login und @password nicht ersetzt werden.
Was läuft verkehrt? - Bitte helft mir! - Danke
Pauline