06/01/21 13:32:23 GsEUkG9T
ASPにてシステム日付の3日前の日付を取得したいのですが、
下記のようにすると変数varAに 38735 という数字が入ってきます。
システム日付の1日後のvarBには 2006/01/22 と入るのですが、
x日前の日付の取得はどうすればよろしいのでしょうか?
varA =DateDiff("d", 3, date)
varB =DateAdd("d", 1, date)
332:nobodyさん
06/01/21 14:49:32
>>331
varB =DateAdd("d", -3, date
333:nobodyさん
06/01/21 18:49:21 AIj0kho+
326に便乗質問
俺はweb.configに置いてるけどweb.configはサーバーだけで動くとか何とか
呼んだ気がするから安心してたけどひょっとして安心ではない?
334:638
06/01/21 19:00:34 GsEUkG9T
>>332
なるほど、DateAddを使うですね。
ありがとうございました。
335:nobodyさん
06/01/22 01:05:17
>>333
ここはASP.NETスレじゃないよ><
336:nobodyさん
06/01/27 14:12:25
ASP → ASP.NET より
ASP → PHPのほうが、乗換えとして、自分の好みに合っている気ガス
337:nobodyさん
06/01/27 21:52:21
そんなあなたにpythonですよ
338:nobodyさん
06/01/29 22:28:57
ASPにはhtmlエスケープの関数ってありますか?
昔どこかのサイトで見かけた気がするのですが
失念してしまいました…。
339:nobodyさん
06/01/29 23:25:38
>>338
JScriptならできる
340:nobodyさん
06/01/30 00:12:50
>>339
レスありがとうございます。
VBscriptで書いてしまったので、
replaceでしこしこやってみますorz
341:nobodyさん
06/01/30 03:19:35
>>338-340
Server.HTMLEncode() のことじゃないの?
そうならVBScriptでも使えるけど。
342:nobodyさん
06/02/01 18:59:54 Im+A4ONK
かなり行き詰ってて助けてください。
Framework2.0(C#)ベースで作ったDLLをASPで動かしたいのですが、
XPのiis上ではうまく動くのに2003Serverのiisではクリエイトで失敗します。
Set hoge = Server.CreateObject("hoge.hoge")←ここで失敗
両環境下でRegAsmで登録しFrameworkのバージョンも同一です。
なぜ動かないか分からないのですが、
どなたかご教授お願いします。
343:nobodyさん
06/02/01 21:22:49
>>342 エラー メッセージ プリーズ
344:342
06/02/01 21:45:57
>>343
Server オブジェクト エラー 'ASP 0177 : 80070002'
Server.CreateObject に失敗しました
です。
権限とかの問題でしょうか?
345:nobodyさん
06/02/01 22:08:21
>>342 %SystemRoot%は、両方のOSで同じ名前?
346:342
06/02/01 22:18:40
>>345
2003サーバの%SystemRoot%が標準で:/windows/system32なら同じにしてます。
347:345
06/02/01 22:21:21
>>342 違ってたらゴメンネ。海外のサイトで同じような質問していて
I suspect this is because the DLL is not in a particular location that the CLR is looking
when you create the object. Try copying the DLL to C:\Winnt\System32 or C:\Windows\System32
depending upon whether you have Windows 2000 or Windows XP Professional / 2003 Server.
って答えてたから。
348:342
06/02/01 22:33:26
>>347
確認しましたらC:\windows\system32にDLLをおいてTLBを作成しているので
ほかに原因があると思います。
もしかしてRegasmで登録しているのが原因でしょうか?
349:342
06/02/02 02:42:30 bVYIWBsA
どうしても解決しないので一旦age
350:nobodyさん
06/02/03 02:47:28
ASPでIPアドレスの比較(?)をしたいと考えています。
IPマスクで192.168.1.0/24のような形式のもの(20項目程度)と$ipを比較して含まれていれば真を返すにはどのようにすればいいのでしょうか?
鯖はWinXP ProのIIS(.net Framework無し)、開発環境はVS.net 2005 ExpressEditionです。
351:nobodyさん
06/02/03 20:14:27
>>350
正規表現?
352:バッカーです ◆KeuXjwWDdE
06/02/03 20:44:49
範囲の問題じゃないの?
353:nobodyさん
06/02/04 01:23:48
まんま24ビットの整数にしてAnd取る……って話ぢゃないのか。
354:nobodyさん
06/02/04 08:16:33
.NETは知らんがVBSじゃオーバーフローしたような記憶が
>24ビットの整数にしてAnd取る
355:nobodyさん
06/02/04 10:46:54
>>350
IPが連続してるなら正規表現、
バラバラであれば配列にして比較するか、DBを使ってるならSQLだな。
356:nobodyさん
06/02/04 16:29:50
VBSでもちゃんとCLngすれば24bitも大丈夫だよ
357:350
06/02/06 02:39:19
レスありがとうございます。
$ipになってましたがipのミスですorz
検査してくれるような便利な関数があれば良いなぁと考えてたのですが無いのですか・・・。
やはり/で2つに分けて地道にホゲホゲさせないと駄目なのでしょうか?
358:nobodyさん
06/02/06 10:00:27 kQjET4Ig
文字列から検索対象文字がいくつあるかカウントする関数はありますでしょうか?
strTest という変数からchar(10)の改行文字のカウントをしたいのですが。
359:nobodyさん
06/02/06 21:24:02
俺なら地道にFunctionステートメントで、InStr()関数と
For~Next文でループさせて数えるけどね
360:nobodyさん
06/02/06 22:22:25
>>350
ipaddrとipnetの間で比較する流れを完全に想像だけで書いてみるw
function conv(ip)
Dim ipary
ipary = split(ip,".")
conv = clng(ipary(0)*256^3) + clng(ipary(1)*256^2) + clng(ipary(2)*256) + clng(ipary(3))
end function
function bitmask(masklng)
Dim mask
mask = clng(0)
for i = 31 to 31-masklng
mask = mask + clng(2^i)
next
bitmask = clng(mask)
end function
function check(ipaddr,ipnet)
ary = split(ipnet,"/")
netaddr = conv(ary(0))
mask = bitmask(ary(1))
if (clng(netaddr) = clng(conv(ipaddr)) and clng(mask)) then
check = true
else
check = false
end if
end function
clngの挟み方は適当。多分使いすぎ。
bitmask辺りは99%の確率でバグってる悪寒w
361:360
06/02/06 22:24:50
ミスった!
bitmaskのforはstep -1 でw
362:nobodyさん
06/02/07 09:32:11 o795fuVl
レコードセットで、[列名]hoge1,hoge2,hoge3,hoge4.....hogeXXの項目のデータを取ってきて、
このデータを変数に格納したいのですが、
今のところ、
hoge1 = objRS("hoge1")
hoge2 = objRS("hoge2")
hoge3 = objRS("hoge3")
と言ったかなり格好悪いやり方をしています。
これを、スマートにするにはどうしたらいいのでしょうか。
ちなみに
1回目のレコードセットはhoge1~hoge20
2個目のレコードセットはhoge1~hoge25
と言ったように、
項目数も変わってくるんです。
363:nobodyさん
06/02/07 20:18:23
>>362
GetRows
364:nobodyさん
06/02/07 20:41:38
ファイルアップで質問です。
レンタルサーバでファイルアップフォームを
作成しているのですが、BASP21が使えません。
(インストールに管理者権限が必要?)
VBScriptのデフォルトではファイルアップは
できないのでしょうか?
もし、他のモジュールを使えば可能なのであれば、
ファイルをコピーするだけで動くようなものを
教えていただけると助かります。
よろしくおねがいします。
365:nobodyさん
06/02/07 21:19:33
>>364
ADO.Streamを駆使すれば可能。
来週まで待てば俺作のをupってもいいが…
URLリンク(blog.so-net.ne.jp)
こんなのがあったので参考になるんちゃうか。
366:nobodyさん
06/02/08 00:09:09
>>364
↓には、昔お世話になったことあるよ。
URLリンク(web.archive.org)
367:364
06/02/08 16:53:03
>>365,366
親切に回答いただきありがとうございます!
>>366 さんのサンプルを作ったところ、
うまくアップロードできたようです。
ただ、これを使うと通常の値
<input type="text"> などはどうやってとるのかが
知識不足のため、ソースを見てもわかりませんでした…
Upload("textbox") とかでもダメっぽいですね。。
368:nobodyさん
06/02/08 20:31:59
>>367
multipart/form-dataでUPしてBinaryReadで受け取ると
バイト単位の処理になるから、テキストフォームとかと同時にやるとなると面倒くさそうだね。
駄目文字の処理とかも必要になるし。
369:nobodyさん
06/02/09 02:36:56 v3Lm1+ha
Basp21のSendMailメソッドで質問があります。
上記メソッドを使用してメールを送信すると、
指定したアドレスに2重送信されてしまい困っています。
メールを送信する直前にDBへ履歴を登録しているので、
前回送信時刻と現在(今回送信)時刻の差(datediff)が60秒以内であれば、
メールを送信しないような処理をしているのですが無駄に終わっています…。
何かいい回避策があるようでしたら教えてください。
370:364=367
06/02/09 13:24:29
>>368
やはり受け取ったバイナリを手動でとらないとダメなんですね…ありがとうございます。
ファイルアップとテキストフォームの組み合わせは引き続き調べてみます。
371:バッカーです ◆KeuXjwWDdE
06/02/09 18:39:04
>>369
アルゴリズムに問題があるのではないかと
372:nobodyさん
06/02/09 21:01:53
VBScriptで17桁の整数を扱う方法ってある?
通貨型じゃ15桁+小数部4桁だよね?
373:nobodyさん
06/02/09 22:59:46
京の位に達するのか。
ASPでどんな計算をしようとしているんだw
文字列でいいんじゃねーのけ?
374:nobodyさん
06/02/10 00:55:41
>>369
その手の質問はBASPの掲示板でしたほうがいいと思うよ
375:nobodyさん
06/02/10 01:31:16 gbK8yDLA
Ajaxっぽい非同期通信を組み込んでいて詰まってしまいました。
クライアント側
httpObj.open("GET","gettext.asp?sendData="+Data,true);
httpObj.send(null); //これで送って
サーバー側
getData = Request.QueryString("sendData") 'これで受け取る○
これはうまくいったのですが、送るデータ量が大きくなるとオーバーフローエラー
がでてしまいました。そこでPOSTで送ることにしました。
ところが受け取りがまったく反応してくれません。
クライアント側
httpObj.open("POST","gettext.asp",true);
httpObj.send("sendData="+Data); //これで送って
サーバー側
getData = Request.Form("sendData") 'これで受け取る×
getData = Request.QueryString("sendData") 'これで受け取る×
解決策がありましたらよろしくお願いいたします。
376:nobodyさん
06/02/10 06:35:31
>>336
URLリンク(asp2php.naken.cc)
ダウンロードしたら解凍してできたexeファイルの上に、
**.aspのソースをドラッグドロップするだけですよ
377:nobodyさん
06/02/10 19:40:27
>>375
send前に
httpObj.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
をつけるのをマジおすすめ
378:sage
06/02/10 23:36:15 gbK8yDLA
>>377
無事動きました!ありがとうございます!
379:nobodyさん
06/02/11 03:19:38
win2003鯖(web Edition)+IIS6.0+VBscript+BASP21でメール送信をしようとしています。
PHPのmail()関数を使ってメールの送信ができたのでSMTPには問題なさそうです。
ところがVBscriptからだとSMTPで認証を要求されます。
この場合、実行ユーザが違うから権限が違うのかな、と思ったのですが、
Win鯖にうとくどのサービスがどのユーザで実行するか調べたいのですが、
どこで見れるのか教えていただけますでしょうか
また、ググってみたところ、2003web Editionにはユーザ管理機能はない、
URLリンク(www.fmmc.or.jp)~fm/nwts/w2003s/ch1/1_1_3.html
なんて書いてあるんですがまじですか?
380:nobodyさん
06/02/11 07:14:57
>>379
なんだか全然スレ違いくさいが。
>win2003鯖(web Edition)+IIS6.0+VBscript+BASP21でメール送信をしようとしています。
2003ServerにSMTPが動いていて、同じサーバ上からそれを使って送信、
ということでOK?
>VBscriptからだとSMTPで認証を要求されます。
どんな認証が要求される?
ダイアログなどを詳しく。
>この場合、実行ユーザが違うから権限が違うのかな、と思ったのですが、
>Win鯖にうとくどのサービスがどのユーザで実行するか調べたいのですが、
SMTPサービスの実行権限を調べたいなら
コントロールパネル→管理ツール→サービス
>2003web Editionにはユーザ管理機能はない
ActiveDirectoryが無いというだけで、サーバ内でのユーザ管理はもちろんある
381:nobodyさん
06/02/11 15:21:43
>>380
全然見当違いなところのエラーでした。
BASP21でメールサーバをIPで指定していたんですが、
ループバック(127.0.0.1)で指定したら(゚д゚)ウマーでした
おそらくSMTPのリレー関係の設定の問題でした。
ごめんなさい
382:nobodyさん
06/02/15 14:02:53
FileSystemObjectで、仮想ディレクトリ内にファイルをコピーしたり削除する場合、
そのフォルダに対して、
「インターネットゲストアカウント PC名\IUSR_PC名」のユーザーアカウントに、
フルアクセスの権限を与えています。
セキュリティーの観点から、こういうのは危ないんでしょうか?
383:nobodyさん
06/02/15 21:10:42 lSEl6laF
.
.
Dim GetDate
for i=startYear to lastYear
GetDate = obj.xxxx
i = i + 1
next
.
.
このような形で年度別にGetDateに配列でデータを格納しています。
この年度別に作られる配列を一つの配列変数に代入したいのですが、
どうすればよろしいでしょうか?
384:nobodyさん
06/02/15 22:15:43
>>382
フルアクセスは実行権限含むからまずい
読み取り+書き込み、がいいかと。
>>383
>>GetDate = obj.xxxx
にループ変数iが絡んでいないのだが?
あと
>>年度別に作られる配列を一つの配列変数に代入したい
言わんとしてる事はなんとなくは分かるが
やりたいことをもう少し具体的かつ厳密に。
385:nobodyさん
06/02/16 01:51:09 joFVC4f3
ASPをApacheで動かしたい。
何かよい手はないかな?
386:nobodyさん
06/02/16 07:33:17
>>385
Apache:ASP
387:nobodyさん
06/02/17 16:12:51
画像アップロード板みたいなのを作ってるんですが、
データベース部分に、画像のアドレスや、その他情報を書き込み、
画像はBASP21を使いFTPでアップロードしようとしています。
普通なら、トランザクションを開始して、レコードを書き込んで、
ファイルもアップロードしてからコミットという考えだと思うんですが、
webのシステムの場合、ファイルのアップロードのような時間のかかる処理を、
トランザクション内に入れないほうが良いのでしょうか?
webの開発は始めてなので「どうなんだろう??」と悩んでしまい、、、
388:nobodyさん
06/02/17 16:21:15
>>387
アップロードされるファイルサイズによるが、
普通はアップロードが完了してからDBに書き込むと思うぞ。
あと、BASP21はFTPじゃなくてHTTPのアップロードだと思う。
389:nobodyさん
06/02/17 17:08:21
>>388
ファイルの名前をDBのIDと関連付けて登録したかったので、
DB→ファイルのアップロードと考えてました。
アップロード→DBとするなら、
もう1個別に採番用テーブルを作ってそれをファイル名とIDにする感じですかね?
390:nobodyさん
06/02/17 17:57:05
>>389
> ファイルの名前をDBのIDと関連付けて登録したかった
それなら
UP用TEMPフォルダへアップロード
↓
ファイルチェック
↓
DBへ登録&ID取得
↓
正式なフォルダに移動&リネーム
が一番かな。
何にせよ、ファイルアップロードはクライアント側でアップロードをミスることが多いし、
ファイルのチェックとかもしなきゃいけないでしょ?
391:nobodyさん
06/02/18 15:30:31
>>390
それだと最後の移動&リネームが失敗した時、
再度DBのデータを削除なり更新しに行くハメにならん?
392:nobodyさん
06/02/18 16:16:18
>>391
一連の流れにDBのトランザクション使えばよくね?
393:nobodyさん
06/02/18 16:31:42
>>392
>>387のいうファイルのアップロードの大きさが分からないが、
何百メガとかだと、DBのトランザクション使うのはマズいんでないかい?
少なくともロックは排他で、何回もリトライしてください~の仕様にするしかないか。
394:nobodyさん
06/02/18 20:37:36
IDはIDENTITYで取ればいいんだよ
データ空で一行INSERTした後その新キーを取得してcommit、
その後そのキーで行ロックしてファイルデータをupdateしてcommitしてやればいい。
ファイルデータupdate時に完了フラグも更新すれば
途中で失敗したものとも区別がつく。
つーか既にASPの話題じゃねえな
395:nobodyさん
06/02/18 20:39:32
UP用TEMPフォルダへアップロード
↓
ファイルチェック
↓
DBトランザクション開始
↓
DBへ登録&ID取得
↓
正式なフォルダに移動&リネーム
↓
DBトランザクション終了(commit/rollback)
がいいかもな
396:nobodyさん
06/02/25 00:08:08 5p0RQZcL
dimで宣言した二次元配列をOnClickでコールしたJavaScript関数内で使用する方法を教えてください。
397:nobodyさん
06/02/25 06:20:25
>>396
JavaScriptのコードに展開すればいいじゃん
398:nobodyさん
06/02/25 10:43:55
>>396
a(m,n) → b[m][n]
<script>
<%
Response.Write("var b=new Array("&(UBound(a,1)+1)&");")
For i=LBound(a,1) to UBound(a,1)
Response.Write("b["&i&"]=new Array("&UBound(a,2)+1&");")
For j=LBound(a,2) to UBound(a,2)
Response.Write("b["&i&"]["&j&"]="&a(i,j)&";")
Next
Next
%>
</script>
399:396
06/03/01 05:59:02 /i7BGAMo
>>398
JavaScript関数内でa(m,n)が使用できないのですが...
400:nobodyさん
06/03/01 11:35:16 e/ZVjBAD
getFolderメソッドであるフォルダのファイル名を全部取得します。
ファイル名には規則性があり、数値で1から連番です。
For Each objwk in objFOL.Files
'ファイル名を配列に入れる
ReDim Preserve arrAllFileName(i)
arrAllFileName(i) = ( objWK.Name )
i = i + 1
Next
として取得していますが、
1 2 3 6 7 22 27 と取得できるはずなのに、
配列の要素は
1 2 22 27 3 6 7 となり、
BASP21のSortメソッドを使ってものの順番は変わりません。
ファイル作成時間によってソートされているのではないかと
試してみましたが違うようです。
大変恐縮ですが、ソートする方法をご教授いただけませんでしょうか。
何卒よろしくお願いいたします。」
401:400
06/03/01 11:46:02 e/ZVjBAD
追記;要素を入れるときに要素にCIntしても結果は変わりませんでした。
402:400
06/03/01 12:20:50 e/ZVjBAD
すいません。自己解決しました。
数値型がだめなら、文字型だろ! と決まった桁数に0を補完するようにしました。
例) 1 → 0001 11 →0011
403:nobodyさん
06/03/01 18:51:48
もともと
>>1 2 3 6 7 22 27 と取得できるはずなのに、
ここだよね
XP以降のExplorerならば確かに初期状態だとそうなるけど
ファイル名って文字列だからね。
ソートすると
>>1 2 22 27 3 6 7 となり、
で正しいわけだよ
404:nobodyさん
06/03/02 22:33:46
>>399
サーバーサイドのa(m,n)の値ををクライアントサイドのjavascriptのb[m][n]に引き渡してる
405:nobodyさん
06/03/03 13:53:37
一応過去ログも見てみたのですが、見当たらなかったので質問させてください。
ASP(VBScript)@IIS5.1、OSは2000ServerとXPです。
単純にデーターベース(ADO OBDC)からデータを読み出してResponse.Writeで表示させているだけなのですが
メモ型のフィールドに入力した値がうまく表示できないのです。
入力されているデータ(mdb)を直接Acessで編集してフィールドの方をテキスト型に変更するとうまく表示されます
ASPの方でdbから読み出した値がNULLか空かそれ以外かを先に判定させて、
"それ以外"の場合のみ
Response.Write [dbの値] & "<br>"
と書き出すようにしているのですが。いざ実行すると
<br>
としか出力されない状況です。
通常なら表示されて当たり前じゃないかと思うのですが、どこかIIS等の設定がおかしくなっているのでしょうか?
406:nobodyさん
06/03/03 23:00:10
>>405
NULLだったらどう動くようにしてるの?
407:nobodyさん
06/03/04 00:17:11
>>405
つ【vbCrLf】
408:405
06/03/06 10:13:00
>>406
if文で分岐させているのですが、NULL値の場合は
Response.Write "NULL値です"
と表示するようにしています。
>>405
<br>の代わりにvbCrLfを使えばいいということですか?
お二方レスしていただいたのですが、実はついさっき自己解決してしまいました。
dbの値を直接If文の判定式に書いたり、Response.Writeで直接使用していたのが問題のようでした。
一度他の適当な変数を作成してそれに代入してから使用すると、正常に判定と出力をすることができました。
お騒がせしてすみません^^;
409:nobodyさん
06/03/06 23:03:11
まさかとは思うが
If なんとかかんとか = Null Then
とかやってないよな。
410:405
06/03/22 17:47:30
>>409
亀レスだけど
If IsNull(変数) Then または If Not IsNull(変数) Then
ってやってた
411:nobodyさん
06/03/26 07:43:17 /latXqRh
質問です。
メールフォームの送信を.aspでやるときに、送信者側のファイル添付は可能でしょうか?
mailer.addattachmentメソッドがあるようなんですが、そのまま使ってもファイルは添付されずに、送信者のローカルPCのファイルへのパスが送られてくるだけなんですけど。
これってもしかして、一旦uploadscript.aspなんかでサーバーへアップロード保存して、サーバー側に保存されたファイルを添付させるという、2段階手続きじゃないとムリなんですか?
その場合、送信するメールフォームと対になるサーバー側の画像ファイルとの関連づけはどのようにするのか悩んでるんですが、何かアドバイス有りましたらよろしくお願いします。
412:nobodyさん
06/03/26 12:38:36
>>411
mailer.addattachment ってなんてあったっけ?
413:nobodyさん
06/03/26 15:08:37
ServerObjects社製のコンポーネントみたいね
URLリンク(www.serverobjects.com)
このあたりのExampleとか見るとサーバー側にあるファイルを添付するメソッドじゃないかと思う
URLリンク(www.bizclasshosting.com)
BASP21あれば要らないよーな
414:nobodyさん
06/03/26 17:42:32 /latXqRh
>>413
おっしゃるとおり、サーバー側にあるファイルを添付するメソッドなので、サーバーに添付されるファイルをアップロードした後、添付送信という手続きをふまなければならないみたいです。
ただ、一つのメール送信フォームに、この手続きをどうやって組み込むのか四苦八苦してます。
具体的には、ファイルのアップロードは、
BFORM METHOD="POST" ENCTYPE="multipart/form-data" ACTION="uploadscript.asp">
で、処理側の.aspコマンドファイルはSet Uploadというメソッドでサーバー上の任意のフォルダへアップロード、
そして、メールフォームの送信は、
<form action="aspmailform.asp" method="post">
で、処理側.aspには、
Set Mailer = Server.CreateObject("SMTPsvg.Mailer")
というコマンドでメール送信という状態なのですが、これらを一つの送信ボタンで出来ないものか悩んでいます。
上記の、aspmailform.aspとuploadscript.aspを一つにして併記してみても機能しないようです(多分、やり方が悪いのかも?)
さらに、addattachmentメソッドはサーバー側のフルパスで指定しなければならないので、送信者のローカルPCのファイルパスを拾って関連づけるのも不可能なような気がするのですが。
というかんじで、困っています。
ASP21というのは、どのような環境で動作可能なのかもう一つ理解していないんですが。
SendMailではなく、ASPMailしかインストールされていないサーバー環境でも動作可能なのでしょうか?
もし可能であれば使ってみようと思います。
415:nobodyさん
06/03/26 17:45:46 /latXqRh
上記訂正、
BFORM METHOD="POST" ENCTYPE="multipart/form-data" ACTION="uploadscript.asp">
↓
<FORM METHOD="POST" ENCTYPE="multipart/form-data" ACTION="uploadscript.asp">
です、すみません。
416:nobodyさん
06/03/26 21:54:41
SMTPsvg.Mailerは使ったことないからわからないけどBASP21使うとこんなかんじ
チェックしてないんでバグあるかもしれんけど
------------送信側
<html><body>
<form action="fileuptomail.asp" enctype="multipart/form-data" method="post">
From: <input type="text" name="mailFrom"><br>
To: <input type="text" name="mailTo"><br>
Subject:<input type="text" name="mailSubj"><br>
Body: <textarea cols="40" rows="10" name="mailBody"></textarea><br>
File:<input type="file" name="file"><br>
<input type=SUBMIT name=UPLOAD>
</form></body></html>
------------受信側(fileuptomail.asp)
<%
Set bobj=Server.CreateObject("BASP21")
TEMP=Server.MapPath("/temp/")&"\tempfile.tmp"' 一時保存ファイル
SMTPname="*.*.*.*"' SMTPサーバーのIP
' FileSave
a=Request.TotalBytes
b=Request.BinaryRead(a)
f=bobj.FormFileName(b,"file")
fsize=bobj.FormFileSize(b,"file")
filename=Mid(f,InStrRev(f,"\")+1)
l=bobj.FormSaveAs(b,"file",TEMP)
msg = bobj.SendMail(SMTPname,bobj.Form(b,"mailTo"),bobj.Form(b,"mailFrom"),bobj.Form(b,"mailSubj"),bobj.Form(b,"mailBody"),TEMP&"|"&filename)
%>
417:nobodyさん
06/03/28 11:21:21
とりあえずaspのシステム作るなら、basp21は突っ込んどくオイラ。
なんだかんだで、永い間使ってて安心して使える。
418:nobodyさん
06/03/28 13:00:23
WinCEでの開発なんで自力でbasp21っぽいの作ってるオイラ
バグだらけで不安になりながら使ってる
419:nobodyさん
06/04/10 20:06:46 3UIEjnKE
下記ソースは5年ぐらい前に作ったんですが、またこれが必要になったので
バックアップから引っ張り出してIISに貼り付けましたが動きませんでした。
以前は動いたのに。
現在の動作は、VBS中にExlを書いてもスルーされて
次のプログラムに行ってしまいます。
どこを直せば動くようになるんでしょうか。
よろしくお願いします。
テスト環境はWinXPproです。
セキュリティパッチは全て当ててます。
動くようになれば2003鯖に実装予定です。
Sub Exl
Dim ExcelApp, ExlFile
Set ExcelApp = CreateObject("Excel.Application")
ExcelApp.visible = True
ExlFile="D:/asp/files/temp.xls"
ExcelApp.DisplayAlerts = False
ExcelApp.Workbooks.open(ExlFile)
ExcelApp.Sheets("page1").Select
ExcelApp.ActiveSheet.Range("A1").value="<%= Year(Now()) %>" & " 年 "
ExcelApp.ActiveSheet.PrintPreview
Excelapp.Quit
Set ExcelApp = Nothing
End Sub
420:nobodyさん
06/04/10 20:48:18
これ、ASPで動かすんなら全体が<% %>で囲まれるから
ExcelApp.ActiveSheet.Range("A1").value="<%= Year(Now()) %>" & " 年 "
はおかしいと思うんだが
421:70
06/04/10 21:57:23 w8+tUl+V
>>420
すみません、一部記述が抜けてました
subとend subだけが<% %>で囲ってこんな感じです。
<%
Sub Exl
%>
Dim ExcelApp, ExlFile
Set ExcelApp = CreateObject("Excel.Application")
ExcelApp.visible = True
ExlFile="D:/asp/files/temp.xls"
ExcelApp.DisplayAlerts = False
ExcelApp.Workbooks.open(ExlFile)
ExcelApp.Sheets("page1").Select
ExcelApp.ActiveSheet.Range("A1").value="<%= Year(Now()) %>" & " 年 "
ExcelApp.ActiveSheet.PrintPreview
Excelapp.Quit
Set ExcelApp = Nothing
<%
End Sub
%>
422:nobodyさん
06/04/10 22:24:01
>>421
IE上でExcelのCOMを動かそうとしてる??
423:421
06/04/10 22:28:02 3UIEjnKE
>>422
はい、そうです
この方法はよくないんでしょうか?
424:nobodyさん
06/04/10 22:37:16
>>423
今のIEじゃローカル上のファイルを操作するのは
セキュリティ的に無理だと思う
425:422
06/04/10 22:49:35 w8+tUl+V
>>424
では、サーバー側に一時的なファイルを作成してそれをクライアント側で
ダウンロードする仕組みにするには、どの様なコードを書けばよいでしょうか。
サンプルコードがあるサイトをご存知でしたら教えてください。
お願いします。
426:nobodyさん
06/04/10 23:13:55
自分のPCにExcel入ってないから試せないんだがこんな感じかなぁ
<%
Sub Exl
Dim ExcelApp, ExlFile, Filename, bobj ,b
Set ExcelApp = Server.CreateObject("Excel.Application")
ExcelApp.visible = True
ExlFile="D:/asp/files/temp.xls"
Filename="temp.xls"
ExcelApp.DisplayAlerts = False
ExcelApp.Workbooks.open(ExlFile)
ExcelApp.Sheets("page1").Select
ExcelApp.ActiveSheet.Range("A1").value= Year(Now()) & " 年 "
ExcelApp.ActiveSheet.PrintPreview
Excelapp.Quit
Set ExcelApp = Nothing
Response.ContentType = "application/octet-stream;name=" & Filename
Response.AddHeader "Content-Disposition","attachment;filename=" & Filename
Set bobj = Server.CreateObject("BASP21")
b = bobj.BinaryRead(ExlFile)
Set bobj = Nothing
Response.AddHeader "Content-Length", ubound(b) + 1
Response.BinaryWrite bydata
End Sub
%>
427:nobodyさん
06/04/10 23:15:06
あ、ごめん
× Response.BinaryWrite bydata
○ Response.BinaryWrite b
428:425
06/04/10 23:17:23 3UIEjnKE
>>426
ありがとうございます。
明日試してみます
429:nobodyさん
06/04/11 01:16:54
鯖側でExcelオートメーションは非推奨
URLリンク(support.microsoft.com)
やるならこっちかな
URLリンク(support.microsoft.com)
URLリンク(support.microsoft.com)
430:425
06/04/11 07:27:09 j7JR4Ohz
>>429
目的の動作が出来ました、ありがとうございました。
431:nobodyさん
06/04/14 21:34:06 D01n0ua1
XPproで動いてたASPを2003鯖に入れたらページが見つかりません
とかなって表示できません。
XPで動いてたんでスクリプトには問題ないと思うんですが
IISの問題でしょうか?
どこを直せばよいでしょうか?
432:nobodyさん
06/04/14 21:47:20 D01n0ua1
ためしに自分で作った仮想ディレクトリーにdefault.aspを
配置しましたが、Directory Listing Deniedとかなって表示できません。どうすればよいでようか?
助けてください。
433:nobodyさん
06/04/14 22:36:40
>>432
既定のドキュメント
434:432
06/04/14 22:58:23 D01n0ua1
WebサービスでASPを許可したらいけました」
435:nobodyさん
06/04/15 10:40:23 GTWKBHgT
Fname="D:/asp/DB.mdb"
DBF="Driver={Microsoft Access Driver (*.mdb)};User ID=;Password=12345; DBQ=" & Fname
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open DBF
上記コードでXPproのIISでは正常に動きますが、2003鯖ではこんなエラーになってしまいます。
Microsoft OLE DB Provider for ODBC Drivers エラー '80004005'
[Microsoft][ODBC Microsoft Access Driver]一般エラー レジストリ キー 'Temporary (volatile) Jet DSN for process 0x9ac Thread 0xad0 DBC 0x22a1f94 Jet' を開くことができません。
レジストリをいじらずに動くようにするにはどうすればよいでしょうか?
また、システムにODBCデータソースを追加する以外の方法で別のやり方あったら教えてください。
436:nobodyさん
06/04/15 11:05:26
>>435
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][ODBC Microsoft Access Driver]一般エラー レジストリ キー 'Temporary (volatile) Jet DSN for process 0xe9c Thread 0xa74 DBC 0x2bc0b4 Jet' を開くことができません。
Accessにパスワードが設定されている場合に発生します。
437:nobodyさん
06/04/15 11:10:18
>>435
今時mdbでそんな方法で接続してる奴いねよ
Microsoft.Jet.OLEDB.4.0 で接続しろよ
438:435
06/04/15 11:21:55 GTWKBHgT
>>436
パスワードを解除したらできました。
ありがとうございます。
439:435
06/04/15 11:28:34 GTWKBHgT
>>437
ああ、古いASP引っ張り出したんであれだったけど
これに直しました。
DBF = "Provider=Microsoft.Jet.OLEDB.4.0; " & _
"User ID=;Password=;Data Source=" & Fname
440:nobodyさん
06/04/15 21:22:35
>438
まぁパスワード解除しちゃったそうだから今更だけど
パスワード付きmdbをJet OLEDB使って開くときは、
ConnectionString/Passwordプロパティにパスワード入れるんじゃなくて
Connection.Properties("Jet OLEDB:Database Password")に突っ込むこと。
441:435
06/04/16 13:54:35 eJrc5hWb
Fname="D:\asp/DB.mdb"
DBFile= "Provider=Microsoft.Jet.OLEDB.4.0;User ID=;Password=;Data Source=" & Fname
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open DBFile
Set RS = server.CreateObject("adodb.recordset")
RS.Open "SELECT * FROM main WHERE id=" & request("id") & " and pass=" & request("pass") & ";",ConnadOpenStatic, adLockOptimistic
RS("aaa")=Request("aaa")
RS("bbb")=Request("bbb")
RS.update
RS.closeset
RS=nothing
Conn.closeset
Conn=nothing
上記更新コードを実行すると、
ADODB.Recordset エラー '800a0bb9'
引数が間違った型、許容範囲外、または競合しています。
というエラーになってしまいます。
どこを直せばよろしいでしょうか。
お願いします。
442:435
06/04/16 17:50:24 eJrc5hWb
解決しました。失礼しました。
443:nobodyさん
06/04/18 18:02:27
435は解決したとみせかけて実は解決していなかった
だから質問をコピペし、別の板、もしくは別のスレで書き込み答えを得ようとしたのか?
444:nobodyさん
06/04/19 17:14:37
ASP.netやり始めて勉強してるんだけど、asp関係の板ってこんなに過疎ってるとは思わなかった。
いろいろ勉強してるんですが、なかなかおもしろいのになぁ。
SQL2005が2000と比較して結構強力になってるっぽいし、ASP.netもいろいろおもしろい。
勉強し始めて1週間ぐらいだけど、5年前手書きでがりがり書いてたASPとは全然違う。
いまObjectDataSourceにDataSetを渡して、データバインドコントロールでいろいろ表示させてるけど、
これは結構使えるかもって思った。次の開発はasp.netでやってみようかなぁ。
445:nobodyさん
06/04/21 08:06:46 2wM3++cG
ASP.netを開発するにはどんなツールが必要ですか?
446:nobodyさん
06/04/21 12:15:40
>>445
ここのアプリケーション開発基礎が詳しい
URLリンク(www.microsoft.com)
まぁ、いまであれば、Visual Web Developer 2005 Express Editionと
SQLServer2005ExpressEdition with Advanced Servicesで無料で開発できる
447:nobodyさん
06/04/22 05:00:11 KZQOiwti
ツールを使わないで作るASPでsendmailみたいなプログラム作れないでしょうか?
cgiでSMTPを使って出来たのだからありそうだけどなかなか見つかりません。
よろしくお願いします。
448:447
06/04/22 05:11:37 KZQOiwti
SMTP鯖を直接叩いてメールを送るソースお願いします。
449:447
06/04/22 07:52:46 IlbM7gzP
URLリンク(homepage2.nifty.com)
今これ試してみたけど
こんなエラーになりました。
どこを直せばよいでしょうか、お願いします。
-----
サーバーによって 1 つまたは複数の受信者アドレスが拒否されました。サーバーからの応答は次のとおりです。550 5.7.1 Unable to relay for
-----
450:nobodyさん
06/04/22 11:28:12
>>449
試してみたがソースに問題はなさそう
鯖がそのメアドに送れないって言ってるんでそちらを調べてみて
URLリンク(www.google.co.jp)
451:nobodyさん
06/04/22 12:30:44
>>449
こんなのMSであるんだな。初めて知った。
でもこれみると、POP Before SMTPやSMTP Authには対応してない気がするのは、
漏れだけかな・・・
となると、まず認証関係を確かめる必要がある。
次はスパムされちゃう恐れがあるので、そのSmtpを運営してるプロバイダを使用してる
ユーザだけとか、企業だとIPアドレス等とか、いろいろ制限されててメール送信して
くれない可能性があるね。
452:447
06/04/22 13:47:10 IlbM7gzP
ちなみにこれがCGIでSMTPを叩いてメール送信するソースですが
これをASP用に変えられないでしょうか。
お願いします。
use Net::SMTP;
$smtp = Net::SMTP->new($domain); #SMTPサーバ
$smtp->mail($mail); #送信元の指定
$smtp->to($to); #宛先の指定
# データ部の組み立て
$smtp->data();
$smtp->datasend("To:$to<$to>\n"); #Toヘッダ
$smtp->datasend("Subject:$kenmei\n"); #件名
$smtp->datasend("\n");
$smtp->datasend("テスト\n");
$smtp->dataend();
$smtp->quit;
453:nobodyさん
06/04/22 16:06:29
ツール使わないっていってんのに、おもいっきりモジュールつかってるんですが。
use Net::SMTP;
これが許されるならBASP21を素直に使えよ。
454:nobodyさん
06/04/23 01:14:01
ラジオボックスを複数個用意して、いずれかが選択された時に出力する部分を入れ替える、というのは可能でしょうか。
たとえば、
<form name="sample">
<input type="radio" name="test" value="1" checked>
<input type="radio" name="test" value="2">
<input type="radio" name="test" value="3">
</form>
<%@ Language=VBScript %>
<% If document.sample.test(1).checked = true Then %>
ラジオボタンの1が選択された時に表示される内容<br>
<% Else If document.sample.test(2).checked = true Then %>
ラジオボタンの2が選択された時に表示される内容<br>
~~
こういった感じのものを作りたいと思っていますが、どうも上手くいきません。
よろしくお願いします。
455:nobodyさん
06/04/23 02:19:41
>>454
可能
普通にクラスのメソッドで、ポストされたラジオボタンの値に従って
処理をわければいいだけだと思われ。
456:454
06/04/23 03:41:00
POSTで同ページにアクションを送る、という方法ではなく、ラジオボタンを
押された時に表示を切り替えれたら、と思っています。
ラジオボックスのonClickプロパティでどうのこうの…という方法を試して
みましたが、どうもエラーが出てしまいます。
ソースのサンプルみたいなものがあれば嬉しいのですが、見つからず…。
457:nobodyさん
06/04/23 06:58:29
>>454
たぶんASPとクライアントサイドのVBを混同してると思われ
こういうことやるなら鯖負担軽減のためにクライアントサイドでjavascriptとかで処理した方がいいと思うけど
どうしてもASPでって言うなら↓みたいにすればできるけど
---------------------------
<%
Dim CHK,URL,MSG
URL= Request.ServerVariables("SCRIPT_NAME")
CHK=Array("","","")
If Request.QueryString("test")<>"" Then CHK(Request.QueryString("test")-1)=" checked"
%>
<html>
<body>
<form name="sample">
<input type="radio" name="test" value="1" onclick="self.location.href='<%=URL%>?test=1'"<%=CHK(0)%>>
<input type="radio" name="test" value="2" onclick="self.location.href='<%=URL%>?test=2'"<%=CHK(1)%>>
<input type="radio" name="test" value="3" onclick="self.location.href='<%=URL%>?test=3'"<%=CHK(2)%>>
</form>
<%
Select Case Request.QueryString("test")
Case 1
Response.Write "1つ目が押されました"
Case 2
Response.Write "2つ目が押されたようです"
Case 3
Response.Write "3つ目が押されたかも…"
Case Else
End Select
%>
</body>
</html>
458:nobodyさん
06/04/23 14:40:54
>>456
それを実現するならAjaxだな
URLリンク(www.atmarkit.co.jp)
だけど、めんどくさそうで、おれならやりたくないな
459:nobodyさん
06/04/23 16:27:40
表示だけの問題なら全部ソースに書いといて1つだけ表示させればいい
<html>
<head>
<script>
function disp(targetID){
document.getElementById("Disp1").style.display="none";
document.getElementById("Disp2").style.display="none";
document.getElementById("Disp3").style.display="none";
document.getElementById(targetID).style.display="inline";
}
</script>
</head>
<body>
<form name="sample">
<input type="radio" name="test" value="1" onclick="disp('Disp1');">
<input type="radio" name="test" value="2" onclick="disp('Disp2');">
<input type="radio" name="test" value="3" onclick="disp('Disp3');">
</form>
<div id="Disp1" style="display:none;">ラジオボタンの1が選択された時に表示される内容</div>
<div id="Disp2" style="display:none;">ラジオボタンの2が選択された時に表示される内容</div>
<div id="Disp3" style="display:none;">ラジオボタンの3が選択された時に表示される内容</div>
</body>
</html>
まぁ既にスレ違いだが
460:454
06/04/24 02:09:47
ソースを元に作成してみます。
手短ですが、返答ありがとうございました。
461:nobodyさん
06/04/24 11:16:04 gF03A8tY
今さらかもしれないのですが、ISAPIについて教えてください。
ISAPIFilterからApplication変数を読む事ってできないでしょうか。
462:nobodyさん
06/04/25 10:04:51
文字列の比較について聞きたいのですが、分かる方がいればお願いします。
ドメインのカントリーコードを抜き出して比較するためのコードとして、以下のように書きました。
Dim country1
Dim country2
country1 = Session("domain")
If country1 = "" then
err = 1
Else
country2 = Split(country1,".")(UBound(Split(country1,".")))
If country2 = "com" or "net" or "jp" then
err = 1
End If
End If
Session("domain")には、フォームから送信されたドメイン名(www.hogehoge.orgなど)が入っています。
しかし、これだとエラーが出てしまいます。
何度か試してみましたが、If country2 = "com" then のように、一種類だけなら問題なく動きました。
原因が分かる方いませんか?
463:462
06/04/25 11:20:35
先ほど書き込みした者です。
昨日から悩んだ末の書き込みでしたが、先ほど演算子の優先度の関係に気づき、自己解決しました。
板汚し失礼しました。
464:nobodyさん
06/04/28 01:48:17 TXbB+xqv
ASPをこれから始めようと思ってます。
で、IISをインストールして、IEからURLリンク(127.0.0.1)にアクセスしたところ、
ユーザー名とパスワードの入力ウィンドウが表示されました。
ユーザー登録した覚えはないのですが、どうしたらいいですか?
465:nobodyさん
06/04/28 07:06:59
>>464
IISの設定で「既定のWebサイト」のプロパティから
ディレクトリセキュリティ→匿名アクセスおよび認証コントロールの「編集...」
のダイアログの「匿名アクセス」に
チェックついとるか?
466:nobodyさん
06/04/28 22:49:06
>>464
それってルーターかモデムにアクセスしようとしてるんだよ
試しにルーターかモデムにログインするIDとパス入れてご覧
467:nobodyさん
06/04/29 00:22:32
>466
それはひょっとしてギャグで(ry
468:464
06/04/29 12:17:28 5l2q50I6
>>465
IISの設定の方法がわかりません。
469:nobodyさん
06/04/29 13:29:04 xQDtvren
携帯サイトを作ろうとしてますが、キャリアによって移動するページを仕分けたいのですが
どのような判別ソースを書けばよいでしょうか?
キャリアはEZ、Docomo、Vodafoneですが、画像を表示できるタイプとできないものの
全部で6パターンを仕分けたいです。
よろしくお願いします。
470:nobodyさん
06/04/29 17:09:41 xQDtvren
これをASP風に変更すればどんな感じになるでしょうか?
お願いします。
sub User_Agent {
my($user_agent) = @_;
# exp. DoCoMo/1.0/P209is/c10
if (user_agent =~ /DoCoMo/i) then
platform = "DoCoMo"
agetPart = split(/\//, user_agent);
browser = "DoCoMo"
if agetPart[1] =~ /\(/) { # FOMA
$agetPart[1] =~ /([0-9]\.[0-9])\s([^\(]*)(.*)/ ;
$browser_v = $1;
$platform_v = $2;
} else { # i-mode
$browser_v = $agetPart[1];
$platform_v = $agetPart[2];
}
if($platform_v eq '') {
$platform_v = '';
}
return ($platform, $platform_v, $browser, $browser_v);
}
471:nobodyさん
06/04/29 17:12:39 xQDtvren
しくじりました。こっちです。
sub User_Agent {
my($user_agent) = @_;
# exp. DoCoMo/1.0/P209is/c10
if ($user_agent =~ /DoCoMo/i) {
$platform = 'DoCoMo';
@agetPart = split(/\//, $user_agent);
$browser = 'DoCoMo';
if ($agetPart[1] =~ /\(/) { # FOMA
$agetPart[1] =~ /([0-9]\.[0-9])\s([^\(]*)(.*)/ ;
$browser_v = $1;
$platform_v = $2;
} else { # i-mode
$browser_v = $agetPart[1];
$platform_v = $agetPart[2];
}
if($platform_v eq '') {
$platform_v = '';
}
return ($platform, $platform_v, $browser, $browser_v);
}
472:nobodyさん
06/04/29 18:22:50
>>468
ふーんそっか大変だね
473:466
06/04/30 00:30:55
>>467
すまん。実際俺はそうだったよ
串指してないし
474:nobodyさん
06/04/30 12:32:07
今すぐループバックアドレスでぐぐれ。
475:464
06/04/30 15:56:09 BgW+gShw
えー色々と問題を解決していきました。
とりあえずお礼と結果
>>465
チェック入ってました。結局アクセスできませんでしたが、
他のファイルはアクセスできることがわかりました。
多分、最初のファイル自体の問題なんじゃないかと思います。
有難うございました。
>>466
違いました。
有難うございました。
で、ASPをやってみて、JScriptとVBScriptは上手くいくんですが、
ASP.NETのC#ができません。MMCで使用する言語をC#にしたんですが
どうやら実行が許可されていないようです。
どうすればいいでしょうか。
476:nobodyさん
06/04/30 16:52:26
ASP.netはスレ違いなんだが…
とりあえずやってみようとしてるファイルの
ファイル名と内容とブラウザに出てきたエラーの詳細を晒してみ。
477:464
06/04/30 17:14:27 BgW+gShw
>>476
わかりました。以後、ASP.NETの質問はASP.NETスレでやります。
URLリンク(127.0.0.1)
ファイル名:index.aspx ←IISのドキュメントのところで設定した。
カレントディレクトリはwwwroot
HTTP 403.1 アクセスは許可されていません:
実行アクセスは許可されていません。
・背景
プログラムの実行が許可されていないディレクトリから、CGI、ISAPI、
またその他の実行可能プログラムを実行しようとしました。
<%@ Page language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"URLリンク(www.w3.org)">
<html xmlns="URLリンク(www.w3.org)" xml:lang="ja"><head>
<title>Test</title></head><body>
<h1>Test</h1>
<p><%= "test" %></p>
</body></html>
478:nobodyさん
06/04/30 20:32:41
wwwrootのフォルダのアクセス権だな。
Everyoneに読み取りと実行の権限がいるはず。
あと既定のwebサイトのプロパティでアプリケーション設定の実行アクセス権を
「スクリプトのみ」か「スクリプトおよび実行可能ファイル」にしてあるか確認。
479:464
06/05/01 01:40:32
>>478
動きました。(少し感動)
有難うございます。
480:nobodyさん
06/05/01 21:20:33 G9IWAFk4
>>470-471についてお願いします。
481:nobodyさん
06/05/01 22:42:43
>>480
function User_Agent (var1,var2) {
var user_agent = Request.ServerVariables("HTTP_USER_AGENT").Item();
// ex. DoCoMo/1.0/P209is/c10
if (user_agent.match(/DoCoMo/i)) {
platform = "DoCoMo";
agetPart = user_agent.split("/");
browser = "DoCoMo";
if (agetPart[1].match("(")) {// FOMA
// $agetPart[1] =~ /([0-9]\.[0-9])\s([^\(]*)(.*)/ ;←ここ意味不明?代入?正規表現?
browser_v = var1;
platform_v = var2;
} else {
browser_v = $agetPart[1];
platform_v = $agetPart[2];
}
if (platform_v=="") { platform_v = ""; }// ここ意味あるの?
}
return (platform, platform_v, browser, browser_v);
}
482:nobodyさん
06/05/01 22:53:52
こうか?適当。ノーチェック。
function UserAgent(userAgent)
dim platform,agetPart,browser,regex,omatches,omatch
dim browserV,platformV
if instr(Ucase(userAgent),"DOCOMO") > 0 then
platform = "DoCoMo"
agetPart = split(userAgent,"/")
browser = "DoCoMo"
if instr(agetPart(0),"(") > 0 then
set regex = new RegExp
regex.pattern = "([0-9]\.[0-9])\s([^\(]*)(.*)"
set omatches = regex.execute(agetPart(0))
set omatch = omatches(0)
browserV = omatch.submatches(0)
platformV = omatch.submatches(1)
else
browserV = agetPart(0)
platformV = agetPart(1)
end if
end if
UserAgent = array(platform, platformV, browser, browserV)
end function
483:nobodyさん
06/05/02 14:14:00
hoge1.aspにて
dim hoge
set hoge = new clsHoge
set session("sshoge") = hoge
hoge2.aspにて
dim hoge
set hoge = session("sshoge")
response.write hoge.hello()
というようにhoge2.aspでオブジェクトを取り出して
使いたいのですがhogeのhello()メソッドにアクセスできません。
どこに問題があるか分かる方がおられましたら
教えていただけないでしょうか?
484:nobodyさん
06/05/02 15:34:41
>>483
hello()メソッドはどこで定義したの?
485:nobodyさん
06/05/02 20:53:58
>>482
ありがとうござあいます
今日は酔ってるんで明日やってみます
486:nobodyさん
06/05/03 00:24:06
>>483
超残念。
SessionにはVBScriptのオブジェクトは格納できない。
(厳密に言えば格納は出来るけど、それを取り出して使う事が出来ない)
SessionはIISのオブジェクトであって、VBScriptとは次元が違うから。
自力でserialize的な仕掛けでも作るしかないね。
487:nobodyさん
06/05/17 17:39:34
Microsoft JScript 実行時エラー エラー '800a138f'
分かる人、助けてくらはい
488:nobodyさん
06/05/17 20:24:32
せめてそのエラーを吐くソースを晒せ
489:nobodyさん
06/05/17 23:51:46
>>487
ランタイムエラーを起こすJScriptコードがあるってことだな。
490:nobodyさん
06/05/18 06:23:27
ちらっとぐぐってみたら
WindowsUpdateが絡んでいるようなのがちらほら。
だとしたらちょっと厄介な話かもね
491:nobodyさん
06/05/26 09:32:16
引越ししたんだが、webサーバーに使ってたマシン(Win2000server)でaspを実行すると、
response.redirectで引っかかるようになってしまった。
別PCで動かした場合は今までどおり動くんだが、、、
IISとか設定いじった覚えもないし。
何か疑うような所ってあります??
492:nobodyさん
06/05/26 16:10:20
IISの設定で親のパスを有効になってますか?
493:nobodyさん
06/05/29 11:55:41
>>492
なってます。
ナンデダロ。。。。
response.redirectで別aspに飛ばすと、
内部エラー500で止まってしまう。
494:nobodyさん
06/05/29 23:41:30
>>493
まずこれを試せ
URLリンク(support.microsoft.com)
495:491
06/05/30 09:33:53
「ISAPIアプリケーションをキャッシュする」のチェックが抜けてますた。。。
外した覚えもないんだけどな。。。
>>492,>>494様、サンクスです。
496:nobodyさん
06/06/08 21:56:07 Ak1nru4j
初歩的なんですが、テキストの色を変えるために
Response.Write "<FONT color"red">hoge</FONT>"
ってやるとエラーになるんですが、どうすればいいんでしょうか?
497:nobodyさん
06/06/08 23:44:25
>496
redの前後の"を""と二つ続ける
↓
ウマー
498:nobodyさん
06/06/09 00:24:28 ziVzofuc
>>497
サンクスです!
そっか、単純に"だと閉じちゃうのか。
499:nobodyさん
06/06/09 02:24:04 ziVzofuc
また詰まってしましまいました。
Response.Write "<input type=""submit"" value=""hoge"">"
とすると「オブジェクトがありません」て言われました。
何がまずいんでしょうか?
500:499
06/06/09 02:35:40
自己解決です。
ただのタイプミスでした。スイマセン。
501:nobodyさん
06/06/09 09:32:31 1vEHWatH
>>500
つか、TYPOくらい
ここにPOSTする前に
見直して確認しろよ。www
502:nobodyさん
06/06/22 22:11:24 EZKQQCl5
URLリンク(www.itmedia.co.jp)
↑にページに
> Response.Redirectメソッドを呼び出しても,即座に引数に指定されたURLに飛ぶというわけではなく,
> ASPファイルに記載された処理はすべて実行されるので,十分に注意したい。
て書いてあるんだが、Response.Redirect以降の処理は実行されないんじゃなかったっけ?
503:nobodyさん
06/06/22 23:46:17
そのはず
504:nobodyさん
06/06/22 23:47:07 EZKQQCl5
>>503
「そのはず」 ってどっち?
505:nobodyさん
06/06/22 23:52:08 EZKQQCl5
URLリンク(hp.vector.co.jp)
こっちには 「以降に記述された処理は無意味」 って書いてあるな。
506:nobodyさん
06/06/23 00:08:48
>>505
URLリンク(support.microsoft.com)
URLリンク(support.microsoft.com)
ここら辺に書いてあるけど、
Buffer=Trueの場合はサーバ内のバッファに溜めるから
サーバ側で以降のコードは実行されるけど、クライアント側では実行されない。
Buffer=Falseの場合はサーバ内でバッファリングしないから
サーバもクライアントも以降のコードは実行されない。
まぁ、結局は Server.Transfer にするか Response.End をつけろってことだな
507:nobodyさん
06/06/23 01:55:36
>505
そこ「Response.End : スクリプトの実行を中止します」って何をデタラメ書いてんだ
508:nobodyさん
06/06/23 19:40:18
---red1.asp---
<%
Session("HOGE") = "HOGE"
Response.Redirect "red2.asp"
Session("HOGE") = "HAGE"
%>
---red2.asp---
<%=Session("HOGE")%>
結果は各々の目で確かめましょう
509:nobodyさん
06/06/24 16:27:07 NUoL74NB
ファイルのアップロードについてですが、BASP21を使わずにやれる方法ありませんでしょうか?
サンプルURLなどお願いします。
510:nobodyさん
06/06/24 17:38:14
>>509
まずググれ。
511:nobodyさん
06/06/24 23:19:08
>>509
BASP使わないとしてもADOの比較的新しいバージョンが必要。
あとはググれ
512:nobodyさん
06/06/24 23:58:07
別解として自分で一からファイルアップロードコンポーネントを書いてしまうというのもあるな。
513:nobodyさん
06/06/25 15:19:55 HTU8DLsE
ADO.Stream を使ってファイルをアップロードしたいのですが
どのように記述すればよいでしょうか?
お願いします。
鯖は2003です。
514:nobodyさん
06/06/25 16:24:25
>>513
このスレを読み直せ
515:nobodyさん
06/06/25 17:26:55
>>513
>>364-368
516:nobodyさん
06/07/06 14:06:24 /8ybWcGq
textboxに数字以外の文字を入れた場合エラーを返すにはどうしたらいいですか?
VBSでお願いします。
517:nobodyさん
06/07/06 21:31:04
>>516
正規表現
[0-9]*
518:892
06/07/07 14:18:20 SQksCJlc
使い方としてはこんな感じでよいですか?
chk = ○ '← なんか入れる。
if chk = [0-9] then
ok
else
error
end if
519:nobodyさん
06/07/07 21:51:25
>>518
URLリンク(www.microsoft.com)
520:nobodyさん
06/07/09 07:12:27
お手軽にIsNumeric関数じゃダメかな?
判定基準に気をつける必要はあるけど
521:nobodyさん
06/07/09 17:13:49
>>520
数値判定ならIsNumeric
数字判定なら正規表現
522:518
06/07/09 22:47:13 X7Dt+q6q
できました。ありがとうございます。
523:518
06/07/09 22:55:02 X7Dt+q6q
続けて質問で申し訳ないのですが、
ページをPDFで表示する場合ってどうやってやればいいでしょうか?
エクセル表示とかはわかるんですが・・・
524:nobodyさん
06/07/09 22:57:13 DTwv2VIN
>>523
?
もうちょっと詳しく
525:518
06/07/09 23:20:58 X7Dt+q6q
説明が適当ですいません。
表を表示しているページをボタンを押下した時、そのページごとPDF出力して
印刷をかけたいのですがどうしたらよろしいでしょうか?
526:nobodyさん
06/07/10 00:45:49
>>525
適当なOCX探してこいwww
527:nobodyさん
06/07/10 06:40:20
>>518
事実上無理だから諦めなさい。
多分その調子でやっていたら実現するまでに
30スレ分くらいお前の質問で消費されるわ
528:nobodyさん
06/07/10 23:11:34 iQivVhLt
>>525
AcrobatインストールすればIEのツールバーにAcrobatのアイコンができる。
そのボタンを押せば現在表示されているページがPDFで表示されるよん
529:nobodyさん
06/07/11 15:37:13
>>525
翼システムのSVFとかは?
530:525
06/07/12 11:50:39 MVSuxQrd
ありがとうございます。色々試してみます。
531:nobodyさん
06/08/06 17:19:21
レガシASPの開発環境でお勧めは何ですか?
Visual Studio .Net(2002/2003/2005)かVisual InterDev 6.0
を検討していますが、.Netでも補完機能やデバッガ
の使い勝手は良いですか?
Visual InterDev 6.0はデバッグがなかなか動かなくて…
532:nobodyさん
06/08/06 18:29:19
>501
開発環境が.NetだとレガシASPなんてサポートしてないはず。
「いいじゃん、一緒にASPも.Netにシチャイナ? 」ってなもんで。
# VS.net入れたらレガシASPが動かなくなるってことではないので念のため。
533:nobodyさん
06/08/06 22:33:54
デバッグはResponse.Writeデバッグで十分だと思う…。
534:531
06/08/07 22:55:50
>>532,, 533
回答ありがとうございます。
.Net2005のExpressEditionでごく単純なASPで試してみましたが、
Option Explicitが動かないほか、include先で定義している関数が
未定義扱いになってうまくいきませんでした。
ASP3.0用のbuildProviderがあればうまくいくのかもしれませんが。
Visual InterDev 6.0でなんとかやろうと思います。
新規開発ではないので、.Netにしちゃうと、全コード移行しないといけないので。
535:533
06/08/08 20:22:28
ちなみに俺はVisual InterDevのレスポンスの悪さに業を煮やし
程なくしてサクラエディタに乗り換えました。
たかがVBScript、MSDN Libraryさえ引ければ補完のメリットなんて
あってないようなもんだしw
フォルダ内全ファイル対象の置換は便利だけどねw>InterDev
536:nobodyさん
06/08/11 21:57:33 yHgdeCQU
Windows2003Server、IIS6.0、SQLServer2003でメルマガ読者の管理を行う
プログラムを作っています。
上司に、メールアドレス入力欄にDOSコマンド?を入れると、
サーバ側で起動するから、それができないような処理を入れろ、
と言われたのですが、現象が再現できません。
(上司も誰かに突っ込まれたらしく、どうすれば実行できるのかわからないようです)
入力チェックは、一旦変数に格納した後、
正規表現でメールアドレス書式をチェックしており、
DB登録、検索時にはメールアドレスは暗号化しています。
現象が再現できれば、対応策も考えられると思うのですが、
どなたか、こういった問題をご存知の方、アドバイスいただけないでしょうか。
537:nobodyさん
06/08/11 23:21:32
>>536
無視していいんじゃね?
多分セキュリティゴロの商売トークを真に受けてるだけだろ。
チェックするとしたらDB登録時のSQLインジェクションぐらいか。
commandオブジェクト使うとか、ちゃんとシングルクォートのエスケープをしていれば無問題。
538:nobodyさん
06/08/12 02:29:08 xBjeg5WF
>>536
IISにおいて、フォームから適当なDOSコマンドを入れると
サーバ側で動き出すなんてありえない。
BASP21のExecとか、cgiがexeファイルとか、自作ISAPI使ってるっていうなら
ありえなくないが。
539:536
06/08/12 12:28:22
>>537,538
レスありがとうございます。
自分もずっと調べていたのですが、やはりソレらしい情報はないですね。
(Jetエンジンを使った問題がヒットしましたが、そもそもJet使ってないし
チェックで弾かれています)
とりあえず、SQL文をしっかり洗い出して、エスケープなどの抜けを
しっかり調べてみます。
お騒がせしました。
540:nobodyさん
06/08/18 11:37:56
Dim hoge
Set hoge = Application("hoge")
とするとApplication("hoge")にまだ値が入っていないとき
オブジェクトがありません。というエラーになってしまいます。
事前に値が入っていないかチェックする方法はありますでしょうか?
よろしくお願いします。
541:nobodyさん
06/08/18 21:23:55
isEmpty(Application("hoge"))
しかしApplicationにオブジェクトを格納するのは大抵ビミョウじゃぞ
542:nobodyさん
06/08/18 21:32:54
>540
確かエラートラップするしかなかったと思う。
DictionaryみたくExistsメソッドとかありゃ便利なんだが……そう思った頃が俺にもありました。確かにorz
(関数一個書けばいい話ではあるが)
つーかApplicationやSessionにオブジェクト突っ込むのは基本的に禁じ手ですよ?
URLリンク(www.microsoft.com)
(世の中にMTAなCOMコンポーネントなんてそうそうありませんorz)
543:542
06/08/18 21:33:47
……前半は忘れてくりゃれorz
544:nobodyさん
06/08/18 23:42:54 FoNP/zJS
>>540
Stringに強制変換させたりね
545:nobodyさん
06/08/19 21:26:33
>>540
TypeName
546:nobodyさん
06/08/24 15:03:40 aU8FJkVc
質問です。
Response.ContentType = "application/pdf"で
ページをPDF出力することってできないんですか?
547:nobodyさん
06/08/24 21:34:05
>>546
それを送った後で、PDFのデータ実体を
ブラウザに送り出してやればOK
548:546
06/08/25 09:47:25 NQK5sUA1
>547
それってResponse.ContentType = "application/pdf"が書いてある
コードのページ自体をプラウザで表示してやれば、PDFに変換されたものが
でてくるって事ですよね?
できないんですが・・・
549:nobodyさん
06/08/25 16:00:43
html→PDFの変換を自動でやらせるって事?
550:546
06/08/25 17:19:37 NQK5sUA1
そのとうりです!
551:nobodyさん
06/08/25 18:38:37
できるよ
552:nobodyさん
06/08/25 18:49:31
Response.ContentType = "application/pdf"って書いてpdfになると思ってる奴は
Response.ContentType = "audio/mpeg"って書いたら何が出ると思ってるんだろう
ちょっと考えれば出来るか出来ないか分かるだろうにな
553:546
06/08/25 19:44:31 NQK5sUA1
何をどう考えたらいいかわかりませーん。
もうすこしヒントを
554:nobodyさん
06/08/25 21:32:10
>>553
単純には出来ません。
真っ当なやり方をするとしたらPDFlibとかの外部コンポーネントでも使って
頑張ってコツコツ作っていくしかない。
555:nobodyさん
06/08/26 03:07:21
>>549-550
その発想はなかったわ・・・
556:nobodyさん
06/08/26 15:16:53
>>548
PDFのデータ実体って、
バイナリデータだぞwww
誰がプレーンテキスト吐き出せって言ったよwww
久しぶりに超うけた。
557:nobodyさん
06/08/26 15:18:28
>>556
脳みそかわいそうな子なのカナ?
558:nobodyさん
06/08/27 01:50:09
>556
まぁスレともレスともあまり関係ないが
後学のためにテキストエディタで何か一つPDFファイルを開いて見てみることを勧める
559:nobodyさん
06/08/28 01:03:57 7CABj+h0
>>553
リクエストがある度にPDF化するのは
サーバに負荷がかかるし、実際レスポンスも悪くなる。
事前にPDFに変換しとくか、
クライアントPCにAcrobatとかインストールして
IEのツールバーに表示されるPDF変換アイコンを押してもらうといいよ
560:nobodyさん
06/08/28 02:39:29
PDFはバイナリーデータもサポートしてるけどな
まぁ>>556はそんな事どうでもいいくらいおバカだが…
561:nobodyさん
06/08/29 12:02:00
Nowから秒より下の値を取得したいのですが
やりかたがわかりません。
たとえば
Year(Now)とすれば年が取れるのですが
yyyy/mm/dd hh:mm:ss.fff
のfffの部分を取得したいのですが
やり方があったら教えてください。よろしくお願いします。
562:nobodyさん
06/08/29 19:12:23
>>561
Now()ってss以下、
1000分の1秒単位の精度の
戻り値があったっけ?
たしか
yyyy/mm/dd hh:mi:ss
までじゃなかったか?
100分の1秒で求めるなら、
Timer()使って.(ピリオド)から右側の値だけ
取得することは可能だと思うけど、
1000分の1秒ってのが厳しいな。
563:nobodyさん
06/08/30 00:14:06
そもそもPCのタイマってそんなに精度ないよ
564:nobodyさん
06/08/30 00:19:03
ネタ元がアレゲなんだが
「分解能の高いタイマ関数ほど実行に時間がかかる傾向がある」
と聞いたことがある。
565:nobodyさん
06/08/30 01:05:53 F1Hs7Aoq
>>564
いや、普通に正しいだろ。
566:546
06/08/30 09:26:55 7QXl0OJH
やっぱりコツコツ作っていくしか無いんですね。
ありがとうございました。
567:nobodyさん
06/08/31 16:00:10
java開発からASP開発に周り、ASP開発は初めてですが、
javaのstrutsのようなフレームワークみたいなコンポーネントってあるのでしょうか。
MVCになってなくても良いのですが、htmlの部品の表示などをもっと簡単にしたいです。
568:nobodyさん
06/08/31 19:26:54
>>567
一つ確認。ASP?ASP.net?
569:nobodyさん
06/09/01 10:34:28
>>568
ASPです。古いパッケージのカスタマイズ案件なので・・・
570:nobodyさん
06/09/01 22:30:45
>>567
気の利いたフレームワークとかは無い。
自分でfunction作るしかないね。
不幸中の幸いとして
function hoge()
%>
<DIV>ほげほげ</DIV>
<%
end function
っていう書き方が出来るので
それを利用したりするとちょっとは楽できるかも。
571:nobodyさん
06/09/04 11:45:39
URLリンク(www.aspin.com)のサイトにフリーなコンポーネントがあるそうですが、
よく使用するものや、お勧めとかはあるでしょうか?
572:nobodyさん
06/09/04 11:55:36
XMLDOMってやつを見つけました。
数が少ないですが、探せば使えそうなものがいくつか出てきそうです。
573:nobodyさん
06/10/04 00:11:43 SPPmb2Gu
ついに一ヶ月書き込みがない。。。
574:nobodyさん
06/10/05 18:58:59
さすがに全ての面で枯れたな。
ASPとりあえず何でも出来てよく動くんだけどね。
VBScriptがあまりに非力過ぎるんだよなー。
575:nobodyさん
06/10/05 22:06:52
ウチの社内じゃまだまだ現役だよ。
……はやいとこ.NETに移行したいんだけど、他にメンテできる人がいないから……
576:nobodyさん
06/10/05 23:04:36
>>575
社外向けでも現役でつよ・・・
577:574
06/10/06 00:15:23
む、「枯れてる」と言ったのはテクニックとかそういった意味の話で。
今更スレの話題になるようなトピックは無いと言いたかっただけ。
ちなみに俺も今は昔売ったASPのシステムの保守で飯食ってます。
あと5年は無くならないだろうな…。
578:nobodyさん
06/10/06 08:08:21
たしかに、技術的なモノは出尽くした感があるね。
新機能もないし・・・。
579:nobodyさん
06/10/06 18:49:31
>>577
「保守」って言葉は、システム屋には実に都合のいい考え方だよね。
実際には日常的にはほとんど何もやらないのに(っていうか日常的に何かやらなきゃいけないシステムは糞だ)、
「保守作業」と称して、コンピュータに疎いヤツらから金を巻き上げられる魔法の杖。
580:nobodyさん
06/10/06 19:15:33
>>579
そんな保守だったらSAIKOだなー。
そう甘くねんだよ。
公僕相手だと担当者が代わる度にそいつの趣味で下らん直しを入れさせられる…
全く相手してらんねー。
そんなに金使いたかったらもらってやるから金だけよこせ。金だけ。
581:nobodyさん
06/10/06 22:06:34 G5aLUCYG
>>575
社内レベルで .NET にする必要はないと思う
582:nobodyさん
06/10/06 23:43:25 gk7iZtFm
ASPってフレームワークなんてないよね?
やっぱりC++とかVBとかでdllを作ってそれをASPで使う感じなのでしょうか?
ASPとASP.NETではどちらが生産性が高い?
583:nobodyさん
06/10/07 10:08:57
>>582
まずあなたが「フレームワーク」をどういう意味で言ってるかを明らかにしましょう。
生産性についても同様。
584:バッカーです ◆KeuXjwWDdE
06/10/07 13:19:21
雛形的な意味かな?
何をやりたくて何を探してるのか具体的にかけば
レスもあると思う。
585:nobodyさん
06/10/08 17:14:44
>>580
担当者が変わるたびに直すとしても、いったん直したらまたしばらくは
特に何もすることないだろう。担当者が毎月変わるわけじゃあるまいし。
それで毎月保守代をもらえれば楽な仕事だ。
586:nobodyさん
06/10/08 18:55:36
>>585
よほど「保守担当」にネガティブイメージ持ってるらしいな。
世の中には面子とか根性論とかによってそういう「まともな理屈」が追い出された
異世界も存在するのさ。
587:nobodyさん
06/10/08 23:53:54
>>586
そうなのか。。。 大変だな。
そういう異世界を経験しないで済む俺はラッキーなのかな?
588:nobodyさん
06/10/09 00:00:59
>587
苦労はしてみてもいいかもしれないが
地獄まで見ることはないさ……
589:nobodyさん
06/10/09 00:59:35
>>588
俺は公的な組織が大嫌いなのでそもそも付き合うことは一生ないと思うが、
そちらはどうしても付き合わなきゃならないのなら、頑張ってくれ。
おまいがシステム業界の「小泉純一郎」となって、バカを駆逐・啓蒙してくれることを祈る。
590:nobodyさん
06/10/11 16:28:51 o9Xn/RpH
ASPで入力欄(INPUTタグ)に""と入力してDBに登録します。
これを再度編集しようとINPUTタグで表示すると、
value=""""となり、何も表示されません。
なにか、良い方法というのはあるのでしょうか?
591:nobodyさん
06/10/11 19:12:14 WiH1H+/l
>>590
DBに保存したデータ「""」が
表示されなくて困ってます、ってこと?
そうなら、DBに保存する辞典で、
エスケープシーケンスをくっつければいいんじゃね?ね?
592:nobodyさん
06/10/11 20:09:36 o9Xn/RpH
>>591
Response.Writeによる表示はされます。
しかし、INPUTタグの中に表示しようとすると出来ません。
Server.HTMLEncode()を使ってみましたが、
データが変わってしまうので・・・使い方がよろしくないのでしょうか?
593:nobodyさん
06/10/11 20:37:26
>>592
>>Server.HTMLEncode()を使ってみましたが、
>>データが変わってしまうので・・・使い方がよろしくないのでしょうか?
変わらないよ。ためしに
<input type="text" name="test" value="""">
ってというのフォームに加えてsubmitしてみ。
594:593
06/10/11 20:38:48
うげ。変わった。
value="&quot;&quot;"
ね。中身は半角にしてちょんまげ。
595:nobodyさん
06/10/11 20:47:13
一番カンタンな解決方法はaaaが""として
<input value='<%=aaa %>'>
とすることだな。逆にシングルクォーテーションがいれらんなくなるけどw
おいらならこうするな
<input value="<%=Replace(aaa,"""",""")%>">
596:nobodyさん
06/10/11 20:50:36
あ、試してる間に先越されたうえに>>593氏と同じミスを・・・
<input value="<%=Replace(aaa,"""","&quot;")%>">
&を半角に・・・
597:nobodyさん
06/10/11 21:55:56
>592
ASPというよりHTMLの問題だね。
HTML エスケープ でググってみ。
598:nobodyさん
06/10/12 02:03:13
XSSの巣はここですか?
599:nobodyさん
06/10/12 20:00:56
ダセェ煽りだな
600:nobodyさん
06/10/12 23:47:22
お前がな
601:nobodyさん
06/10/13 21:22:57
>>600
ダセェ脊髄反射だな
602:nobodyさん
06/10/14 12:56:06
お前がな
603:nobodyさん
06/10/14 22:17:52
ばーか、俺だよ
604:nobodyさん
06/10/15 01:32:07
オレ、オレ!
605:nobodyさん
06/10/15 09:14:52
ASP、っていうとまずApplication Service Providerかと思われてしまうご時世になってしまったな
606:nobodyさん
06/10/17 19:38:53
Application.Lockのタイムアウト時間を設定するやりかたを
教えてください。
よろしくお願いします。
607:nobodyさん
06/10/17 19:45:13
>>606
多分設計が間違っているんじゃないかなあ。
Lockをどういう目的で使ってる?
608:nobodyさん
06/10/17 23:56:36 pxOS6RG8
>>606
自分でLockをタイマー解除するスクリプトを作るしかない
609:nobodyさん
06/10/18 23:09:12
ASPでクッキーを削除するにはどうしたらよいでしょうか?
Response.Cookie("cookie") = "1"
で書き出せることはわかりました。
610:nobodyさん
06/10/19 19:22:23
ブラウザ閉じたら消えるが
611:nobodyさん
06/10/19 22:03:30 x3Bmvwr5
>>610
それはセッションじゃね?
612:nobodyさん
06/10/19 22:37:39
>>609
ブラウザ側で持ってる物だからサーバーから消せるわけないじゃない
空文字列をセットするか消されるタイミングを指定するか
Response.Cookies("cookie").Expires = 有効期限
613:nobodyさん
06/10/20 20:58:22
日本の罫線文化に適合しているのは、ASP.NETよりもASPなのかな?
本で解説されているような、ASP.NETの便利なコントロールよりも、
Repeater使ってセル結合しているような複雑な表をつくるほうが多いし。
ASP.NETと違った、タグライブラリを活用するような、独自の進化版ASPを誰か作ってくれないかな。
614:nobodyさん
06/10/20 22:49:18
>>611
有効期限を指定していないクッキーは普通ブラウザを終了させると消えるよ
615:nobodyさん
06/10/20 23:07:04
>>613
うむ
ASP.netのwebコントロールっていう奴らは
何かイマイチ日本人の感覚では使いづらいわな。
616:nobodyさん
06/10/21 08:21:59
>>613
どっちかというと.net系言語を使ってASP的な書き方をするやり方、がいいな。
ASPをC#.netで書ければなあとか思ったりする。
そこでActivePythonか?
でもそこまでしてでもある…。
617:616
06/10/21 08:22:50
× でもそこまでしてでもある…。
○ でもそこまでしてまだまだASPか?って感じでもある…。
618:nobodyさん
06/10/21 21:45:20 vl2bs6UL
ASPのSessionオブジェクトについて質問です。
全く異なる二つのWebアプリケーション test1.asp と test2.asp を同時に開き、それぞれ Session.SessionID を出力したところ全く同じものが入っていました。
これを、別々の Session を持たせたいのですが可能なのでしょうか?
また、一つのWebアプリケーション test.asp 上で、このプログラムが呼ばれる度に新しい Session を作ることは可能なのでしょうか?
ブラウザのウインドウを二つ立ち上げて両方 test.asp にアクセスした時に、別の Session を作りたいと思っています。
もちろん、二つのブラウザがそれぞれページ遷移してもそれぞれのセッションを保持したままをイメージしているのですが…
本やサイトを調べましたが詳しく解説されているところが見あたらず、質問させていただいております。
よろしくお願いします
619:nobodyさん
06/10/21 23:26:58
IEに関して言うと、同じプロセスだとSessionIDがかぶる。
つまり<A TARGET="BLANK">とか、Ctrl-Nとかで新規ウィンドウを開く、とかして複数のIEのウィンドウを開いた場合は
同じSessionIDを持つ事になる。
620:nobodyさん
06/10/21 23:51:05
っていうか、IISの仮想ディレクトリのプロパティで
アプリケーションを分ければいいだろ
621:618
06/10/22 09:04:54
>>619
ありがとうございます。
やはりウインドウ毎に意図的にSessionを発行し直すというのは無理なんですね
>>620
レンタルサーバなので、サーバ側はいじれないんです…
622:nobodyさん
06/10/31 21:52:10 4zgJkeOl
ページに3つのメニューリストを配置して、
MenuList1の選択値によってMenuList2の内容が決定し、
MenuList2の選択値によってMenuList3の内容が決定するといった処理を行いたい場合、
どのようにしたらよいのでしょうか?
623:nobodyさん
06/10/31 23:05:27
>>622
リストを変更するたびにPOSTして
サーバサイドで次のリストを変更して戻すのが
このスレとしては正しいwww
624:nobodyさん
06/11/01 00:17:54 ASDxYcPa
>>622
まぁ、今時ならAjaxだろうな
625:nobodyさん
06/11/01 04:33:10
>リストを変更するたびにPOST
ここをもう少し詳しく教えてもらえませんか
626:nobodyさん
06/11/01 10:03:30
>>625
それはJavaScriptとかの
クライアントサイドスクリプトの話だから
スレ違いwww
627:nobodyさん
06/11/01 12:26:02
>>625
selectのonchangeでサブミットするようにすればいいんだけど、
わからなければjavascriptの勉強してください
628:nobodyさん
06/11/01 16:14:02
毎回ボタンを押させる方式にすればjavascriptじゃなくてもできるけどね。
こんな感じ。
[ ▼][送信]
↓
[ ]
[ ▼][送信]
↓
[ ]
[ ]
[ ▼][送信]
629:nobodyさん
06/11/01 17:33:45
onchangeでsubmitできるのはjavascriptでしたか。
vbscriptで実現は無理でしょうか?
だとしたら>>628の案が現実的ですね。
630:nobodyさん
06/11/01 20:18:43
>>629
クライアントサイドスクリプトもVBScriptで書けるよ、IE専用なら。
でもそういう事じゃないだろうな~。
631:nobodyさん
06/11/01 22:55:33
そうなんですよねサーバサイドでなんとかしたいんですよ。
どうしてもonchangeイベントでpostする為には、JavaScriptの選択なんでしょうね。
これまでVBScriptメインで作ってきているのですが、VBScriptのページと
JavaScriptのページが混在したシステムは問題ないのでしょうか?
632:nobodyさん
06/11/02 00:22:53
>631
クライアント側(というか、ブラウザに送り込まれてブラウザで動作するコード)はJavaScript、
サーバ側で動作する(クライアント側には送られない)コードはVBScriptで書くのがASPのたしなみ。
と昔聞いた。……ごめん聞いたのは嘘だが現実問題、JavaScriptのコード内に<%~%>入れて制御するなんてのすら
実務ではよくあること。
633:nobodyさん
06/11/02 02:36:08
>>631
混在って言うのは、サーバサイドかクライアントサイドのどちらか片方で両方の言語を使う場合。
サーバサイドとクライアントサイドで別々の言語を使うのは、普通、混在とは言わないよ。
ソース上では混ざって見えるかもしれないけどね。
634:nobodyさん
06/11/02 23:56:26
極端な話、ブラウザからすればサーバサイドで何してようがどうでもいいわけで。
ASPが最終的にはHTMLに則った文字列を吐き出せればOKだと思ってる。
csvとかpdfとかはまた別の話ね(´・ω・`)
635:nobodyさん
06/11/12 07:55:38 m+ZTUqAd
FileSystemObject.CopyFileでコピーしようとしましたが
こんなエラーが出ました。どうすればよいでしょうか?
お願いします。
Microsoft VBScript 実行時エラー (0x800A01A8)
オブジェクトがありません。: 'FileSystemObject'
636:nobodyさん
06/11/12 12:15:17
>>635
オブジェクトはキチンと定義しろ
637:nobodyさん
06/11/12 19:31:42
エラーが出るコードを予想
Set fso = CreateObject("FileSystemObject")
ネットでサンプル探せばわかると思うけどこんな定義してるコードはないよ
638:nobodyさん
06/11/12 22:57:11
>>637
見当違いもいいとこだな
639:nobodyさん
06/11/13 07:55:59
>>638
いや、正解だろ
640:nobodyさん
06/11/13 19:11:33
>>639
100%外してるよ
641:nobodyさん
06/11/13 21:04:34
ここで重要なのは637があってるかどうかではなくて
635が問題になっているソースも出さずに解決策をクレクレしているところだよ。
だれかエスパーよんでこい
642:nobodyさん
06/11/18 00:14:20
>>641
どういうときにそういうエラーがでてくるのか把握してないおまえは素人
643:nobodyさん
06/11/18 13:10:56
まぁ、これくらいは検討つくよな
でも質問者として最低限エラー箇所のソースは出すべきだろ
644:nobodyさん
06/11/18 15:07:03
>>642
解決方法を提示できないおまえはド素人
645:nobodyさん
06/11/18 21:16:49
がきんちょ二匹煽り合いやめれ
646:nobodyさん
06/11/22 11:39:26 AQ+oMtaq
メルマガ申し込み者に、申し込み内容の確認のため、BASP21を使ってメールを返すASPスクリプトがあります。
このサイト(スクリプト)はPC用なのですが、
メルマガ&確認メールの送り先メルアドは、PC、携帯と好きな方を入力できるようになっています。
このページでメールの送り先をsoftbankに指定した場合のみ、確認メールがいつまでも帰ってきません。
メールの送り先が、PC、ドコモ、auの場合は問題なく確認メールが届きました。
サーバ内のファイルには、申し込み内容がログとして保存されてますので、
その先の、メールを送信する部分の処理で詰まっているのだと思います。
この問題をASPの記述で回避する方法はないでしょうか?
あるいは、板違いになってしまいますが、
BASP21の設定、サーバの設定等で回避する方法があれば教えて欲しいです。
647:nobodyさん
06/11/22 12:23:02
>>644
なに論点をずらしんてんのw?
648:nobodyさん
06/11/22 21:56:12
>>646
まずSoftbankに仕様が分からないとどうしようもない
649:nobodyさん
06/11/22 22:58:21
>>646
ドメイン拒否されてたり、、、
650:nobodyさん
06/11/25 12:59:51 Fb29QKCd
Webサーバとデータベースサーバを分離してデータベースサーバ内のMDBファイルに
アクセスして更新、参照するには、Webサーバ側にどのように設定すればすればよいでしょうか。
よろしくお願いします。
651:nobodyさん
06/11/25 13:11:41
>>650
MDBだったら共有フォルダに配置するだけだろ。
・・・ってか、そういう無駄な分散措置は止めとけ。
ローカルサーバに配置した方が圧倒的に応答が早いぞ。
せめてSQL Server 2000かMSDE2000くらい導入汁。
MDBファイル置いてるだけなら、
それはデータベースサーバではなくて
ただのファイルサーバwww
652:nobodyさん
06/11/25 14:21:48
MDBってwwww
653:nobodyさん
06/11/25 15:52:13 XtlTaIQl
ではMysqlに接続するのはどうでしょうか?
MySQLは4.1.18ですが、どのODBCドライバをWebサーバにインストールすればよいでしょうか?
お願いします。
654:nobodyさん
06/11/25 16:48:04
>>653
ググれ。
URLリンク(dev.mysql.com)
くらいならすぐに出てくるだろ。
655:nobodyさん
06/11/26 13:58:58 YkByGaO7
>>654
thx
656:nobodyさん
06/11/27 22:16:46
ASP使うなんてところは小規模とかイントラとかだから実際のトコMDBで十分だと思う
657:nobodyさん
06/11/28 22:51:23
>>656
参照Onlyなら充分www
更新有りならNG。
・・・でもな、MDBで
>>650の言うような分散に
意味があると思うか?
658:nobodyさん
06/11/29 20:41:12
ないな
mdbのバックアップ(コピー)を別のサーバに置くというのならまだしも・・・
659:nobodyさん
06/12/02 08:53:02 RpBW8wOH
IIS
Win2003server、IIS6.0、アップロードにBASP21を使って、
巨大ファイルファイルのアップロードをしていますが、
68Mbぐらいまではうまくいくのですが、70Mbを超えると
Request.BinaryRead()の部分で「予期しないエラー 関数が|を返しました」
という原因不明のエラーが発生しております。
MetaBese.xmlのAspNaxRequestEntityAllowedは1Gbに変更しているのですが
それ以外にも設定するところがあるのでしょうか。
660:nobodyさん
06/12/02 23:07:03
>>659
アスキー転送のHTTPでそんなデカイのUPするな
661:nobodyさん
06/12/03 23:43:04 w/wCFOfB
>>660
ASPではどうやっても80Mb前後が限界だったので
急遽VC+のCGIでアップロードするようにしました。
なんとか600Mbぐらいまではアップロードできるようになりましたが
それ以上はユーザーには物理的限界ということで納得してもらいました。
662:nobodyさん
06/12/04 20:23:03
何のシステムなのか非常に気になる
663:nobodyさん
06/12/04 21:43:05
書類のスキャン画像を複数枚分固めてうpするとか。
まぁ、600MBもいっぺんに送るってかなりな気がするが。もうちょっとでCD一枚分……
664:nobodyさん
06/12/08 17:06:01
>>661
俺も元請のバカ営業のうかつな一言で
1GBのアップロードを要求された事があったよ。
結局ASPじゃ無理だったから
Apache + PHPに切り替える事になったけどね。
665:nobodyさん
06/12/11 21:27:03 5Ff1t4H3
入力された文字がカタカナかどうかを判別するには何かいい方法ないでしょうか?
666:nobodyさん
06/12/11 22:16:14
>665
「カタカナ判定」でググれ。
667:nobodyさん
06/12/12 19:59:25
価格.comって、ASP使っているんだな。
あと日経の一部のサイト(nikkei4946.com)もASP使っているし。
まだまだ、ASPの需要はあるのかな。
668:nobodyさん
06/12/13 12:46:49
Win系のサーバー=ASPってとこは結構多いね
PHPとかJSPの親和性が昔よりかは高くなってるので
最近はだいぶ食われて来てるけど
669:nobodyさん
06/12/14 23:17:08
スレ違いかもしれませんが、コーディングについての質問です。
ASPでバブルチャートのグラフを表示する際に
バブルを立体的に表示させたいのですが、
Excel のグラフで言うところの『3-D 効果』の
チェックに該当するプロパティが分かりません。
マニュアルやGoogleで調べても
それらしい記述が無くて困っています。
とりあえず、グラデーションで誤魔化そうかとも考えていますが…。
どうか皆様のお力をお貸し頂けないでしょうか。
お願いします。
670:nobodyさん
06/12/15 07:33:17
>>669
まずはグラフ作成を何で行っているのか。
話はそれからだ。
671:669
06/12/16 09:10:52
>>670
ソフトのことですかね?
「これでやって。ヘルプはこれを参照に」って言われて作ってるだけなんで
ソフトはよく分からないんですよね。
土日は休日なんで来週調べてきます。
672:nobodyさん
06/12/16 16:45:14
いやもう来なくていいよ迷惑だし
673:nobodyさん
06/12/16 20:45:15
>>672おまwww
この程度で迷惑とか言うなら2ちゃん来なきゃいーじゃんww
674:nobodyさん
06/12/17 12:16:30 5QCUiU3O
以下のようなFLASHとASPを連携させたアプリケーションを作りたいと思っています。
FLASHにはテキストフィールドとボタンを配置。
↓
テキストフィールドに値を入力。
↓
ボタンを押し、テキストフィールドに入力されたデータをASPへ渡す。
↓
ASPで処理したデータをFLASHに返す。
↓
帰ってきた値、テキストをFLASHで表示する。
どのように作ればいいのかどなたかご教授していただけませんしょうか?
スレ違いでしたらすみません。
675:nobodyさん
06/12/17 12:59:24
>>674
Flashの入門書買って読めwww
676:nobodyさん
06/12/17 17:31:37
>>674
ヒント:ASPはテキスト(HTML)を返す
677:nobodyさん
06/12/18 19:43:22
>>674
FLASHのことは良くわからないけど、
ASP側で、FLASHからの値は普通に、
Request("フィールド名") で取得できるのでは?
あと、ASPからFLASHに値を返すのは、
以下のAdobeのサイトが参考になるのでは?
FlashVars を使用して SWF へ変数を渡す
URLリンク(www.adobe.com)
どうでもいいけど、最近ASPとは関係ない話題が多いね。
678:669
06/12/18 19:59:24
文句を言われながらも舞い戻ってきてしまいました。
で、バブルチャートの3D効果の件ですが、
ソフトは Office Web Components だそうです。
ChartSpace1.Charts(0).SeriesCollection(0).Interior.SetOneColorGradient _
chConstants.chGradientFromCenter, chConstants.chGradientVariantEnd, _
0.8, chConstants.chColorAutomatic
「もっと見栄えを良くして」という要望が出たので
こんな感じでグラデーション描画にしてますが、
やはり3Dの方が良さそうな感じ。
Hasなんとかみたいなプロパティがありそうですけど……。
よろしければご教授お願いします。
679:nobodyさん
06/12/18 20:19:21
>>669
ヘルプファイルとかは見た?
Office Web コンポーネント (OWC) のプログラミングに役立つ各種情報とサンプル
URLリンク(support.microsoft.com)
680:669
06/12/19 06:55:59
>>679
見た見た見ました。
メソッドからプロパティまで一通り2回ほど。
まぁ見落とした可能性は否定できませんが……。
検索でタイトルだけじゃなく内容でも探せたらいいんですけどねぇ。
681:nobodyさん
06/12/23 05:03:14 VEjj9Ul/
最近Win2000サーバーから2003に移行しました。
PHPのコードからfsockopenで、Winサーバーにアクセスし、
そこのASPのコードで、Winサーバのデータをアップデートということをしているのですが、
移行以来PHP側でEOFが検出できなくなり、
そこでfsockopenのタイムアウトまで処理が止まるようになりました。
複数のPHPサービスでひとつのASPを参照しているので、ASP側で対応したいのですが、
ASPで0x1aを出力するにはコード的にどうすればいいのでしょうか?
また、IISの設定で対応できるのでしょうか?
682:nobodyさん
06/12/23 09:13:44
Response.Write(Chr(26))じゃダメ?
683:nobodyさん
07/01/11 09:42:22
>>680
で、どうしてOWCのことをASPスレで聞こうと思ったの?
684:nobodyさん
07/01/28 18:39:05
あけましておめでとうおまえら
685:nobodyさん
07/02/10 20:37:44
FLASHとASPの連係は
JavaScript介してfsCommand使ってやる方法girl
686:nobodyさん
07/02/20 16:01:19
ASPでファイルを書き換える処理をしたいのですが
排他制御をどのようにすればよいか思案中です。
一般的にはApplication.Lock()/Unlock()で
やればよいでしょうか?
687:nobodyさん
07/02/20 18:28:23
Application.Lock()/Unlock()はApplicationオブジェクトの排他制御だから関係ない。
FileSystemObjectにもそれらしきものは見当たらなかったから、適当にロックファイルを作るしかないんじゃね?
ロック開始時に適当な名前でファイルつくってロック解除するときにファイル消すとか。
I/O負荷やファイルが残った場合のことを考えるとオススメできんけどね。
DBにデータを突っ込んで都度自動生成するの真っ当ジャマイカ?
688:nobodyさん
07/02/20 19:09:31
>>687
残念ながらDBが使えない環境です。
考えていたのは
Function fileaccess()
Application.Lock()
'ファイル読み書き処理
Application.Unlock()
End Function
というような関数でファイルへのアクセスはこの関数内だけ
にしようと思っていました。
689:nobodyさん
07/02/21 16:55:50
>>688
サーバ上でそういう処理をするexeを作って、
それをaspから起動させてあげればいいとおもうよ
排他処理等はexeのほうでやればいい。
aspはexeを起動して、パラメータを渡すだけ。
690:nobodyさん
07/02/21 23:04:58
簡易的なロックとしてApplication.Lockを使うのはアリ
691:nobodyさん
07/02/22 01:20:06
Application変数に使ってますフラグを立ててロック・・・か?
692:nobodyさん
07/02/22 22:51:37
いやそれもアリだけど>>688の方法でOK
ApplicationオブジェクトがLockの状態の時に
他からさらにLockしようとすればUnlockまで待たされるから、
Application.Lock中にファイルアクセスするようにしておけば
結果的にファイルへの同時アクセスは起こらない。
693:nobodyさん
07/02/23 07:12:20
ASPだとちょっとしたアプリならメモ帳で作れちゃう。
694:nobodyさん
07/02/23 14:30:21
サンプル作るときに便利。
……サンプルだって言ってんのにそのまま本番運用するなヽ(`Д´)ノ
695:nobodyさん
07/02/23 21:39:38
>>688だとロックかからなくないか?
696:nobodyさん
07/02/23 22:07:36
厳密にはWin32APIでロックしないと別アプリから書き換えられそうだな