• ベストアンサー

データを書き込む際、全角数値を半角で登録するには

ASPにおいてSQL-SERVERにデータを書き込む際に全角数値だったら半角数値になおして書き込むことは可能でしょうか?? 例:1234→1234 もし可能ならばご教授お願いします!!!よろしくお願いします!!! ちなみに理由はHTMLフォーム上で電話番号等数値入力のコントロールで全角で入力してしまうことがある為、対応として全角を半角で登録ってことになりました・・・。現在はバイト数で半角全角チェックを行っていますが、このチェックはなくすことになります。。。だれか助けてください。。。IMEの制御は行っていません。サーバはWINDOWS2000、処理ブラウザはIE、DBはSQL-SERVER2000を使用しています。

質問者が選んだベストアンサー

  • ベストアンサー
  • cookei
  • ベストアンサー率33% (4/12)
回答No.3

VBだと、StrConvという変換関数が存在するのですが、ASPにはそれがないので、関数を作るしかないと思います。 こんなサンプルソース&解説のページを見つけましたので、ご参考にしてください。

参考URL:
http://www.dolphinnetservice.ne.jp/AcrobatASP/1.asp
すると、全ての回答が全文表示されます。

その他の回答 (2)

回答No.2

hequilさんが書かれたようにBASP21を使う方法がありますが、 BASP21をインストール出来ない場合もありますよね。 数字は10個しかないので str = "1234" str = Replace(str,"0","0") str = Replace(str,"1","1")      ・      ・ str = Replace(str,"9","9") と1つずつ変換をかけてあげるのも手です。 また、「数字だけの文字列」ならばこれでも出来ます。 str = Cint(str) 多分正式な使い方じゃないので動作保障は出来ませんが…

すると、全ての回答が全文表示されます。
  • hequil
  • ベストアンサー率65% (242/372)
回答No.1

BASP21が使えるのなら、strConvで変換できます。 DIm objBasp Dim strZen Dim strHan strZen = Request.Form("tel") Set objBasp = Server.CreateObject("basp21") strHan = objBasp.StrConv(strZen, 8) Set objBasp = Nothing

参考URL:
http://www.hi-ho.ne.jp/babaq/basp21.html#0022
すると、全ての回答が全文表示されます。

関連するQ&A