こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

データベース内の値をweb内でテキスト表示させるには??

データベース内の値をweb内でテキスト表示させるには??

データベース内の値をweb内でテキスト表示させるには??

現在、フォーム認証(ID入力後、表示ボタンをクリック)の後に入力したIDとデータベースを連携させデータベース内の該当する値をlabelに表示させようとしています。

開発環境は
・言語:C#
・VisualStudio2008Pro
・SQLSever2005EXPRESS

ソースは以下のようになっています。
<%@ Page ContentType="text/html" Language="C#" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<script runat="Server">
void objBtn_Click(Object sender, EventArgs e) {
// 入力されたユーザーIDでtestテーブル内のレコードを検索
SqlConnection objDb=new SqlConnection("Data Source=(local);User ID=xxx;Password=xxx;Persist Security Info=True;Initial Catalog=master");
SqlCommand objCom = new SqlCommand("SELECT 所持数 FROM test WHERE 本人ID=@本人ID", objDb);
objCom.Parameters.Add("@本人ID", txtUsr.Text);



objDb.Open();
SqlDataReader objDr=objCom.ExecuteReader();
if(objDr.Read()){

// 検索の結果、該当するレコードが存在した場合、認証は成功
FormsAuthentication.RedirectFromLoginPage(txtUsr.Text,false);
   ※このあとを色々と試したのですが駄目でしたorz
objLbl.Text=objCom;
}else{
objLbl.Text="正しいユーザーIDを入力してください";
}
objDb.Close();
}
</script>
<html>
<head>
<title>所持数表示</title>
</head>
<body>
<form id="Form1" runat="Server">
<center>
<h1>所持数表示</h1>
<hr />
<b>ユーザーID:</b>
<asp:TextBox id="txtUsr" runat="Server" Columns="12" /><br />
<br />
<asp:Button id="objBtn" runat="Server" Text="表示" OnClick="objBtn_Click" /><br />
<asp:Label id="objLbl" runat="Server" ForeColor="Red" />
</center>
</form>
</body>
</html>

if文の後にテキスト表示の記述をしなければならないと思うのですが方法がわかりません。
フォーム認証後に該当の値を表示させる方法がわかれば一番いいのですが、単にデータベースの中の値をテキスト表示する方法だけでも大変助かります!!

初心者で手詰まりの状態でものすごく困っていますorz
わかる方がいらっしゃったら教えて下さい!よろしくお願いしますm(_ _)m

投稿日時 - 2010-06-07 23:55:27

QNo.5952637

困ってます

このQ&Aは役に立ちましたか?

22人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.1

if(objDr.Read()){

// 検索の結果、該当するレコードが存在した場合、認証は成功
FormsAuthentication.RedirectFromLoginPage(txtUsr.Text,false);
   ※このあとを色々と試したのですが駄目でしたorz
//objLbl.Text=objCom;


//下記のソースを参照する:
objLbl.Text = objDr.GetInt32(0).ToString();
// または
objLbl.Text = ((int)objDr["所持数"]).ToString();


}else{
objLbl.Text="正しいユーザーIDを入力してください";
}

投稿日時 - 2010-06-08 16:25:06

補足

yamamoto007さん回答ありがとうございます!!

早速試させてもらいました!

しかしながらテーブル内の値を表示することができませんでしたorz

詳しく状況を説明するとテキストボックスにIDを入力(テーブルに存在するID)して表示ボタンを

クリックするとテキストボックスが空になり元の状態に戻ります。

テーブルに存在しないIDを入力したときはエラーメッセージが発生しているので一応はデータベースに

接続できていると思われるのですが実際はよくわかりません(-д-;)

もしかしたらif文の後のフォーム認証のクラスが邪魔をしているのでしょうか??

投稿日時 - 2010-06-08 17:15:41

あなたにオススメの質問