- PR -

AC等の入力対応

投稿者投稿内容
ミキ
常連さん
会議室デビュー日: 2004/11/12
投稿数: 34
投稿日時: 2004-12-13 11:25
おはようございます。
いつもお世話になっています。

現在、入力→確認→登録(SQLServer)という構成の処理を作成しているのですが
入力項目に「A<B>C」と入力した場合、
確認画面では「A<B>C」と表示されるのですが
テーブルには「A&lt;B&gt;C」と登録されてしまいます。

●確認画面でのデータ表示は
  Public ReadOnly Property strIraisya() As String
   Get
     Return lblIraisya.Text
   End Get
  End Property

  lblIraisya.Text = Server.HtmlEncode(fp.strIraisya)
のようにしています。

●登録時の処理は
  上記の「lblIraisya.Text」の値をINSERTしています。



確認画面で非表示のラベルを用意(lblIraisya_hidden)し、
  lblIraisya_hidden.Text = fp.strIraisya
で非表示ラベルに値を格納しています。

このラベルのデータをDBへの登録を行ったところ問題なく行われました。

A<B>Cのような入力も可能としたいのでが、
その場合、各項目に非表示フィールドを用意しそこからDBへの登録を行った方が良いのでしょうか?
また、A<B>Cのような入力も可能とする場合、注意すべき点は何でしょうか?


どなたかお教えください。
よろしくお願いします。
burton999
ぬし
会議室デビュー日: 2003/10/06
投稿数: 898
お住まい・勤務地: 東京
投稿日時: 2004-12-13 11:54
DBにはHtmlEncodeしないで格納すればイイ気がします。
登録するデータはSessionとかに保持していないのでしょうか?
確認用に表示したデータ(HtmlEncodeしたデータ)をDB登録用に使用することに少々、違和感を感じます。。。

ミキ
常連さん
会議室デビュー日: 2004/11/12
投稿数: 34
投稿日時: 2004-12-13 12:00
引用:

DBにはHtmlEncodeしないで格納すればイイ気がします。
登録するデータはSessionとかに保持していないのでしょうか?
確認用に表示したデータ(HtmlEncodeしたデータ)をDB登録用に使用することに少々、違和感を感じます。。。





お返事ありがとうございます。

入力→確認→登録という場合、Sessionを使うのが基本なのでしょうか?
.NETでの開発が乏しい(1ヶ月)ため気づきませんでした。

しかし、現在開発中の入力項目が約70弱あります。
この場合でもSessionを使用する方がよろしいのでしょうか?
とっと
大ベテラン
会議室デビュー日: 2004/03/25
投稿数: 197
投稿日時: 2004-12-13 12:01
こんにちは。

例えばXMLファイルに登録するときはこういう置換を行います。

そのまま登録するとタグが崩れてしまうからです。
甕星
ぬし
会議室デビュー日: 2003/03/07
投稿数: 1185
お住まい・勤務地: 湖の見える丘の上
投稿日時: 2004-12-13 12:44
引用:

ミキさんの書き込み (2004-12-13 12:00) より:
しかし、現在開発中の入力項目が約70弱あります。
この場合でもSessionを使用する方がよろしいのでしょうか?


Sessionを使ったほうがよいかどうかは、項目数だけで単純には判断できないです。Session変数に持たせる方法、Hiddenコントロールに持たせる方法、データベースに持たせる方法、Cookieに持たせる方法、それぞれのメリットデメリットを知った上で、仕様にてらして判断するしかないですよ。
項目数が多い(データが多い)ならSessionの内容をSQLサーバーにもたせることもできます。そうすれば実質的な容量の制限はありません。
Hiddenコントロールに持たせた場合、毎回サーバークライアント間でそのデータを通信することになります。データが増えればネットワーク大域を圧迫することになります。またセキュリティ上送らないほうが望ましいデータもありますよね。
ミキ
常連さん
会議室デビュー日: 2004/11/12
投稿数: 34
投稿日時: 2004-12-13 15:38
ご指摘ありがとうございます。

引用:

Sessionを使ったほうがよいかどうかは、項目数だけで単純には判断できないです。Session変数に持たせる方法、Hiddenコントロールに持たせる方法、データベースに持たせる方法、Cookieに持たせる方法、それぞれのメリットデメリットを知った上で、仕様にてらして判断するしかないですよ。




Session
・ページ間で値を受け渡す事ができる
・大きなデータを格納しておくとパフォーマンスの影響を受けやすくなる
・一旦接続を切ると値が破棄される

Cookie
・次にサイトを訪れるまでユーザーのコンピューターにデータを格納しておける

お恥ずかしながらこの程度の事しか認識していません。

是非、
「Session変数に持たせる方法、」
「Hiddenコントロールに持たせる方法」
「データベースに持たせる方法」
「Cookieに持たせる方法」
のメリットデメリットを教えて欲しいです。




引用:

項目数が多い(データが多い)ならSessionの内容をSQLサーバーにもたせることもできます。そうすれば実質的な容量の制限はありません。



これはどのように実現するのでしょうか?
サーバーの方でなにかするのでしょうか?


是非、お教えください。よろしくお願いします。
burton999
ぬし
会議室デビュー日: 2003/10/06
投稿数: 898
お住まい・勤務地: 東京
投稿日時: 2004-12-13 16:56
とりあえず、ここの第15回を中心に一通り読まれたほうがイイと思います。
http://www.atmarkit.co.jp/fdotnet/aspnet/index/index.html
ミキ
常連さん
会議室デビュー日: 2004/11/12
投稿数: 34
投稿日時: 2004-12-13 17:16
引用:

とりあえず、ここの第15回を中心に一通り読まれたほうがイイと思います。
http://www.atmarkit.co.jp/fdotnet/aspnet/index/index.html




ありがとうございます。
これから読んでみたいと思います。

スキルアップ/キャリアアップ(JOB@IT)