【解決方法】ユーザーの登録日を取得する方法


ウェブサイトでユーザー登録の日付を取得する方法を教えてください

ID 整数
メール varchar(500)
パスワード varchar(500)
名前 varchar(500)
国 varchar(500)
最終ログイン日時
RegisterDate datetime//日付の登録方法
説明 Varchar(500)
イメージ名 varchar(500)

login.cs

C#
SqlConnection con = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\omar\Documents\Visual Studio 2005\WebSites\Project1\App_Data\Database.mdf;Integrated Security=True;User Instance=True");
string chkUser = "Select * FROM [User] where Email='" + UserName + "' AND Password='" + Password + "'";
dt = dbClass.ConnectDataBaseReturnDT(chkUser);
if (dt.Rows.Count > 0)
{
  boolReturnValue = true;
  Session["UserId"] = dt.Rows[0]["Id"].ToString();
  string que = "UPDATE [User] SET LastLogin = GETDATE() where Id=" + Session["UserId"].ToString();// here is code of  lastlogin
<pre lang="midl">string que1= DateTime.Parse(dt.Rows[0]["RegisterDate"].ToString());
               dbClass.ConnectDataBaseToInsert(que);

//暗黙の型 system.date.time を文字列に変換できません

dbClass.ConnectDataBaseToInsert(que1);
}
boolReturnValue を返します。

ユーザー登録時に登録日を取得する方法が欲しい

解決策 2

登録プロセスの一部としてユーザーを作成するときは、現在の日付を保存します。
上記のコードで情報を読み取るときは、値を読み取るだけです。

DateTime registeredOn = (DateTime) dt.Rows[0]["RegisterDate"];

データベース アクセスを処理するためのより良い方法を検討することをお勧めしますが、文字列の連結は非常に危険です。偶発的または意図的な SQL インジェクション攻撃につながる可能性があります。 SqlCommand.Parameters.AddWithValue メソッドを使用して、代わりにパラメーター化されたクエリを使用することを検討してください

解決策 1

このように試すことができます

DateTime.Parse( dt.Rows[0]["RegisterDate"].ToString());

またはこのように

Convert.ToDatetime(dt.Rows[0]["RegisterDate"].ToString())

コメント

タイトルとURLをコピーしました