Wenn ich mich anmelden möchte ich das Bild des Benutzers anzeigen.
Ich benutze Zeilen [0], aber wenn ich den Benutzer in Zeile [1] ändern, zeigt es mir die Zeile [0] Bild.
Wie implementiere ich einen Code, um die Zeilen zu wechseln und zu wissen, welcher Benutzer angemeldet ist.
Ich bin ein Anfänger hier, also nehmen Sie es langsam.Wenn ich mich mit dem Benutzer aus Zeile [0] aus der Datenbank anmelde, wird das Bild angezeigt, aber wenn ich mit dem Benutzer aus Zeile [1] das Bild loggte wird es nicht angezeigt
`C#
protected void Page_Load(object sender, EventArgs e)
{
if (Session["Username"] != null)
{
String a = ConfigurationManager.ConnectionStrings["MyDatabase"].ConnectionString;
using (SqlConnection con = new SqlConnection(a))
{
DataTable dt = new DataTable();
SqlDataAdapter comanda = new SqlDataAdapter("SELECT *FROM Register", con);
comanda.Fill(dt);
if (dt.Rows.Count > 0)
{
emailutilizator.Text = dt.Rows[0]["Email"].ToString();
}
if (dt.Rows[0]["ImageData"].ToString().Length > 1)
{
Image1.ImageUrl = dt.Rows[0]["ImageData"].ToString();
}
else
{
Image1.ImageUrl = "~/images/defaultuserimg.png";
}
}`
}
Die Datenbank sieht wie folgt aus
`Tabel
CREATE TABLE [dbo].[Register] (
[Uid] INT IDENTITY (1, 1) NOT NULL,
[Username] NVARCHAR (MAX) NULL,
[Email] NVARCHAR (MAX) NULL,
[Password] NVARCHAR (MAX) NULL,
[ImageData] NVARCHAR (MAX) NULL,
PRIMARY KEY CLUSTERED ([Uid] ASC)
);
`
[Die Informationen aus der Datenbank] [] 2
Es sieht so aus, als ob Sie den aktuellen Benutzer benötigen. Sie machen einen Vergleich der Bilddatenlänge, aber nur in Zeile0, die das Bild für den Benutzer in Zeile0 ist. Sie müssen herausfinden, in welcher Zeile sich der aktuelle Benutzer befindet. Mit diesen Daten, sollten Sie auch Ihre SQL-Anweisung verengen, versuchen Sie auf der Antwort auf diese Frage suchen: http://stackoverflow.com/questions/19078072/best-way-to-protect-against-sql-injection- in-sqldataadapter – Robbie