トップページphp
982コメント364KB

==ASP== Part 2

レス数が900を超えています。1000を超えると表示できなくなるよ。
0001nobodyさん02/07/30 19:28ID:FEU9c2CH
ASP について語るスレ その2

前スレはこっち
http://pc.2ch.net/test/read.cgi/php/984840107/
0813nobodyさん03/04/07 23:37ID:???
>>811
バーチャルホストで分ければスクリプトなしでもいけるし、
meta タグの refresh 使う方法もあるし、
>>812の通りResponse.Redirect もある。
やり方はいろいろあるね。
0814大バカモノ03/04/09 22:38ID:BAsDAdoR
すいません!おしえてください!
ASPってのは一体どうなってるのですか?
どんなものか概要はわかるのですが、状態がどうなってるのか
わかりません。
ASP拡張子で保存したASPタグ(例えばカウンタ)ってのは
自分PCに持ってるだけじゃなんにも機能しないんだよね?
サバにアップすると<% 〜〜 %>内が
マイクロソフトのASP機能用のとこにつながって
実行されるの??どうなってるの?
0815nobodyさん03/04/11 16:27ID:M04RGm6r
ASPでファイルをダウンロードさせた後、完了画面を出したくて悩んでいます。どうかお知恵を貸してください。
ファイルのダウンロードに関しては、

Response.ContentType = "application/octet-stream"
Response.AddHeader "Content-Disposition", _
"attachment; filename=" & CSVFILNM
Set bobj = Server.CreateObject("basp21")
barray = bobj.BinaryRead(application("NOUHIN_DATA_LOCAL_PATH") & TRIM(CSVFILNM))
Response.BinaryWrite barray
Response.Buffer = True
Set bobj = Nothing

上記コードでできたのですが、このコードの後、完了の画面を出そうと

Response.Redirect(D60000000A.asp)

と記述すると、ASPの吐き出すエラーがダウンロードファイルに不可されてしまいます。Response.Endを使うとここで処理が終わってしまうし。。。

ASPの吐き出すエラーは以下です。

<font size=2>
<p>Response オブジェクト</font> <font size=2>エラー 'ASP 0156 : 80004005'</font>
<p>
<font size=2>ヘッダーのエラーです</font>
<p>
<font size=2>?</font>
<p>
<font size=2>HTTP ヘッダーはすでにクライアントのブラウザに書き込まれています。HTTP ヘッダーの修正はページ内容を書き込む前に行われなければなりません。

どうかお助けください。よろしくおねがいします。(ぺこり)

0816nobodyさん03/04/11 19:49ID:M04RGm6r
>>815
一部ケアレスミスがあったので訂正します。

Response.Redirect(D60000000A.asp) 誤
Response.Redirect("D60000000A.asp") 正

0817nobodyさん03/04/11 22:45ID:5V1Zkb7y
>>815
そりゃ考え方自体間違えているべな。

クライアントスクリプト内で
ファイルのダウンロード←新規ウインドウを開くとか。
ロケーションの変更

というような処理が必要だべ
0818◆nZptw02DTU 03/04/12 12:49ID:???
>>815
HTTPは1リクエスト1レスポンス
817のようにダウンロードを別ウィンドウとかにしなさい。

どっちにしてもWebアプリケーションで手取り足取り制御仕様と思うこと
自体が間違い。
0819nobodyさん03/04/13 10:56ID:???
ユーザがaspファイルやaspxファイル以外のjpgファイルなどにアクセスしてきたときにそのjpgとは別のコンテンツにジャンプさせるにはサーバのどこを設定すればよいのでしょうか?
0820◆rRBneROnb2 03/04/14 01:29ID:???
>>819

ん?
直接見せちゃいけないファイルならWeb上に載せなきゃいいべさ。

そのJPGファイルを表示させるためにはASPだろうがASP.NETでも
なんでもいいからプログラムから出力するようにすればいいべ。

たとえば、
JPGファイル→(バイナリデータ取得)→PG→(バイナリデータ出力)→ブラウザへ
とかいう仕組み。
ただ、この場合はJPGファイルを表示させるプログラムのURLを直接
叩かれた時のこととかは考えておかなければならない(それを防ぐ処理
も組み込んでおくべさ)

0821◆rRBneROnb2 03/04/14 01:45ID:???
ついでに、

>>814
状態どころか、概要もわかっていないんじゃ・・・。

まず概要は、ASPもPHPもCFもJSPも似たようなもん。
(まあ細かいことは初心者が気にするべな)

プログラムのリクエストがWebサーバに来たら、
そのプログラムを実行するアプリケーションサーバに処理が渡って
解析&実行される。
その結果がWebサーバに返って、クライアントに送られる。

でもってASPの場合、ASPがHTMLファイル内でプログラムの開始と終了を区
別するタグが「<%」と「%>」なんだべさ。 

08221 ◆ExGQrDul2E 03/04/14 09:39ID:???
>>820
閲覧者がttp://www.com/〜.jpgにアクセスしてきたら、アダルトページに飛ばしたりしたいんです。
アパッチェだとサーバの設定でなんとかなるらしいんです。
0823nobodyさん03/04/14 11:03ID:eyRKJiP1
>>822
多分リファラで判別してうんぬんっていうことやりたいと思うんだが、
IISじゃ無理。
0824◆rRBneROnb2 03/04/14 13:36ID:???
>>822
プログラムうんぬんではなく、IISでApache + mod_rewrite
の機能をしたいってことか。

うんなら、
IISRewrite や OpUrl - ISAPI URL Rewriteでも使用するか
(ホントにできるかは知らんので自分で要検証。ぐぐれ)
ISAPIフィルタでもC言語で自作してけろ。
082582203/04/14 14:30ID:???
>>823-824
ありがとうございます。
リファラやrewriteについてさぐってみます。
アパッチェでのやり方ならこんなかんじとのことです。
ttp://pc2.2ch.net/test/read.cgi/php/1045091733/298-
0826nobodyさん03/04/14 14:30ID:???
ASPがVB製ActiveXDLLを呼んで、VB製ActiveXDLLがVC++製DLLを呼んでいるんですけど
こういうのって問題が起こりますか?
というか起こってるんですけど。
ASPからActiveXDLL内のプロパティにパラメータを与えて、そのパラメータを引数にしてDLLを呼んで
DLLから引数経由で返って来た値をActiveXDLLのプロパティに格納してASPからそれを
参照という形なんです。
テスト時は特に問題はなかったのですが運用でときどきDLLから正常な値が
返ってきていないみたいなのです。
通常Aを渡してA'が返ってくるとして、並列動作したら
Aを渡したらB'
Bを渡したらA'
のようなことがありえるのでしょうか?テストしてるかぎりは問題ないのですが。
0827◆nZptw02DTU 03/04/14 16:40ID:???
>>826
そういうつくりは問題ない。

あとはプログラムの問題。
しかも並列でおかしいならマルチスレッドの考慮がないからじゃないのか?

へんなグローバル使ったりしてないか?
0828nobodyさん03/04/14 16:42ID:???
>>827
すみません。並列動作時じゃなかったです。
0829nobodyさん03/04/14 17:33ID:???
>>822-825
URLへのリダイレクトを使えば出来る。詳しくはヘルプね。

もしくは 404 Not Found のカスタムエラーメッセージを
URLで他のページに飛ばすとかも可能。
0830nobodyさん03/04/14 18:48ID:???
補足。

・ASPのResponse.Redirect 関数
他のURLに飛ばす関数。もちろんASPのプログラム内でしか記述できない。

・IISのエラー メッセージ
HTTPエラーが発生したときに表示させるHTMLやらURLやらを設定できる機能。
829の言っているのはWebサーバにファイルが無い時に飛ばしたい時の設定。
なお設定可能なエラーコードは以下の通り。
ttp://www.microsoft.com/japan/developer/library/jpiis/iishelp/iis/core/iierrabt.htm

どっちにしろ、822が求めているものは何なのかがはっきりしない限り
どのアドバイスも的を得ていない可能性大(w
083182903/04/14 22:52ID:???
>>830

> ・ASPのResponse.Redirect 関数
このことじゃないっす。。。

サイトのプロパティのホームディレクトリや
仮想ディレクトリのプロパティの仮想ディレクトリにある
「このリソースへの接続時に使用されるコンテンツの場所」
で「URLへのリダイレクト」を選ぶってこと。
そのサイト以下もしくは仮想ディレクトリ以下すべてまとめて
指定先に飛ばせる。

> ・IISのエラー メッセージ
こちらも補足しておくと、404のカスタムエラーのメッセージの種類を
「URL」にしてエラーページを指定するってこと。

両方とも指定先のページを自前のASPファイルにしておけば、
存在しないファイルのリクエストが来たときに
そのASPファイルにリダイレクトされるので、
そこで 〜.jpg のリクエストだったら
アダルトへ飛ばすなんてことは簡単。

長文スマソ
083282303/04/14 23:19ID:Ywk/i3R9
>>829
直リン禁止にしたいというときはそれじゃ駄目じゃない?
漏れはエロサイトでよくあるような正規のHTMLファイルからのアクセスしか
受け付けないようにしたいというようにとったのだが。

それとも出来る?
083382203/04/15 01:18ID:???
んーーーーどの解答もびみょーなんですけど。
ASPにResponse.Redirectメソッドがあるけど、それは.aspファイルや.aspxファイルでしか使えずに、
.jpgではつかえないわけですよね。画像ファイルなので。
しかし、あるjpgファイルなどのasp以外のファイルにユーザがアクセスしてきたときにもResponse.Redirectみたいに指定したページにジャンプさせたいなあと。
ttp://hakagi.s3.x-beat.com/cgi-bin/img-box/img20030312203903.jpg
↑にアクセスすると拡張子がjpgのアドレスなのにhtmlファイルにとびます。これのことです。
083482603/04/15 08:24ID:???
クラスのインスタンスを作るのにnewで宣言してるんですけど
これがまずいのでしょうか?
083582903/04/15 09:52ID:???
>>832-833
>>831 はResponse.Redirectの方法ではないよ? よく読んで考えてみ。

たとえば //hakagi.s3.x-beat.com/cgi-bin/ の仮想ディレクトリを、
//hakagi.s3.x-beat.com/imgchk.asp へのリダイレクトにして
直リンクか調べればいいわけだ。

カスタムエラー404を使う場合も同様。
//hakagi.s3.x-beat.com/cgi-bin/img-box/img20030312203903.jpg
自体は存在しないようにして、このURLのリクエストがあったら
直リンクか調べて img20030312203903.jpg の本当のファイルを
返せばいいだけ。

っていうか、>>833 のことがやりたいだけなら、最初に >>820が書いた
//hakagi.s3.x-beat.com/cgi-bin/img-box.asp?img20030312203903.jpg
で十分な気が…
083682203/04/15 10:03ID:???
>>835
ということは、わざと存在しないjpgにアクセスさせて、404を発生させて、別のページにジャンプさせると。
やっとわかった。
0837◆rRBneROnb2 03/04/15 10:26ID:???
あっ、まだこの話してたんだ(w
これで 822 は解決か?

ちなみにIISのURL Rewriters モジュールについてさらに調べて
みたんだけど、こんだけ出てたんだねぇ
http://www.iismodules.com/ViewInCat.asp?ID=17
083882203/04/15 10:30ID:???
>>837
解決ということで。
そのページは英語が読めるようになったら読むとしよう。
0839103/04/15 11:01ID:???
ここは答えてもらうのがさも当然と勘違いしている 822 の教育の場ですか?
0840nobodyさん03/04/15 11:09ID:???
>>822
ひさびさに興味深い質問だったよ
084182903/04/15 17:17ID:???
>>822,823 は
>>829,831,835 と3回書かないと理解できないのか。
疲れるなぁ。
084282303/04/15 18:23ID:???
>>841
あ〜、俺にも言いたいこと有るけど3回言わんと分からんアフォでいいよ。
0843○×△03/04/16 16:52ID:???
もう使い倒したというか、ASP.NETの存在によって今後少しづつ
開発案件が減っていくのではないかと思われるASP2.Xだけど、
これがASP開発の集大成というようなWeb開発をする上で役に立つ
モジュール群ってできてないよね?
(JAVAでいうフレームワーク)

それとも今さら作っても使う開発者がいないよって現状かな?(w
過去、作ろうぜ!とかみんなで関数を公開するという動きってな
かったのが残念。。。
0844山崎渉03/04/17 12:02ID:???
(^^)
0845山崎渉03/04/20 06:27ID:???
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
0846nobodyさん03/04/22 00:49ID:LqJLcS4G
ASPで共通処理を行う場合には、どのような方法がありますか?
たとえばDBに書き込む処理を切り出して、いろんなページから使えるようにしたいのですが・・
0847 03/04/22 01:01ID:???
>>846
<!-- #include file="db.asp" -->
0848nobodyさん03/04/23 12:45ID:???
ASPでPOSTで送信された全文を取得するにはどうしたらよいでしょうか?
0849nobodyさん03/04/23 13:01ID:???
>>848
For Each a In Request.Form
  Response.Write(Request.Form(a) & "<br>")
Next
っていうのじゃダメなのか?
0850nobodyさん03/04/23 13:10ID:???
>>849
できればそのままがよいのですが。
0851nobodyさん03/04/23 13:36ID:???
>>850
Request.Formで取り出したら?
↓こんなのが入ってるから。
Name=mona&Zip=9999999&Address=timtim&Tel=&Job=&Mail=&WD=1&Time=8:50&Q1=2&Q2=4&Q3=8&Q4=16&Q5=32&Step=1
0852nobodyさん03/04/23 13:54ID:???
>>851
ありがとうございました。完璧です。
0853糞みたいなやつ03/04/26 21:51ID:Aqo+klqp
やっとASP覚えたかと思ったらもう次はドットネットですか・・・
で、ドットネットっていままでのとどう違うの??
Response.Write"どうちがうの?"
0854nobodyさん03/04/26 21:57ID:U4T1z2Fa
>>853
VB厨には使えないところが違う。
0855 03/04/26 22:26ID:???
>>854
寧ろVB厨でもサーバーサイドプログラムを書けるように
ASP.NETがあるんじゃないの?
0856あぼーんNGNG
あぼーん
0857糞みたいなやつ03/04/27 07:30ID:/w4CdTDN
Fucking.Write"ロック"
0858ASP初心者03/04/27 14:12ID:+pnjWktN
全くの初心者です。。。すいません;
default.aspに下記のような記述があります。POST先も同じASPです。
一番困ったことは、submitが2つある場合の処理です。Aを押したときとBを押したときでは
hiddenで隠してあるxxxの値が変わり送信されるようにしたいです。
そしてxxxが"aaa"だったときと"bbb"だったときの表示されるページは異なるって感じにしたいです。
JavaScriptを一切使わずにVBScriptで記述するにはどうしたらいいでしょうか。宜しくお願いします。
-----------------------------------------------------------
'btnというfunctionを作成。多分間違ってる;
Function btn(x)
If x=1 Then
document.INPUT.xxx.value = "aaa"
ElseIf x=2 Then
document.INPUT.xxx.value = "bbb"
End If
End Function

If Request("xxx") = "" Then
'htmlは全てResponse.Writeで書いてありますが省略・・・
<form name=INPUT action=default.asp method=POST>
<input type=submit value=A onsubmit="btn(1)">
<input type=submit value=B onsubmit="btn(2)">
<input type=hidden name=xxx value="">
<form>

ElseIf Request("xxx") = "aaa" Then
'aaaを受け取ったときに表示させるページの記述

ElseIf Request("xxx") = "bbb" Then
'bbbを受け取ったときに表示させるページの記述

End If
0859ASP初心者03/04/27 14:14ID:+pnjWktN
あっ、<form>タグはちゃんと閉じてあります;
0860あぼーんNGNG
あぼーん
0861あぼーんNGNG
あぼーん
0862あぼーんNGNG
あぼーん
0863nobodyさん03/04/27 16:06ID:XH9elCLM
>>858
>hiddenで隠してあるxxxの値が変わり送信されるようにしたいです。
無理。

解決例
<form 〜>
<input type="hidden" name="hoge" value="aaa">
<input type="submit" value="A">
</form>
<form 〜>
<input type="hidden" name="hoge" value="bbb">
<input type="submit" value="B">
</form>
-------------------------------------
If Request.Form("hoge") = "aaa" Then
 'A用の処理
ElseIf Request.Form("hoge") = "bbb" Then
 'B用の処理
Else
 '初期ページ表示
End If

こんな感じ
0864ASP初心者03/04/27 16:21ID:+pnjWktN
>>863
返答有難うございます。えぇと、実はformは別にすることは構造上無理なんです。
結局はAを押してもBを押しても、hiddenにしてるxxxの値だけ違うだけであって
送信する他のフォーム部品(ここでは記述してませんが)のvalueは同じなので。

前にJavaScript使って
Function btn(x) {
If (x==1){
document.INPUT.xxx.value = "aaa";
document.INPUT.submit();
} else if(X==2){
document.INPUT.xxx.value = "bbb";
document.INPUT.submit();
}
}

でうまくいった経験があります。
VBScriptでもsubmitできる書き方があればいいのですが。。。
0865あぼーんNGNG
あぼーん
086686303/04/27 16:51ID:XH9elCLM
>>864
じゃああんまり美しくないけど、Submitボタンのvalueで区分したら?
<input type="submit" name="flg" value="送信A">
<input type="submit" name="flg" value="送信B">
これもRequest.Form("flg")で値("送信A"あるいは"送信B")が取り出せる。

ボタンの表題までいっしょにしたいというなら解決手段は多分無い。
0867ASP初心者03/04/27 19:21ID:+pnjWktN
>866
有難うございます。その方法で解決しました。
0868nobodyさん03/04/27 21:46ID:???
>>863,866
無知をさらけ出さないほうがいいよ(w

>>858,859,864,867
解決したようなので簡単に。

実はこれはASPとは関係ない話。
>>858のfunctionはクライアントで動かすのでscriptタグで囲んでJavaScriptで
記述。input type=submitで使うならonsubmitじゃなくてonclick。

<script>
function btn(x) { INPUT.xxx.value = (x==1)?"aaa":"bbb";}
</script>
<form name='INPUT' action='xxxx.asp' method='POST'>
<input type='submit' value='A' onclick="btn(1)">
<input type='submit' value='B' onclick="btn(2)">
<input type='hidden' name='xxx' value="">
</form>

こんな感じのページをResponse.Writeすれ。
<% %>内のASPはVBScriptで書けばよろし。
086986303/04/27 22:14ID:PmI58M9z
>>868
>JavaScriptを一切使わずにVBScriptで記述するにはどうしたらいいでしょうか。
>>858のこれに解答出したつもりだけど?
0870通りすがり03/04/27 22:32ID:???
どうでも良いけど、>858-869
VBScript→サーバサイドスクリプト
JavaScript→クライアントサイドスクリプト
って前提条件なのか?上記では何の衒いも無く通っているようだけど…。
087186303/04/27 22:41ID:Jmik3Gc/
>>870
漏れは>>858の質問内容からそう解釈した。
0872中棒03/04/27 23:07ID:yaJHLwHO
ASPで素敵な開発環境ってなに?
0873 03/04/27 23:13ID:???
>>863-871
そうか、みんな Value で分岐させるんだね。
漏れはいつも Name で分岐させてたよ。

<input type="submit" name="aaa" value="ボタン1">
<input type="submit" name="bbb" value="ボタン2">

-----------

If Request.Form("aaa") <> "" Then
 'A用の処理
ElseIf Request.Form("bbb") <> "" Then
 'B用の処理
End If
0874nobodyさん03/04/28 01:36ID:???
>>873
別にNameでもいいんだけど、StrictなHTMLだったら使えないからねぇ。

そこまで拘らなくても、平気なんだったら、
nameでも、idでも、valueでも好きにすればよろし。
087586803/04/28 11:58ID:???
>>869
はぁ? JavaScriptかVBScriptかは本質ではないはずだが。
>>868のscriptタグ内をVBScriptで書いたって出来ますがなにか?

>>870
クライアントサイドをJavaScriptにするのはIE以外でも動くようにするため。
ネスケやらモジラやらオペラやらってVBScriptじゃ動かないよね?
087687303/04/29 01:33ID:???
>>874
ゴメン、どこらへんが Strict な HTML に引っ掛かるの?
submit の input が2つあるとか?
0877nobodyさん03/04/29 10:00ID:???
なんか話がかみ合ってないな。

JavaScriptではできるけど、わざわざ「VBScriptで」って言ってるし、
>>866を見る限りサーバサイドの話をしてるんだろ。
だったら>>863でいいんじゃないの?

仮にクライアントサイドの処理で良いとしても
>>868>>864と同じ。それはできるって言ってる。
つまり、>>868

レ ス を 良 く 読 め

ということで。
087887703/04/29 10:03ID:???
うわ、名前見ながら書いてたら間違えた。

JavaScriptではできるけど、わざわざ「VBScriptで」って言ってるし、
>>858を見る限りサーバサイドの話をしてるんだろ。
だったら>>866でいいんじゃないの?

で。
087986803/04/29 16:53ID:???
>>878

>>858のJavaScriptだけで記述したい = サーバーサイドと決め付けるのも
どうかと思うが、そうだとしても本質は
>Aを押したときとBを押したときでは
>hiddenで隠してあるxxxの値が変わり送信されるようにしたいです。
にあるわけだから、それをサーバーサイドだけで処理をしようとしている
のは間違いだと誘導するのが親切だと思うのだが。

まぁこれ以上続けても平行線だし当の本人は満足したようなのでこの辺で。
088086803/04/29 17:00ID:???
>>877
失礼。もうひとつ追加。

> >>868>>864と同じ。それはできるって言ってる。

>>864のVBScriptでのsubmitの仕方を聞かれて、
無理というのもどうかと思うが?

自分は>>868でこれについてVBScriptで書くよりJavaScriptで書くほうが
いいよといったまでなのだがね。

以上。
0881nobodyさん03/05/01 08:12ID:???
>>879

>それをサーバーサイドだけで処理をしようとしているのは間違いだと
サーバサイドで処理したいって言う要望なんだろ?

なぜ無視するか…。
まぁ、パフォーマンスの話云々になると、同意ですが。
0882nobodyさん03/05/01 13:59ID:???
>>881
>>879
「VBScript = サーバーサイドと決め付けたとしても」
サーバーサイドだけで処理をしようとしているのは間違い
といってまよね? 無視してるのは881なようにも読めますた。失礼。
(ただしJavaScriptだけで記述したいはVBScriptの間違いだと脳内変換しますた。)

あまりよく追ってないので大きなことは言えないんですけど
ことの発端は直にサーバーサイドで処理したいとはいってないんですよね?

VBScriptでかくをサーバーサイドと解釈したか、クライアントはJavaScriptで
書いたほうがいいと解釈したかの違いなんじゃなかろうか。

サーバーサイドで実装することは881が言うとおり無理だし、
クライアントはJavaScriptで書いたほうがいいのは879の言うとおりでしょう。

ところでパフォーマンスの話なんてありましたっけ?
パフォーマンスならJavaScriptってこと?クライアントサイドってこと??

とりあえず自分はvalueを変えてsubmitする方法が勉強になりますた、ってことで。
0883nobodyさん03/05/02 00:52ID:cniwhNfi
ASPすきなのに、、、
ここの住人に失望
0884あぼーんNGNG
あぼーん
0885nobodyさん03/05/02 01:50ID:???
>>882
> あまりよく追ってないので大きなことは言えないんですけど



         し  っ  か  り  レ  ス  よ  め
0886nobodyさん03/05/02 04:00ID:???
>>883
なんか粘着GW厨がまざってるね
GW終わるまで我慢するかね
0887nobodyさん03/05/02 15:28ID:IdnUoSos
ASPファイルの先頭に<%@codepage=932%>を記入して、
ACCESSのmdbファイルから読み出したデータの文字化けは出なくなりましたが、
フォーム上で入力したものをCDOでメール送信すると、日本語がすべて???????に
なってしまいます。


    Set objMail = Server.CreateObject("CDONTS.NewMail")
objMail.From = mfrom
objMail.To = mto
objMail.Subject = msub
objMail.Body = mbody
objMail.Send
Set objMail = Nothing

Set objMail = Server.CreateObject("CDONTS.NewMail") の直前に
Session.CodePage=1252 をいれて、
Set objMail = Nothingの後ろに
Session.CodePage=932をいれても変わりません。

入れる場所が違っているのでしょうか?

0888ASP初心者03/05/02 16:12ID:7tr3NRMY
858のASP初心者です。
私が振った質問がこんな論争に及ぶとは思ってませんでした(汗

VBScriptにサーバーサイドで処理するものとクライアントサイドで処理するものが
あるのはわかっています。
そして私の打ち方が間違っていたのもわかっています。

まず本質というか、やりたいこととして
@同一フォーム内において、Aを押した場合とBを押した場合ではPOSTしたときにxxxの値が変わるようにしたい。
A以前JavaScriptを使ってこの機能を作ったことがあった。で、今回はどうしてもVBScriptを使ってやりたい。
BVBScriptはまだ覚えはじめで、今いち使い方がわかっていないが、できればサーバーサイドで処理したい。

別に無理なら無理で構いません。ただBについては、
サーバーサイドだけで処理する方法があれば是非教えて頂きたかったんですが、
そんなものはないだとか、無理だとかいうなら、クライアントサイドで記述する方法を教えて頂きたかったんです。
まぁJavaScriptでsubmitするときに値を変えて送信するような関数を作ったことがあったので、
できたらVBScriptで書ければなぁと思っていました。

というのが質問者の真意です。
ご迷惑おかけしました。
0889nobodyさん03/05/02 19:16ID:???


-------------- 延期 --------------


089086803/05/02 19:26ID:???
>>888
クライアントサイドをどうしてもVBScriptで書きたいというなら
<script language='vbscript'>
function btn(x)
if x=1 then
INPUT.xxx.value = "aaa"
elseif x=2 then
INPUT.xxx.value = "bbb"
end if
end function
</script>
でしょう。
しかしIE以外では動かなくなると思いますのであまりお勧めしません
ということです。

サーバーサイドでクライアントの動作を決めることはできませんので
もう一人の方がおっしゃるようにサーバーサイドでやるのは無理です。
0891nobodyさん03/05/02 19:47ID:???
>>888
だから JavaScript/VBScript はサーバサイド、クライアントサイドどちらでも使えること分かってる?
(クライアントVBScriptは IE のみ)
0892nobodyさん03/05/06 12:56ID:G+e5LW+x
なぁ、USERS GROUPのメーリングリストの
自治野郎どもがうざくてきもいんですよ。

なにかあるとすぐに
「投稿する場所が違う」だのなんだのって
おまえ何様ってかんじ。

そりゃあ、
ほんまに全然関係ない話題だったらわかるけど
そうでもないんだからぐだぐだぬかすなよ
ってかんじ
0893あぼーんNGNG
あぼーん
0894nobodyさん03/05/07 01:11ID:???
ASP-MLの流行

・「クライアントサイドはDHTML-MLへ」
・「全文引用はやめて」
・「せめて名乗りましょうよ」
・「スレッド切らないで」
0895nobodyさん03/05/07 09:49ID:???
>>892
そういうお前がsubmitを制御したいとか聞きそうだよな。
0896 03/05/11 02:41ID:6jQrCVbs
RecordsetオブジェクトのbookmarkがDBによって使えたり使えなかったりしますが
その判断はどうやったらできるんでしょうか
あとAbsoluteプロパティとかも同様な現象が起こりますよね
0897あぼーんNGNG
あぼーん
0898あぼーんNGNG
あぼーん
0899nobodyさん03/05/11 16:43ID:???
ASPが扱える無料サーバーBrinksterに詳しい方お教えください。
accessのテーブルに追加変更をするASPアプリ(vbscript)をBRINKSTER
に置いたのですが下記のエラーが出てしまいます。
Microsoft VBScript runtime error '800a01a8' 
Object required: 'ObjConn'

DBName="Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & _
Server.Mappath("/ユーザーID/db/member.mdb")
Set ObjConn = Server.CreateObject("ADODB.Connection")
ObjConn.open DBName←この部分でエラーが発生 

ローカルでは問題なく動きました。
何か解決策はありますでしょうか
0900あぼーんNGNG
あぼーん
0901nobodyさん03/05/11 23:12ID:???
>899
そのエラーって、そのサーバにADO関係のDLLの登録がされていないって事なんじゃないの?
0902nobodyさん03/05/12 00:44ID:???
>>901
ありがとうございます。
なるほど、ASPが使えるレンタルサーバーは使うのが初めてなので
登録の仕方が分からないのです。
お分かりになるようでしたらよろしければお教えください。
0903あぼーんNGNG
あぼーん
0904あぼーんNGNG
あぼーん
0905nobodyさん03/05/12 17:05ID:7umu/CHJ
質問させて下さい。
ASPとAccessを使って仲間内の掲示板を作っています。
タグ括弧(<←とか>←これの事です)を使うとエラーを出すので、<を全角に変換してAccessに登録するやり方で回避しました。
ですがこのやり方だと、
2ちゃん等で使われているようなAAが使えないので、
なんとか全角にしないで登録するやり方を知りたいのです。

どなたかご教授ください。
0906あぼーんNGNG
あぼーん
0907nobodyさん03/05/12 17:19ID:???
&lt; と &gt;
0908nobodyさん03/05/12 19:35ID:???
Response.Write(Server.HTMLEncode("<>"))
0909nobodyさん03/05/12 22:11ID:???
>902
レジストリが壊れてるぞゴルァ。と英語でメール流す。
091090503/05/13 10:39ID:KgP7PZFq
>907さん、908さん
有難うございます。
Server.HTMLEncode使ってみました。
お蔭様で<>には対応できるようになったのですが、SQLを発行するときに、
変数Naiyouの中に”(ダブルコーテーション)、’(シングルコーテーション)、,(カンマ)、
.(ドット)等を登録しようとすると、そこで文字列の終わりと判断しているらしく、エラーになってしまいます。
回避策はありますか?
今の仕様はこんな感じです。

var Naiyou = new String(Request.Form("Naiyou"));
Naiyou = Server.HTMLEncode(Naiyou);
SQL文でDBに登録

あ、今思ったけど、Server.HTMLEncodeの後に正規表現で「"」を「\"」とかに変換すればいいんですかね?
試してきます。


091190503/05/13 13:13ID:KgP7PZFq
上の書き込みですが、
var Naiyou = new String(Request.Form("Naiyou"));
Naiyou = Server.HTMLEncode(Naiyou);

var doble = /"/g; //ダブコ
Naiyou = Naiyou.replace(doble, """);
var single = /'/g; //シンコ
Naiyou = Naiyou.replace(single, "?");

SQL文でDBに登録

ってやったら解決しました
自己レスでスマソ
0912nobodyさん03/05/14 02:34ID:???
>>911
HTMLEncdeしてからDBに入れるんじゃなくて
取り出す時にHTMLEncodeしたほうが良いよ
レス数が900を超えています。1000を超えると表示できなくなるよ。