JavaScriptからDLLは呼べるか?

[上に] [前に] [次に]
げん 2000/02/01(火) 09:25:28
質問です。SQLサーバにDBが存在している状態で、ホームページから
入力された内容により、DBの更新をしたいと思います。
DB更新のプログラムはDLL化されています。
例えば、<SELECT></SELECT>中のオプションが選択されたら、
onChangeイベントを起動して、JavaScriptが動作するとします。
このJavaScript内でDB更新(DLLの起動)を行いたいのですが
実現できるでしょうか?

げん 2000/02/01(火) 09:39:11
追加です。
JavaScriptでダイレクトにSQL文を書く方法ってありますか?
(そんな技はないって言われそう・・・)

無責任官庁 2000/02/01(火) 10:22:10
げんさんの言うJavaScriptはクライアントPC内で動作するので、
それは無理なような気がします。
(アプレットなら出来るかもしれませんが)
サーバーのDLLは、サーバー内で処理しなきゃダメだと思います。
CGIとかASPとか、そういうプログラムで。
SSJS(ServerSideJavaScript)で言う所のJavaScriptなら、
できるかもしれませんが、言っていることと違いますし、私には分かりません。
CGIとして何かプログラムを作り、その中でそのDLLの関数をコール
するような感じで作るようになるんじゃないかな。

げん 2000/02/01(火) 10:48:06
ありがとうございます。m(^_^)m
ファイルは.aspなんですけど、その中ではhtmlとVBScriptとJavaScriptで
データを操作しています。
この.asp内のVBScript部分でDLLを呼び出すことは可能なのですが、
タイミング的にとあるボタンが押下されたら、次の.aspを呼び出す前に
DBにデータが登録されている状態でないと正常に動かないのです。
というもの、次に呼び出す.aspはメニュー画面的な要素が大きいので、
複数の遷移先からここに戻ってくるため、その都度.aspが動作してしまうし、
なおかつフレーム分割しているので呼び出す.aspが複数あって
どちらか一方でDB登録処理をしても、もう片方の.aspでこの登録された内容を
見て処理を振り分けるようなことをするので、.aspの動作タイミングによっては
正常に動作しないことも考えられます。
ので・・・やりたかったんですけど。
やっぱり無理がありますかね?
最悪、このメニュー画面の前にDB登録用の画面を1枚作るしか
ないですかね?
ちなみに、JavaScriptにCrateObjectなんてないですよね?
それと、この(呼び元).aspでは、SQL文でDB操作していて
コネクションは取れています。

無責任官庁 2000/02/01(火) 12:10:52
Button1 → DB追加 → Menu1.asp
Button2 → DB追加 → Menu1.asp
Button3 → DB追加 → Menu2.asp
Button4 → DB追加 → Menu2.asp
Link1 → Menu1.asp
Link2 → Menu2.asp

大体こんなイメージですかね?
(分かりづらいかな?勘弁して・・・)(^-^;

私も似たようなことやってますけども、私の場合は…

DB追加処理が少量の場合は、
DB追加処理でMenu1.aspとかをSSIで取り込んでしまってて、
処理後にSSIで展開した部分が動作するように仕組んでます。
(もちろん押されたボタンによる各SSIへの条件分岐あり)

DB追加が時間がかかるものの場合は、
ボタンを押す所でメニューへのリンクもデータとして渡してあげて、
DB追加処理では「処理中ですお待ちください」とかテキトウなこと書いて、
しかもテキトウなウェイトかまして処理後location.href でリダイレクト(笑)

#こんな事かいてるの上司に見つかったらヤバイよな(笑)
#イントラのみの使用で、開発が私一人だからできる荒業(謎)

SSIは意外かもしれませんけど、ASPよりも先に解釈されるので、
結構多用してます。これは本音です。
(っていうか、考えるのが面倒なだけかも)

>ちなみに、JavaScriptにCrateObjectなんてないですよね?
JavaScriptには無いと思います。
JScriptには、ActiveXObjectってのがあります。
が、クライアントでの実行は、???です。

ちょっと参考にならなかったかもしれませんね。
私もASP初心者なもんで、すみません。
なんか他にいい案があれば、私も知りたいですねぇ。
クライアントを介さずに、ASP→ASPって感じのが出来るのが理想ですけどね。
(私の場合、その代替案がSSIってわけです)

げん 2000/02/01(火) 13:08:33
[[解決]]
そうですか。私もあまり分かっていないので、基本的な組みかた?
(どれが基本なんだろうって気もする・・・)
しかできませんが。
ためしにやってみて、あまりにも複雑になりすぎたらしょうがないので、
(ただでさえフレーム4つも切ってるから、操作が大変。)
(なおかつ、データ表示フレームとかコマンドボタンのフレームとか
機能によってフレーム分割しているので、処理を振り分けるのが大変。)
1枚画面をかますしかありませんね。
上記は、参考にさせていただきます。
ありがとうございました。

[上に] [前に] [次に]