• ベストアンサー
  • すぐに回答を!

Server.CreateObjectでエラー発生

昨日もお世話になりました、naritanです。 Win98+PWS(ノートPC/LAN接続なし)の環境下で、ASPでの開発を行っております。 入力されたデータをjavascriptでチェックをかけて、OKならサーバ側vbscriptにて DBへの書き込みをしようとしています。 業務上でもASPを使っているのですが、 環境が異なり、その上、初心者ですので、本を読んでいても イマイチ何がなんだか訳がわかりません。 そこで、お聞きします。 (1)入力された値をjavascriptでチェックして、OKならサーバ側vbscriptでdbへ登録するにはどのように記述したらよいのでしょうか? (2)自分なりに(1)を記述してみたのですが、 Set conn = Server.CreateObject("ADODB.Connection") の部分で、Serverオブジェクトが見つからないという、エラーが表示されます。 そろそろ頭が爆発しそうなので、よろしくお願いいたします。

共感・応援の気持ちを伝えよう!

  • 回答数1
  • 閲覧数710
  • ありがとう数1

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

  • ベストアンサー
  • 回答No.1
  • msystem
  • ベストアンサー率42% (79/186)

えっと、javascriptは、クライアントサイドのスクリプトですか? もしそうであれば、クライアントサイドのスクリプトからServerオブジェクトはアクセスできないと思います。(経験なし すいません) いちばん簡単なのは、javascriptとチェックした結果をformなどでサーバーに送り(別ページになります)、そのページでServerオブジェクトを使ってデータベースに書き込まれてはどうでしょうか? もしどうしても、入力のページのまま、データを書き込みたいのであれば、JAVAアプレットを使うか、ActiveXドキュメントを使ってDCOMでサーバーと通信をするしかないのではないでしょうか?(DHTMLでもできると聞いたことはありますが、自信はありません)

共感・感謝の気持ちを伝えよう!

質問者からのお礼

ありがとうございます。 早速、formでサーバに送って作成してみます。

関連するQ&A

  • Global.asaxで Server.CreateObject("ADODB.Connection")が出来ない

    ASP→ASP.netへ移行作業をしています。 Global.asaで、 set Application("DB") = Server.CreateObject("ADODB.Connection") を、 Global.asaxで、 Application("DB") = Server.CreateObject("ADODB.Connection") としたのですが、エラーで、 「コンポーネント 'ADODB.Connection' を作成できません。アパートメント スレッド コンポーネントは、<%@ Page aspcompat=true %> ページ ディレクティブを含むページでのみ作成できます。 」 となってしまします。 <%@ Page aspcompat=true %>を記述すればよいのかと思い、Global.asax中に記述しましたが、エラーになってしまいました。 'ADODB.Connection'を作成するには、どうすればよいでしょうか?

  • 物理的に離れたDBに同時に値を記録するには?

    ASPを使用して、物理的に離れているDBサーバーに、 フォームで入力された値、あるいはSession変数などに格納された値を、同時に記録したいのですが、 どうすれば良いのでしょうか? LAN内部に存在する二つのDBサーバーの場合は Server.CreateObject("ADODB.Connection") を使用してそれぞれのDBサーバーのコネクションを 作成すれば大丈夫なのですが、同じLAN内部に 存在しない二つのDB(東京・大阪など)に全く同じ データーを記録したいのですが。。。 一つ目のDBサーバーの存在するASPファイルの処理の中で、 もう一つのDBサーバーにデーターを記録する為には、どのようなコマンドを使用すれば、二つ目の DBサーバー内に用意してあるデータ記録用ASPファイル を実行して、そのデーターを二つ目のDBサーバーに 記録できるのでしょうか?

  • ASPでORACLEのエラーが発生するのですが、対処方法をお教えください。

    Win2000(IIS) + ORACLE8.1.6 でASPを使ったWEBサーバを構築しようとしています。 まず手始めに、単純にデータを登録するような簡単なASPを作成しようとしているのですが、 下記処理が、133行目でエラーになってしまいます。 ※当然の事ながら、ODBC接続の設定は正常に行えていることを確認しております。  (Accessでリンクテーブルを使って、ODBC経由でテーブルにデータを追加できます。) <処理内容 (/Oracle/newtoroku.asp の一部)> 126行目 Dim Conn,SQL,RS 127行目 DBName="Provider=msdaora;Data Source=xxxxx;User ID=xxxxx;Password=xxxxx" 128行目 Set Conn = Server.CreateObject("ADODB.Connection") 129行目 Conn.open DBName 130行目 SQL = "select * from XXテーブル" 131行目 Set RS = Server.CreateObject("ADODB.Recordset") 132行目 RS.Open SQL, Conn,3,2 133行目 rs.AddNew <エラー内容> ADODB.Recordset (0x800A0CB3) 現在の Recordset は更新をサポートしていません。 プロバイダか、選択されたロックタイプの限界の可能性があります。 /Oracle/newtoroku.asp, line 133

  • ASP.NETでSQL-SERVERへの接続方法

    最近、ASP.NETの勉強をはじめました。テキストを見ながらサンプルプログラムを作成しているのですが、SQL-SERVERへのDB接続方法がうまくいきません。 Dim conn As String = "data source=????;user id=sa;password=;initial catalog=SampleDb" Try   Dim objConn As New SqlClient.SqlConnection   objConn.ConnectionString() = conn   Dim comm As New SqlClient.SqlCommand(sql, objConn)   objConn.Open() ソース一番上の????の部分に何と記述すればいいかわかりません。テキストには localhost と記述されています。コンパネの「ODBCデータソース」のDSNやサーバ名を記述しても無理でした。 ASP開発で使用していたDB接続 Conn = "PROVIDER=SQLOLEDB;SERVER=サーバ名;DATABASE=YUSODB;UID=sa;PWD=;" を試したりしたのですが、無理でした。 どなたかご教授お願いします。

  • IUSR でCreateObject("Excel.Application")ができない。

    こんにちは。 ASPでCreateObject("Excel.Applilcation") を行いたいのですが、 認証ユーザがIUSRのときに ------------------------------------------------ Microsoft VBScript 実行時エラー エラー '800a0046' 書き込みできません。: 'CreateObject' ------------------------------------------------ と、失敗してしまいます。 認証ユーザをAdministratorにすると正常動作しました。 どこかのフォルダにIUSRの権限設定を行えばよいのかなと思うのですが、 ご存知の方教えてください。 ------------------------ 環境 ------------------------ Windows Server 2003 IIS 6.0 Excel 2000

  • FileSystemObject Win2008Server

    FileSystemObject Win2008Server 今までのWin2003ServerをWindows2008サーバーに更新しました。 Accessデータベース関係は今まで通り処理出来るのですが FileSystemObjectを使ったTextファイルからの読み込みや加工が 出来なくなりました。 VBScriptで社内DBを稼働させています。 サーバーや設定の事はあまり詳しくないのですが 何をチェックすればいいのか、ご指導お願いします。 (1)これはエラーになりません Set connectObj = Server.CreateObject("ADODB.Connection") ConnectObj.Open "xxx" 以下Accessの読み書き (2)この実行でエラーになります。 Set fso = Server.CreateObject("Scripting.FileSystemObject") set tso = fso.OpenTextFile(fp,1) この実行でエラーになります。 以下テキストファイルの処理 お手数ですが宜しくお願いします。

  • Windows 2003 ServerのIIS

    今まで社内でNT → Win2000 Server とIISサービスを 利用してきました。VBScriptでASPを動かしていたのですが こんど2003Serverにして同じような設定で動くと思ったのですが、http://****/***.asp ファイルは以下のエラーになります。 ●「HTTP エラー 404 - ファイルまたはディレクトリが見つかりません。インターネット インフォメーション サービス (IIS)」 ●普通のhtml は問題なく表示されます。 ●セキュリテーや権限が以前とかなり違っているようなのですがIISマネージャの設定もいろいろ設定しました。 このままでは2000に戻すしかなさそうです。 ●\\****\***.asp で絶対パスを見に行くとファイルは存在しますが、(HTMLの部分は見られます)がVBScript内部は無視されます。 ●どこをチェックすればいいのかアドバイス頂ければ助かります。  以上宜しく御願いします。

  • ActiveX → VB を起動するとCreateObjectできない。

    初めまして。 2003Server+IIS6.0の環境でASP内のActiveXからShell関数でvbのexeを実行させる処理を作成しております。 サーバーから直接exeを実行させると正常に動くのですが、Web上からasp→ActiveX→exeを起動させるとテキストに書き込む処理はできるのですが、「CreateObject」文で「ActiveX コンポーネントはオブジェクトを作成できません」というエラーが返ります。 VB内でなぜ「CreateObject」が出来ないのかご存知の方はいますでしょうか。 宜しくお願いいたします。

  • 64bit環境のWin2003サーバにVBScriptでDBに接続するには?

    64bit環境のWindows 2003サーバにインストールされているSQL Server2005に対して、 VBScriptで作成したツールでデータを一括で更新しようとしています。 32bitの開発環境では問題なく動作したのですが、実際に64bitで実行するとエラーが発生しました。 その後の調査で32bit環境と64bit環境では接続方法が異なることは分かったのですが、 どの様な方法で接続すればよいのか分かりません。 ご存知の方、ご協力ください。 *******************************************************************  現在の接続方法 Const CONNECTING_STRING_SQLSERVER = "Driver={SQL Server};server=server_hogehoge; database=db_hogehoge;OPTION=16387;" Dim conn Set conn = CreateObject("ADODB.Connection") conn.connectionString = Replace(CONNECTING_STRING_SQLSERVER ,"<VAL1>",SQLSERVER_NAME) conn.Open ******************************************************************* 以下のような接続文字列も試してみたのですが、上手く行きませんでした。 Const CONNECTING_STRING_SQLSERVER = "Provider=SQLOLEDB;Data Source=server_hogehoge;Initial Catalog=db_hogehoge;Integrated Security=SSPI;" 尚、今回の前提は以下の通りです。 OS:Windows Server 2003 R2 Standard x64 Edition ServicePack2 DB:SQL Server2005 Express Edition DB認証方式:Windows認証 その他:スクリプトはサーバ上で直接実行 宜しくお願いします。

  • ASP + MDBで発生したエラーが解決できません。。。

    こんにちは。 いま、ローカルPCでシステム開発をしています。 環境としては、  WindowsXP + IIS + ASP + MDB(ACCESS2003) です。 いま、MDBにDB接続して、データを取得しようとしているのですが、以下のエラーが発生していて、治りません。 【エラータイプ】 Microsoft VBScript 実行時エラー (0x800A01B6) オブジェクトでサポートされていないプロパティまたはメソッドです。:Open ソースコードは以下の通りです。 【ソース】 'コネクションオブジェクト Set objCon = Server.CreateObject("ADODB.Connection") objCon.Provider = "Microsoft.Jet.OLEDB.4.0" objCon.ConnectionString = "C:\test.mdb" objCon.Open 'レコードセットオブジェクト objRs = Server.CreateObject("ADODB.Recordset") objRs.Open strSQL, objCon, 3 上記のobjRs.Open→Set objRs = objCon.Executeに変更するとエラーは発生しないのですが、RecordCountなどのプロパティが利用できません。 色々と調査したのですが、全くわかりません。 どなたか情報をご存知でしたら、ぜひともご教示ください。 宜しくお願いします。