==ASP== Part 3
レス数が1000を超えています。これ以上書き込みはできません。
0001nobodyさん
03/07/28 23:07ID:33/XGu54【過去スレ】
==ASP== Part 2
http://pc2.2ch.net/php/kako/1028/10280/1028024916.html
==ASP==
http://pc.2ch.net/php/kako/984/984840107.html
0002nobodyさん
03/07/29 02:50ID:???0003nobodyさん
03/07/29 09:13ID:???0004山崎 渉
03/08/02 02:23ID:???( ^^ )< ぬるぽ(^^)
0005nobodyさん
03/08/02 02:46ID:dLHbfQ1sもう誰もASP使ってねーな、こりゃ。
0006nobodyさん
03/08/02 03:16ID:???サーバサイドの話だから、プログラム板で吸収してもらうわけにもいかんし。
ASP.Netのスレを旧ASPの話題もオーケーにしちゃおうよ。
0007nobodyさん
03/08/05 09:37ID:urgHLlcR0008nobodyさん
03/08/06 11:13ID:FzIqg/fc0009_
03/08/06 11:16ID:???0010nobodyさん
03/08/06 19:44ID:???0011nobodyさん
03/08/07 02:18ID:YRE5O2wD0012nobodyさん
03/08/07 02:38ID:???0018nobodyさん
03/08/15 01:25ID:q2Qj50e40020山崎 渉
03/08/15 22:30ID:???│ ^ ^ │<これからも僕を応援して下さいね(^^)。
⊂| |つ
(_)(_) 山崎パン
0021nobodyさん
03/08/19 11:40ID:pecenLfbいろいろ自分でも探してるんですが、全部html向けばかりで、
独自タグを追加できるといってもasp向けに作れなかったり、とほほです。
002221
03/08/19 11:59ID:pecenLfbいまのところこれが一番いい感じです。
0023ナユタ
03/08/19 17:18ID:3HxTfdLw実は藁にすがってみる(涙)
ASPからCreateObject("Excel.Application")を使って
マクロ付きExcelファイルを開きブック内のマクロをキック。
処理終了まで微妙に待ってから終了するという単純な処理を作ってまして。
それが突然動作しなくなってしまったのです。
次の投稿でソースを貼りますが、そのソースを流した結果、ErrMessageには
Excelマクロ起動時のエラー : マクロ 'test.xls!Md_test.TestMacro' が見つかりません。
と入っています。つまりオープンできているのにマクロが呼べない状態です。
ちなみにExcel側にはそのマクロは存在します。
サーバ上でExcel単体で動かすと正常に動きます。
0024ナユタ
03/08/19 17:19ID:3HxTfdLw================================================================================
Set bobj = Server.CreateObject("basp21")
'Excelオブジェクトの作成
Set ObjExcel = CreateObject("Excel.Application")
ObjExcel.DisplayAlerts = False
ObjExcel.Visible = False
'xlsブックを開く
ObjExcel.Application.Workbooks.Open Server.MapPath("xls/test.xls")
If Err <> 0 Then
'--- Excelファイルのオープンに失敗している
ErrMessage = "Excelオープンエラー : " & Err.Description
End If
If ErrSts = 0 Then
'10秒間待ってからtest.xlsのマクロを起動する
'BASP21のSleepコマンドでブックを開いてからマクロを実行するまでウェイト
bobj.Sleep 2
ObjExcel.RUN("test.xls!Md_test.TestMacro")
If Err <> 0 Then
'--- マクロの起動に失敗している
ErrMessage = "Excelマクロ起動時のエラー : " & Err.Description
End If
End If
0025ナユタ
03/08/19 17:20ID:3HxTfdLw================================================================================
If ErrSts = 0 Then
'10秒待ってからtest.xlsを閉じる
'同様にマクロの処理が終わるまでの時間を校了してウェイト時間を設定しています。
ChkFlag = False
ExcelStat = ""
Do Until ChkFlag = True
bobj.Sleep 1
ExcelStat = Trim(ObjExcel.Workbooks("test.xls").WorkSheets("Control").Range("A1").value & "")
If Len(Trim(ExcelStat)) > 0 Then
ChkFlag = True
End If
Loop
If Err <> 0 Then
'--- Excelを閉じる終了処理で失敗している
ErrMessage = "Excel終了時のエラー : " & Err.Description
End If
End If
ObjExcel.Application.Quit
Set ObjExcel = Nothing
================================================================================
0026ナユタ
03/08/19 17:20ID:3HxTfdLw製品{0001041(略)} 機能 'ExcelUserData' コンポーネント{(略)} の検索に失敗しました。
リソース HKEY_CURENT_USER\Software\Microsoft\Office\9.0\Excel\UserData がありません。
これは「OLE通信しろって言うからExcelを動かそうとしたけど、その機能を動かす為の
紐付けキーがレジストリ上で見つかりませんなぁ」という事らしいのですが、何故こうなったのか
全くわかりません・・・。
試しに「IUSR_<マシン名>」のパスワードをわざと変更してログインしてみると確かに
HKEY_CURENT_USER(略)は存在しませんでした。
IUSR(略)の状態でExcelを起動すると、初回起動のセットアップ画面が開いて何やら処理が行われ
その後Excelが正常に起動されます。するとHKEY_CURENT_USER(略)が登録されました。
その状態で処理を行うと、エラーなく正常にASPで処理できたんですが、今度はIUSR(略)でログイン
している状態でないと処理できなくなってしまいました(!)
これでは何となく怖すぎます。
何が原因なのか、回避策は何なのか、なんでも結構です!
お願いです、誰か・・・何か知恵を貸して下さい・・・
0027nobodyさん
03/08/19 18:08ID:3+CrjX8nオマンコは小ぶりながらもビラビラ大きめで相当使い込んでいる様子!
オッパイの方も手ごろな大きさで揉み応えありそうですよ。
ローターで喘ぎまくっちゃうところなんか感度よすぎ!
無料ムービーをどうぞ。
http://www.pinkschool.com/
0028nobodyさん
03/08/26 14:46ID:???今から勉強だー
1から勉強するのにどっかいいサイトない?
0029nobodyさん
03/08/26 20:41ID:???http://www.f-store.net/asp/home.asp
0030nobodyさん
03/08/27 21:04ID:???メモリーブロックに保存できるDLLってありませんか?
APIのMoveMemoryで取り出して使いたいのです。
ファイル保存するDLLならいくつかあるのですが・・。
最終的にCOM化してIISのBinaryWriteでアクセスカウンターの画像を
サーバー上で生成してサイトに表示するのが目的です。
一旦ファイル化してメモリーに読み込む方法だと
効率が悪そうなので。
宜しくお願いします。
0031nobodyさん
03/08/30 13:32ID:eHSdLLE5MSのグループボードって使い心地どうなんでしょう?
レポが乗ってるところとかあれば教えてください。
ファイルがASPなのでカスタマイズも楽?
0032nobodyさん
03/08/31 16:32ID:fbVifHnZ111-2222-3333という文字列(電話番号)があった場合、
11122223333という文字に変換したいのですが
どのようにすればよいのでしょうか?
-以外の文字を切り出すという方法ができるのでしょうか?
よろしくお願いします。
0035nobodyさん
03/09/01 10:39ID:i6fglpHK次スレは
ASP.NET & ASP
という感じの名前にしてほしい。
0037nobodyさん
03/09/05 17:10ID:xFE7E2zj0038nobodyさん
03/09/06 00:12ID:???0039nobodyさん
03/09/06 02:05ID:???ASP.NETのスレあるんだけど。
【質問】 ASP.NETスレ 【議論】
http://pc2.2ch.net/test/read.cgi/php/1040698263/
0040nobodyさん
03/09/09 17:07ID:FCtLlmHxhttp://www.microsoft.com/windows2000/ja/server/iis/default.asp?url=/windows2000/ja/server/iis/htm/asp/vbob12d0.htm
LocalArray = Session("StoredArray")
ここで型が一致しません。とのエラーが出ます。
option explicitを指定していますので
dim LocalArray()
redim LocalArray(5)
を追加しています。
おそらく、サンプルは動くのでしょうが、配列で宣言しちゃうといけないのでしょうか・・・?
004140
03/09/09 17:17ID:FCtLlmHxdim LocalArray
しかし配列で宣言するとアウトなのはなぜ・・
00421 ◆ExGQrDul2E
03/09/09 18:58ID:???Sessionはコレクション型なので配列に値を格納するにはFor eachを使う。
しかし、バリアント型にセッションをまるごと代入しているのは正解。
配列にセッション変数を格納しなおしたい場合はやはりFor each。
セッションの中身は
Session("StoredArray")(1)
Session("StoredArray")(2)
・・・・・・・・・・・・
Session("StoredArray")(n)
というコレクション。
004340
03/09/10 09:16ID:???むぅ。そうだったんですか。sessionに対する私の理解が浅かったようです。
どうもありがとうございました。
0044nobodyさん
03/09/10 20:41ID:ul5oXn2y発生しました。
Microsoft VBScript コンパイル エラー エラー '800a0400'
ステートメントがありません。
*.asp, 行 31
With Request
又は、
Microsoft VBScript コンパイル エラー エラー '800a0400'
ステートメントがありません。
*.asp, 行 49
With objCon
^
考えられる理由は何かありますでしょうか?
script language="vbscript" runat="server"
にすれば、特に問題ないはずですよね。。
004544
03/09/10 20:54ID:ul5oXn2yOption Explicitの位置を疑ったのですが、
改善されず。お手上げ状態です。
誰か助けて。
<%@Language="VBScript"%>
<%Option Explicit%>
0046nobodyさん
03/09/10 22:43ID:TsxxLFGm0047nobodyさん
03/09/10 23:03ID:???http://www.microsoft.com/downloads/details.aspx?FamilyId=C717D943-7E4B-4622-86EB-95A22B832CAA&displaylang=ja
http://www.microsoft.com/downloads/details.aspx?FamilyId=0A8A18F6-249C-4A72-BFCF-FC6AF26DC390&displaylang=ja
004844
03/09/11 09:25ID:???VBScriptのVersionは一致してないです。
IE5かWindows scriptのパッチを入れさせる事を提案してみたいと思います。
ありがとうございました。
0049nobodyさん
03/09/13 03:12ID:pcMGaa/e<環境>
Window2000 Server SP4
2台(ドメイン設定なし、ワークグループ)
※便宜上片方をA、片方をBとする
1)AのマシンのIISにてWEBサイトを構築し、ASPを配置
2)Bのマシンに共有フォルダを作成し、画像ファイルを保存
3)AのマシンのASP内でOCXを使用して、2)で保存したBマシン
の画像ファイルにアクセス・・・でエラーが発生
<エラー内容>
TESTOCX (0x800A03EB)
Failed to open file \\hostname\image\001 for reading.
System error message was 'An unknown error occurred while accessing
\\hostname\image\001.'
/test/Default.asp, line 20
ローカルディスクを触るようにすればエラーは起きないです。
(サービスパックを適用する前は動いていたような気もしています)
どなたかご存知であればお知恵を拝借したいです。
0050nobodyさん
03/09/13 18:49ID:???とりあえずBの共有とNTFSのアクセス権を確認しろ
0051nobodyさん
03/09/13 22:16ID:???net use * \\hostname\image
0053◇ ◆ZG8T77hntw
03/09/19 19:04ID:S+hh+T/0データ量は12万レコード/年になるのですが耐えられるでしょうか。
フィールドは16個で、全てテキスト10文字以内です。
教えて下さい。
0054nobodyさん
03/09/19 19:42ID:???だいじょうぶ。
それに、
For i=1 to 120000
rs.AddNew
rs.Fields("〜")="String"
rs.Fields("*")="String2"
・・・
rs.UpDate
if EndFlg=1 then End
DoEvents
Next
とすれば簡単に12万レコードの実験用データベースが作れるじゃん
0056nobodyさん
03/09/20 20:50ID:E7R77dc70057nobodyさん
03/09/20 22:06ID:NCfIEGUjASPでAccess使うやつは糞。
検索すれ
0058nobodyさん
03/09/21 20:18ID:???0059nobodyさん
03/09/22 16:24ID:mq74zNS4ASPでサーバー内の「WEBから参照できないフォルダ」にあるローカルファイルをWEB上で表示させるやり方を教えて下さい。
以下のやり方でやると
<% @Language=JScript %>
<%
var fs = new ActiveXObject("Scripting.FileSystemObject");
var gazo = fs.GetFile("c:\\A.jpg");
%>
<img src="<%= gazo %>" width="80" height="60">
イメージタグのソースが「img src = "C:\A.jpg"」となって失敗してしまいます。
どうしても出来ない場合の妥協案として、
ローカルフォルダからWEB用フォルダに画像をコピーする方法も考えています。
でも負荷を最小にしたいので、できればこの方法は避けたいです。
どなたか解決方法を教えて下さい。
0060nobodyさん
03/09/22 17:29ID:???http://www.kawabata.ksi.ne.jp/view/Default.asp?a=printable
こういうやつ?
0061nobodyさん
03/09/22 17:43ID:???あ お
い え
う→う
え い
お あ
Order By 〜 Desc
0062nobodyさん
03/09/23 08:08ID:???ASP.NETをテキストエディタで作るのはちょっとたいへん。
006359
03/09/23 09:17ID:vZ9KuNZyあ、多分こうゆうやつです。
早速試してみます。ありがとうございます。
0064nobodyさん
03/09/23 09:19ID:???1次元配列ならクイックソート使え
http://tuka.s12.xrea.com/index.xcg?page=VBS#p16
0065nobodyさん
03/09/23 09:42ID:???Webから参照できないフォルダの画像にどうやってWebからアクセスさせるか?
と、
ブラウザは、HTMLを解釈してどうやって画像を表示するのか?
を勉強しる!
ちなみに負荷を考えたら、Web用フォルダに画像をコピーするのがベストです。
006661
03/09/23 10:17ID:???あるフォルダに入っているファイルを名前順の反対の順にならべてブラウザに表示したいのだ。
zabc.jpg
ggie.jpg
abcd.jpg
みたいな順に。
006764
03/09/23 16:11ID:???ん?entryに好きなように入れるだけだが。
Const FilesMax = 1024
Dim entry()
ReDim entry(FilesMax - 1)
If fs.GetFolder(ToaruFolder).Files.Count > FilesMax Then Response.End
i = 0
For Each f In fs.GetFolder(ToaruFolder).Files
entry(i) = f.Name
i = i + 1
Next
ReDim Preserve entry(i - 1)
あとはソート結果を逆順にするだけだが別に難しくは無いだろ。
#最初"CMD /C DIR /B /O:-N"の結果を取ろうとしてハマったのは秘密。
#安全な風穴の開け方忘れた。
0068nobodyさん
03/09/23 16:53ID:???もし使えるのならだけど。
006961
03/09/23 20:49ID:mPWiGpi6ちょっとおれにはむりだなぁ。アルゴリズムをつかって降順から昇順にするのに骨がおれそうだ。
>>68
BASPはEUCコードをシフトジスに変換したり、メール送信などに使用してる。
ファイル名を昇順にするメソッドがあるというのならBASPのメソッド一覧をこれから調べてみる。
0070nobodyさん
03/10/07 17:30ID:mQzhPkOR突然動かなくなりました。include virtualで解決するのはわかったのですが、
何もしていないはずなのになぜこうなったのか、わからないので、
もしかしたらwindows updateによって仕様変更になったのかと思ったのですが、どなたか詳しいかたいらっしゃいませんか?
enableparentpathの設定を1にすると動くらしいのですが、レジストリに書き込んで再起動しても、
同じ症状のままです。仕様変更で無視するようになったのでしょうか?
あとなぜかaspの設定がかかれているレジストリのパスには設定が何一つありませんでした。
これは正常ですか?
0071奈々氏
03/10/08 14:59ID:aKwR4NNQネットワーク内のマシンによって、Workbook.Open(filename)で止まるという意味不明な状態になってるんですが、
誰かわからないでしょうか?
IISのログには、Lockかけに逝って500エラー・・と解析すらできず・・・
再現できなくてほとほと困っております、、、
0072nobodyさん
03/10/09 02:03ID:???状況も環境もさっぱりわかりません。
念のため聞くけど、クライアントでExcel開こうとしてる話じゃないよな。
0073nobodyさん
03/10/09 16:09ID:???ASPってクライアントのブラウザに依存するの?
VBSで書いたらIE以外ダメとか...JSならNNとかでもOKよとか...
処理するのはサーバ側なんだから、クライアントの環境には依存しないようにも思うんだけど。
サーバから出されるHTMLの中に、VBSとかJSが含まれてたらアウトなのかな?
VBSとかJSを含まないHTMLを出すように作れば、ブラウザには依存しないのかな?
勘違いがあるかも知れないけど、良く分からないのよ。
0074nobodyさん
03/10/09 22:49ID:???概ね合ってる。自信を持つよろし。
Webアプリの場合はサーバとクライアントがひとつのマシンって時もあるが、それはさておき。
クライアント側からすればサーバはクライアントに文字を吐き出すだけ。
71が混乱しているのを見ての関連か?ウチも72の解説の通りとおもっているが。共有フォルダに置いたファイルロックと同じく。
0075nobodyさん
03/10/23 01:54ID:???0076nobodyさん
03/10/23 11:11ID:???普通の文字→URL文字→また普通の文字に戻したい
0077nobodyさん
03/10/23 11:17ID:???0079nobodyさん
03/10/23 16:02ID:???BASP21のBase64メソッドでいけたはず。
0080nobodyさん
03/10/23 17:34ID:ZxwBrBeZたしか途中までの実行結果を表示するオプションがサーバにあったはずなのですが、
度忘れしてしまいました。調べてもなかなかわからず・・・。
どなたかどこをチェックすればよかったのかおしえていただけないでしょうか・・・。
0082nobodyさん
03/10/24 06:39ID:S5VfjmM4には、どうしたらよいのでしょうか?
0083nobodyさん
03/10/26 23:12ID:???ASPやっている人って自分も含めて変わってるのかな…
0084nobodyさん
03/10/28 01:39ID:nuUB90lgブラウザからの条件指定によって、サーバで[タイムスタンプ].csv
というCSVファイルを作成し
そのCSVをwindow.openで別ウィンドウに表示(またはDL)させています。
で、表示も保存もできるようにはなったのですが
このときサーバに作成されたCSVを消すタイミングがありません。
とりあえずサーバ側の定期タスクで一定時間を過ぎたら
消すようにしてあるのですが、できれば表示が済んだら消したいのです。
どういう手を使ったらいいでしょうか?
0085nobodyさん
03/10/28 02:02ID:???2. window.open で 1 のASPを開く
以上
008684
03/10/28 04:01ID:???素早いレス、どうもありがとうございました。
そうか、バッファにreadallしてから削除しちゃって
そのあとoctet-streamでresponse.writeするんですね。
助かりました、納得です。
どうもありがとうございました。
008784
03/10/28 04:17ID:???仕方ないですよね、、、これは目をつぶってもらうことにします
0088nobodyさん
03/10/28 08:37ID:???Response.AddHeader("content-dispositioin", "attachment; filename=newfile.txt")
とかすると変えることできる>保存ファイル名
0089nobodyさん
03/10/28 17:14ID:???0092nobodyさん
03/10/28 21:58ID:???> サーバから出されるHTMLの中に、VBSとかJSが含まれてたらアウトなのかな?
> VBSとかJSを含まないHTMLを出すように作れば、ブラウザには依存しないのかな?
その通り。
0093nobodyさん
03/10/29 02:06ID:???<form action="xxxx.asp" method="POST">
<select>
<option value="1">男</option>
<option value="2">女</option>
</select>
</form>
これでASPに渡せるよ。method="GET"でもOK。
0095nobodyさん
03/10/29 20:52ID:???0096nobodyさん
03/10/30 01:15ID:???0097nobodyさん
03/10/30 07:06ID:???Do while not rs.eof
response.write rs.fields("データベースフィールド名") & "<br>" & vbcrlf
rs.movenext
loop
0098nobodyさん
03/10/30 10:16ID:itOyI7rKresponse.write w
loop
0099nobodyさん
03/10/30 23:38ID:cHHtY1rkFunctionでは900になってしまうのですが、
どうにかならないでしょうか?
よろしくお願いします。
0100nobodyさん
03/10/31 00:59ID:???Function baka(a)
Response.Write a
End Function
Call baka("0900")
間違いなく 0900 が表示される
0101nobodyさん
03/11/01 02:40ID:???0102nobodyさん
03/11/07 22:37ID:???でもページ間のデータのやりとりとかネットでプログラムするにはやっぱASPがやりやすい?
0103nobodyさん
03/11/08 10:40ID:???ASPにもVBみたいの欲しいよ。
0105nobodyさん
03/11/10 14:40ID:mrzVsePbSessionIDはタイムアウトするか明示的に破棄するまでは同じ番号が帰ってくると思うのですが、
Windows2000Professionalで動かしているIISの1台のマシンでのみ、アンカーで遷移しただけで
SessionIDが変わってしまうと言う現象が発生しています。
SessionIDが変わってしまうため、セッション変数が利用できない状況になっています。
一度そのマシンでIIS付属のSMTP Serviceを停止したところ、
SessionIDが変わらないようになったのですが、
場所をかえて(お客さんの元に返却した)やってみると、
またSessionIDが変わってしまい、Session変数を利用することができなくなっています。
このような症状に出会った方はいませんか?
なにか解決方法をご存知の方はいませんか?
お願いします。
0106nobodyさん
03/11/11 01:44ID:???0108nobody
03/11/11 10:55ID:???は
>>106
で教えていただいた通り、ホスト名から_(アンダースコア)を外したら、
上手くいくようになりました。
ありがとうございます。>>>106
0109106
03/11/12 01:52ID:???だから毎回新規のSessionになってしまうんだね。
0110nobodyさん
03/11/12 19:42ID:???まとめるにはどのようにすればよろしいのでせうか?
0111nobodyさん
03/11/12 20:02ID:???Include
Server.Execute
Server.Transfer
の3つがちょっとずつ機能が違うが役立つ。
<%
Server.Execute "別ファイル.asp"
%>
0112nobodyさん
03/11/12 20:27ID:???0113nobodyさん
03/11/16 10:31ID:WNn9sDOIbasp21のFormSaveAsでファイルをクライアントがサーバにアップするシステムを
開発してるんです。
でも、ローカルで動かすとうまくいくのに、サーバにシステムをアップして
動かすと-3のエラーがでる。
サーバの設定かなと思っていろいろ許可だしたんだけどダメで・・・(TT)
検索しても出てこないんですよ。
誰か分かる方、ご教授ください。
0114nobodyさん
03/11/16 21:13ID:???フォルダに書き込み許可を出してもファイルが書き込めないなら
ファイルサイズが大きいためかもしれない。
ASP.NETならweb.configに文を追加すれば2GBまでのファイルをアップできる。
0117nobodyさん
03/11/19 05:19ID:2dbp2liaそのフォルダのセキュリティタブをチェックしたら
0118nobodyさん
03/11/19 14:03ID:???0119nobodyさん
03/11/20 11:34ID:1fBaEcGc以前に見つけたサイトなんですが、ASPに特殊なキーワードを入れて
SQLServerのデータを消すことができる、警告を記したサイトを見つけたんですが、
どこだったか忘れてしまいました。
どなたかご存知のかた教えていただけないでしょうか。
内容は=やら,やら特殊文字を入れてデータを消すSQL文を意図的に作り出す方法のものです。
詳しく技術的ないように踏み込んだもので、本を紹介するようなサイトではなかったです。
0120nobodyさん
03/11/20 22:56ID:???特殊なキーワードじゃない、ただのSQL文のチェックミスだろ?
select * from 会員 where password='***' or 1=1 --'
とかで動くようにして会員認証を通すとかそういう奴
0121nobodyさん
03/11/21 00:17ID:4lWveaq4Accessならこんな脆弱性↓が存在してたがSQLサーバは知らないな...
http://www.trusnet.com/advisories/jetshell/jetshell.txt
0122106
03/11/21 00:54ID:???ttp://www.ipa.go.jp/security/awareness/vendor/programming/a02.html
まぁ、Webやるなら ここの記事は一通り目を通しといたほうがいいよ。
ttp://www.ipa.go.jp/security/awareness/vendor/programming/index.html
0123nobodyさん
03/11/21 09:55ID:Z0AFioIsそうです。想像されたとおりです。特殊文字というか'とか=とか英数字と2バイト文字以外のことをいってました。すいません。
>121
と、いうことでサーバー自身の脆弱性のことではありません。申し訳ないです。
>122
僕が当初見たサイトではありませんが。より参考になるサイトでした。ありがとうございました。
0124nobodyさん
03/11/22 00:47ID:???パスワード 【***'; DELETE FROM 会員;】
select * from 会員 where userid='【hogehoge】' and password='***'; DELETE FROM 会員;'
0125nobodyさん
03/11/26 15:15ID:???解放はちゃんとやってくれますか?
0128125
03/11/27 21:56ID:xaibCik1開放されるときにはいくつかの場合があるが、
Session.Abandonメソッドで開放したり、
Session.Timeoutの設定値の時間がたてば開放になるし、
ユーザがASPページを開いているブラウザをすべて閉じたりしてWebアプリを終了すれば開放が起こる。
Sessionに配列は格納できるが、Session配列のうちのある要素の値を変更する場合はまた配列変数にSession配列を格納してから行う必要がある。言ってる意味わかる?
0129nobodyさん
03/11/27 22:14ID:dSOmMqpHこれってそうなの?ブラウザがセッションクッキー廃棄しているだけと思っていたんだけど...
0131125
03/11/27 22:53ID:???0133nobodyさん
03/11/28 08:26ID:???0134125
03/11/28 11:16ID:???dim buff()
buff = split(Session("hoge")(1), ",")
Microsoft VBScript 実行時エラー エラー '800a000d'
型が一致しません。
というエラーが出ます
0135125
03/11/28 11:28ID:???でOK
0136125
03/11/28 11:37ID:???0137nobodyさん
03/11/28 11:49ID:gf6Px9hTApplication変数にコネクトされたデータベースオブジェクトを設定しておきます。
============= init.asp
db = Server.CreateObject(…)
db.Open …
Application.Lock
Set Application( "db" ) = db
Application.UnLock
============= init.asp
他のASPページでApplication変数に設定されたデータベースオブジェクトを利用します。
============= sample.asp
・
・
Set db = Application( "db" )
db.Exec …
・
・
============= sample.asp
今までいちいちASPのページの開始時DBオブジェクトを作ってコネクト
していた時間が省略されパフォーマンスがよくなりそうですが
同時に複数のユーザーがsample.aspを呼び出したとき、
同じDBオブジェクトが利用されて排他は大丈夫でしょうか?
この場合排他がサポートされるかどうかは、Application変数に設定された
オブジェクトのクラス設計に依存するのでしょうか?
0141137
03/11/28 22:39ID:???なんか根本的に間違ってますか?
0142nobodyさん
03/11/30 00:25ID:???0143137
03/11/30 01:00ID:???0144nobodyさん
03/11/30 02:57ID:???ファイルじゃねーんだぞ
0145137
03/11/30 10:57ID:???db.Open …
Application.Lock
Set Application( "db" ) = db
Application( "five" ) = 5
Application.UnLock
上のような初期化処理が一度だけ実行されていた場合
val1 = Application( "five" )
val1 = 10
この時アプリケーション変数"five"は10にはならないですね。
これは5という値をval1にコピーしてるから。
Set db = Application( "db" )
だとアプリケーション内で共有されているオブジェクトへの参照がコピーされます。
ASPページはマルチスレッドで動いているから、各々のタイミングで"db"を操作することになるけど
その際の排他がIIS側でされるのか、オブジェクト側でされるのかが心配です。
本やwebではオブジェクトをApplication変数に入れるといいような書き方がされているのですが
そこからの疑問マルチスレッドの障害については書かれていないです。
根本的に間違っているのなら恥を忍んでお尋ねします。
0146nobodyさん
03/11/30 13:46ID:???そこら辺はブラックボックスだから何のオブジェクトかにもよるんじゃない?ぶっちゃけ作りこみ次第。
基本的には(ASPで利用される)オブジェクト側はマルチスレッドを意識して作成される事が前提。それでIISが適当なプロセスに振りそれが排他制御する。
でも今回の件は排他制御がメインではなくてコネクションプーリングしようとしてるんだよね。
oo4oならOracleのサンプルでもその記述はあるらしいので参照を保持しておいて必要に応じて渡すのは推奨パターンなのかなと思う。(DB側がその責任を持っている)
ADOならそこら辺を省く事で代わりにやってくれるのでページ毎に切るのがセオリー。(OLEDB側が持っている)
0147146
03/11/30 14:04ID:???0148nobodyさん
03/11/30 16:58ID:???dim conn
dim rs
dim SQL as string
conn=Server.CreateObject("ADODB.Connection")
conn.open("DATABASE","ID","PASS")
rs=Server.CreateObject("ADODB.Recordset")
SQL="Select * from TABLE"
rs.open(SQL,conn,3,3)'←ここをSQL,conn,3,2にすると排他ロックをかけられるから他のASPスクリプトはSQL文で開いたレコードセットをいじれなくなるぞ
rs.close
conn.close
0149137
03/11/30 19:24ID:???聞きたかったことはApplication変数に設定されたオブジェクトの排他はクラス側で責任をとるのか?
ということです。
最初の質問でデータベースオブジェクトとパフォーマンスを例に出して話をしたのが混乱のモトでした。
146氏の
>そこら辺はブラックボックスだから何のオブジェクトかにもよるんじゃない?ぶっちゃけ作りこみ次第。
>基本的には(ASPで利用される)オブジェクト側はマルチスレッドを意識して作成される事が前提。それでIISが適当なプロセスに振りそれが排他制御する。
で疑問は晴れました。
やっぱりクラスの設計依存なのですね。
0152nobodyさん
03/12/01 00:44ID:???つかデバッガ何使ってますか?
0153nobodyさん
03/12/01 00:53ID:???スクリプトデバッガは必要ありません
0154nobodyさん
03/12/01 10:17ID:EoM7ZtDv手元の本によるとApplication変数にはlock unlockメソッドがあるらしい。
手元の本によるとApplication変数に比べSession変数は排他処理を必要としないらしい。
手元の本によるとSession変数はIISが自動的にフリースレッドに割り当てるのはらしい
手元の本によるとSession変数にDBのオブジェクトなどCOMを入れるのはパフォーマンス最悪らしい。
0155nobodyさん
03/12/01 10:19ID:???Application変数ではファイルの書き込みなどを行う場合は先ほどのメソッドを使って排他処理が必要らしい。
0156nobodyさん
03/12/01 12:49ID:V4LfYitAどっちが正解?
0157
03/12/02 12:48ID:JqvndUVsメッセージボックスをjava scriptで出力して、
そのyes/noの値をASP側に通知する方法って
あるでしょうか?
0158nobodyさん
03/12/02 23:50ID:???これないとエラー処理とかつらい。try catch でもいいけど。
0159nobodyさん
03/12/03 01:49ID:???If Err Then
' エラー処理
End If
On Error Goto 0
0160nobodyさん
03/12/06 02:03ID:0fSWmf5e<%
Set DBadb = Server.CreateObject("ADODB.Connection")
DBadb.Open "Provider=SQLOLEDB;Data Source=(local);" & _
"Database=x;User ID=y;Password=z;"
StrSQL = "select a from b"
Set RS = Server.CreateObject("ADODB.Recordset")
RS.Open StrSQL, DBadb
If f((Rs(0)) Then
・・・
Else
・・・
End If
RS.Close
%>
と書いて、a.aspを
<%
Function f(p)
If p = ・・・ Then
f = True
Else
f = False
End If
End Function
%>
としたら型が一致しません f とのエラーがでます。
これってincludeの前に#が抜けているからというだけですか?
0163160
03/12/06 11:13ID:???たぶん#で大ジョブだと思います。
0164nobodyさん
03/12/06 12:55ID:???0165160
03/12/06 15:26ID:???コペピ失敗したかな?
あー#じゃないとだめってこと?
0166nobodyさん
03/12/07 14:38ID:kFUiBXXgWinXP Proに移植した途端に、DBのopen命令あたりで1日に数度
落ちるようになった。(設定上は、両OSともまったく同一)
これってM$ Access driverのバグなの? WinXPになってから使いづらいんだけどさ
0167nobodyさん
03/12/12 09:17ID:???<input type=checkbox name=hoge value="aaa,bbb,ccc">
のようにvalueで複数の値を渡したい場合はどのようにしたらよいでしょうか?
例えば"bbb"という値は"bb,b"のような値の場合があるかもしれません。
とりあえずタブ区切りにしようかと思ったのですが
タブ区切りって大丈夫でしょうか?
一応テストしてみるとできるみたいですが・・・心配です。
0168nobodyさん
03/12/16 08:57ID:???Set hoge = new class_hoge
Set Session("hoge") = hoge
でいいですか?
てか、ここ誰もいない?
0169nobodyさん
03/12/16 09:51ID:???0170nobodyさん
03/12/16 10:27ID:???0171nobodyさん
03/12/18 17:43ID:???Dim fs, text, line
Set fs = CreateObject("Scripting.FileSystemObject")
Set text = fs.OpenTextFile(DATA_FILE,1,False)
Application.lock
While Not text.AtEndOfLine
line = Split(text.ReadLine, "=")
Application(Trim(line(0))) = Trim(line(1))
Wend
Application.unlock
てな、処理で設定ファイルの情報を、アプリケーション変数に入れたいのですが、、、
ずーーっと帰ってきません、OpenTextFileで止まってるようです
何か思い当たる節はないかね?
0172nobodyさん
03/12/18 17:46ID:9XJ+NVcVしまったファイル名をほげほげしたかったのに(-.-)
0174nobodyさん
03/12/18 19:14ID:???ヽ(・ω・)/ ズコー
\( \ ノ
0175nobodyさん
03/12/19 09:21ID:???誰かが勝手に入れるだけでも気づかないかも
0176nobodyさん
03/12/19 16:08ID:???0177nobodyさん
03/12/22 09:43ID:???0178nobodyさん
03/12/22 22:18ID:2e9pemvT0179nobodyさん
03/12/24 18:09ID:???commandオブジェクトを使って、パラメータをセットするとできるんでしょうか?
ストアドプロシジャーを作成してそこに引数を渡すさいも、
commandオブジェクトを使ってパラメータを渡さないとバインドしないんでしょうか?
VBSでSQL文を作ってrs.Openするとバインドは使っていないんでしょうか?
0180179
03/12/25 16:21ID:???0181nobodyさん
04/01/04 04:44ID:???0182nobodyさん
04/01/05 15:09ID:1VBcX5pvIIS6.0+MS SOLServer2000 SP4に移行したんでつが
どうしても、動かないASPが1個だけあるんです。
SQLServerに、IDを渡して、対応したオブジェクト(バイナリデータ)を
ダウンロードさせるASPであろうと思うんですが
ブラウザから、/download.asp?file_name=123みたいにして
アクセスすると、保存ダイアログでてバイナリのファイル名はでるんですけど
ファイルの種類が空欄になって、保存ボタン押すと、ダウンロードできません
ってでるんです
漏れ、ASPわからないし、作った香具師いないし・・・。
コードは、何もいじってないので、なんか設定とかが違うとおもうんですが
こころあたりないですか?
他のDBから文字をもってくるASPは動いてるんだけどなー
0183182
04/01/05 18:04ID:???Sessionの値を忘れてるみたいなんでつ。
timeoutとか何も設定してないんですけど
IISとかの設定とか間違うと勝手に消えちゃうんですかね。
0184nobodyさん
04/01/05 20:06ID:???念のため聞くが同じWebサーバ内の話だよな?
あと例えばchinko.co.jpってドメイン内のクライアントからhttp://webserver1.chinko.co.jp/ってアクセスするのと
http://webserver1/でアクセスするのとでセッションは別になったような気がする。あんまり自信ないけど。
0185nobodyさん
04/01/05 21:28ID:???PHPのaddslashes関数と同じ動作をさせるには、どうすればいいのでしょうか?
≪参考までに、PHPのマニュアルから引用:addslashes関数≫
データベースへの問い合わせなどに際してクォートされるべき 文字の前にバックスラッシュを挿入した文字列を返します。
クォート されるべき文字とは、シングルクォート('), ダブルクォート("),バックスラッシュ (\) ,NUL (NULL バイト) です。
0186nobodyさん
04/01/05 21:35ID:PXoQ1Cnf0187182
04/01/06 10:37ID:???違うサーバでした。
IIS6.0のほうで動かなかったので、その部分だけIIS4.0で動かしてました
仮想ディレクトリに共有フォルダ追加すればいけそうですけど
根本的な解決になってないような・・・
結局Sessionじゃなかったのかな。
0189nobodyさん
04/01/13 09:49ID:???0190nobodyさん
04/01/14 00:45ID:???0191nobodyさん
04/01/14 09:43ID:TTVYhpa8携帯用のページをASPで作っていて、indexで自動的にi、ez、voda用のページをそれぞれ表示させたいんです。
vodaの端末でアクセスした時のHTTP_USER_AGENTは何と表示されるのでしょうか?
また、端末判別をする為の文字列は、J-SKY時代の物もvodaになってから販売された物と同じ文字列でいいのでしょうか?
実機がないのでスイマセン。
0193nobodyさん
04/01/15 18:55ID:47dbbmge連動する二つのプルダウンメニューを作りたいのですが上手く出来ません
ネットで調べましたが配列に格納するタイプでそれぞれ3件9件程のものでした
都道府県を選ぶとそれに連動する市町村
あるいは
銀行を選ぶとそれに連動する支店が選べるようにしたいのです
データベースを使った良いサンプルなどありましたら教えていただけますか
0194nobodyさん
04/01/15 19:55ID:???どう考えてもASPじゃないだろ?
プルダウンで選んだ(変更した)ときに別のプルダウンのリストの内容を変えるわけだろ?
プルダウンで選んで、サブミットして、別なプルダウンを表示するわけじゃあるまい。
変更時に動くJavascriptを吐けば
0195nobodyさん
04/01/18 14:23ID:IZ5B3j5lIf right(id,1) <> 0 then id else id + 1 end if
VBScoriptで、右から1番目が0でないとき、02057111 を返し、
それ以外は、02057111に+1した02057112を返すとしたいのですが、
構文エラーとなってしまいます。
どのように書いたらよいのでしょうか?
基本的なことで大変恐縮ですがどなたかご教授ねがいます。
0196nobodyさん
04/01/18 21:52ID:6XmSqOOaIf right(id, 1) <> 0 then
Test = id
Else
Test1 = id + 1
End If
End Function
ネタだと思われるが、マジレスしてみる。
0197?^?[?`????
04/01/18 22:35ID:???参加の方法をじっくり読む時間がありませんので、まずはテストさせて頂きます。
私は学生で今オンラインショップを研究中。HTMLとかを家やっています。
Gデザインが専門なので、サイトのラフ絵はもう創りました。
そこにショッピングカートを各ページに入れますけど、ここからが問題。
問題をかかせてもらう前に、この書いてるものがちゃんとアップするのか分からないので
まずはここで終わります。
解決法をお手数ですがどうぞ真面目に宜しくお願いします。
次回続きます。
0199?^?[?`????
04/01/19 00:18ID:???私の問題を書く所はここでいいのかもわかりません。
効率的にいきたいので、続けていいでしょうか?
0201?^?[?`????
04/01/19 00:20ID:???"02057111" + 1 = "020571111"になるよ。
」って、私に話をしてるのですか????
もし、そうでしてら意味がわかりません。
0202nobodyさん
04/01/19 00:24ID:???0203nobodyさん
04/01/19 00:27ID:???まず自分の名前が激しく文字化けしてるのに気付いてる?
それから、ASPに関係のある質問ならこのスレッドで問題ないんだけど
複数のQ&Aが同時進行してるんだから、全部が貴方へのレスではない。
例えば200は「>195じゃないけど」と書いてあるように、
195-196-198-200、という流れの中にある。
ということで質問どぞー。
0204?^?[?`????
04/01/19 00:31ID:???なんだかここは私のいる所ではないようです。
私は今レンタルサーバーとショッピングカート(CGI)を研究中。
こんな私はどこへ移動すれば、私の問題を解決できると思いますか?
是非まじめにお答えください。
0205nobodyさん
04/01/19 00:34ID:???ページを取得して、その一部を書き換えてクライアントに渡すという、
プロキシめいた?ことをやりたいのですが、どういったコンポーネントを
使えば可能でしょうか?(できれば、フリー/製品問わず、明示的にインストールが
必要なものは避けたいです。というのも、環境の管理が自分のところではないもので)
具体的には、郵政公社の郵便番号検索サービスに関して、
・ユーザーが別ウインドウで入力した住所etc.を自動的に検索条件のテキストボックスに
入れる
・返ってきた検索結果ページにボタンを付加するなどして、別ウインドウに結果を
取り込めるようにする
ということをしたいのですが……
0206nobodyさん
04/01/19 00:35ID:???CGIですとこのスレッドの趣旨とは違いますね。
△▲ WebProg 初心者の質問 Part7 ▼▽
http://pc2.2ch.net/test/read.cgi/php/1073460282/
か
CGI: Common Gateway Interface part 11
http://pc2.2ch.net/test/read.cgi/php/1055597189/
のスレッドではどうでしょう?
0207?^?[?`????
04/01/19 00:36ID:???以上の難しい数字みたいのは、私のではなかったのですね。
是非質問をさせて頂きますが、今日は遅いので眠ります。
またよければ、来てください。
みなさん、お休みなさい。
0208nobodyさん
04/01/19 00:59ID:???0209nobodyさん
04/01/19 01:01ID:???そもそも何もインストールしないでやりたい、というところに無理があるが
MSXMLが入っている環境ならXMLHTTPでWebから取得できる「かも」知れないね。
0210nobodyさん
04/01/20 05:04ID:???0211nobodyさん
04/01/20 22:50ID:???亀ですがどうもです。
あとADODB.Streamで無理矢理……ってのも考えましたが
手に余りそうなので止めますた(´・ω・`)
とりあえず郵政公社のデータ落としてきてローカルのDBに放り込むことにします。
……ユーザーさん更新してくれるかなー > データ
0212nobodyさん
04/01/21 15:26ID:???必要な郵便番号が変われば更新してくれるでしょう?
べつに追加されようが無くなろうがそれが使わない郵便番号なら更新する必要もあるまい
それは兎も角、これから大合併でいっぱい変わるんだろうな
0213nobodyさん
04/01/21 22:25ID:???VBScript ver5から一応クラスが作れるようになってますよね?
.NETじゃないASPで、(COMコンポーネントでない)クラス作ってる方っています?
(Sessionに入れて持ち回せるわけでなし、何に使うんだと言われると困りますが……)
0214nobodyさん
04/01/22 23:55ID:QY3KlghZ<input type="text" value="" name="hoge">
受け取った時文字をはじくにはどうしたらいいんでしょうか
If TypeName(Request.Form("hoge")) <> "string" Then '文字列じゃなかったら
Response.Write "ok"
Else '文字列だったら
Response.Write "dame"
End If
と組み込む前に試しにつくったのですがダメでした。
誰かご存知でしたら教えてください。
0215nobodyさん
04/01/23 00:34ID:???http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/script56/html/vsfctisnumeric.asp
0216214
04/01/23 01:25ID:???0217213
04/01/23 22:59ID:???あーでもないこーでもないと頭ひねってやっとこさえたクラスが
ぜんっぜん使えないに等しいと分かったときの空しさと言ったら……
ああ、ASPなんか止めてCGIで作りてぇ。
0218nobodyさん
04/01/25 16:34ID:KX9usoWV可能でしょうか?
0221安室波平
04/01/25 23:03ID:???<form action="dokka.asp" onSubmit="if (isNaN(document.form1.text1.value)) {alert('数字入れろゴルァ!');return false;}">
0222218
04/01/26 00:02ID:h20y0KQpまさに求めていた以上のものです!
ありがとうございます><
0223nobodyさん
04/01/27 00:39ID:???J2EEやりたい……そこまでいかなくてもStrutsとか憧れる……
VBScriptはもー嫌だぁぁぁぁ
0224nobodyさん
04/01/27 02:12ID:???0225nobodyさん
04/01/27 08:03ID:???漏れは言語の好みだけ言えばJScript>>>>(越えられない壁)>>>>VBScriptなんだけど
ASPはVBScriptが常識!!っぽい雰囲気があって……
ITNAVIに一件、JScriptでASPなサイトのリンクがあるのは知ってるんだけど。
0226nobodyさん
04/01/27 11:14ID:???VBSのサンプルはメソッドとプロパティの区別が付きづらいからキライ
0227nobodyさん
04/01/28 00:26ID:???厨でスマンけど、JScriptもMSILにコンパイルされるの?
だったらなんかいい感じだなぁ……(イミフメ
0229"名前欄"
04/01/28 17:58ID:???0230k
04/01/28 22:13ID:edLBAMSuEXCELのWorkSheet_Changeイベントに関し、EXCELのモジュールに下記のようなソースが記載されたマクロブックがあります。
このソースはSQLサーバーからのデータを4列目、5列目に表示するものです。
このマクロブックからマクロを除き、フォームだけにしてWeb Server上に掲載し、代わりにASP上で下記のようなWorkSheet_Changeソースでエクセル上の4列目、5列目にSQLサーバーからの値を返したいと思っています。
ASP側で操作するにはどのようなコードになるのでしょうか?
0231nobodyさん
04/01/29 00:52ID:8uLhjXYn内部変換関数つかいなよ。バリアントは怖いよ。
Function Test1(id)
Dim strReturn
If Right(Cstr(id),1) <> "0" then 'StrCompが望ましい罠
strRetrun = id
Else
strReturn = Cstr(Clng(id) + 1)
strReturn = Right("0000000" & strReturn,8)
End If
Test1 = strReturn
End Function
0232213
04/01/31 00:28ID:???お約束さえ守れば使えるじゃねーかClass。
とりあえずカプセル化がすっきり出来るだけでも感動ものですたよ。
ということで、漏れの作ってるサイトにはけったいな拡張子のソースが
うじゃうじゃしていることになりますた。(.aspじゃなんか違う気がしたんで、
クラスファイルは変な拡張子にしてみたのれす)
0233nobodyさん
04/02/01 18:34ID:xZtlTOAY会社の部門イントラDBサーバをASP(JScript)+ADO+MSSQLで構築してしまいました。
4月から異動なのですが誰にも引き継げなくて困っています。
0234nobodyさん
04/02/01 23:12ID:???ASP (ASP.NETじゃなくてレガシーASP) で使えるテンプレートシステムってありますか?
てきとーに変数扱いの文字を埋め込んだテンプレートHTMLを作って、それをReadAllして、
Dictionaryオブジェクトにつっこんだ置換変数群でReplaceする、っていうルーチンは
作ってみたんですが、ループや条件分岐が入るとどうもきれいにできなくてめんどくさい。
すでに何かいいものがあったら教えてほしいです。
0235nobodyさん
04/02/02 00:28ID:7HMb9QmJ@が入ってない時は×にすればいいんですか?
0236nobodyさん
04/02/02 00:58ID:???実用的にはこんなもんでいいでしょ。
http://www.emeditor.com/jp/help/macro/tutorial/tutorial_regexp.htm
0237納豆
04/02/03 18:07ID:???接続に失敗しました。と素っ気ない対応をされます。
何か情報があればおながいします。
ちなみにmdb内のテーブルは参照(更新)可能です。
あと、そんな回りくどいことをするなという突っ込みも勘弁してください。
0238nobodyさん
04/02/04 12:02ID:???考えられるのはユーザー認証くらいじゃないの?データベース接続のユーザが固定に
なってるならいいけどログインユーザを使うようになってたりすると、IISはIUSR_*の
ユーザを使うから・・・
そんな回りくどいことはするな
0240nobodyさん
04/02/05 06:49ID:???カタログという文字を検索する場合、カタログ(全角)でもカタログ(半角)でも
引っかかるようにしたいのですが、どのようにすればよいのでしょうか?
お分かりになる方ご教授をお願いいたします。
0244234
04/02/06 03:05ID:k/1f7yuZパフォーマンスはあんまり考えない方向で。
改良点とかあったらきぼんです。
要basp21(ここではMatchしか使ってないけど)
↓以下次号
0245234
04/02/06 03:06ID:???Option Explicit
Function IncludeRecursive(ByVal strTemplateFile, ByRef dReplaceDictionary, ByRef fso)
Dim f, strLine, strOut, key, bobj, strVar, strReplaceFile
Set f = fso.OpenTextFile(Server.Mappath(strTemplateFile), 1)
set bobj = Application("bobj") 'global.asaでSet Application("bobj") = Server.CreateObject("basp21")やってます
Do While Not f.AtEndOfStream
strLine = f.ReadLine
Do While InStr(strLine, "$") > 0
strVar = bobj.Match("/(\$[^$]+\$)/k", strLine)
If strVar <> "0" Then
If InStr(strVar, ".file$") = 0 Then '$ファイル.file$ 形式なら
strLine = Replace(strLine, strVar, dReplaceDictionary(strVar))
Else
If dReplaceDictionary.Exists(strVar) Then ' $ファイル.file$が未定義ならファイル.tplを読む(おせっかい)
strReplaceFile = dReplaceDictionary(strVar)
Else
strReplaceFile = bobj.Match("/^\$(.+?)\.file\$$/k", strVar) & ".tpl"
End If
strLine = Replace(strLine, strVar, IncludeRecursive(strReplaceFile, dReplaceDictionary, fso))
End If
End If
Loop
strOut = strOut & strLine & vbCrLf
Loop
f.Close
Set f = Nothing
Set bobj = Nothing
IncludeRecursive = strOut
End Function
0246234
04/02/06 03:07ID:???Dim fso, strOut
Set fso = Server.CreateObject("Scripting.FileSystemObject") '再帰でFSOを何度もCreateObjectしないように(意味ある?)
strOut = IncludeRecursive(strTemplateFile, dReplaceDictionary, fso)
Set fso = Nothing
dReplaceDictionary.RemoveAll '使用済み辞書の消去(なんとなく)
Response.Write strOut
End Function
Function ReturnTemplate(ByVal strTemplateFile, ByRef dReplaceDictionary) '戻り値を返すもの ループ処理用とか
Dim fso, strOut
Set fso = Server.CreateObject("Scripting.FileSystemObject")
strOut = IncludeRecursive(strTemplateFile, dReplaceDictionary, fso)
Set fso = Nothing
dReplaceDictionary.RemoveAll
ReturnTemplate = strOut
End Function
こんなラッパーみたいなものいらないような気はするけどなんとなく。
2種類なくても<%= %>で戻り値表示すればいいんだけどなんとなく。
0247234
04/02/06 03:10ID:???Dictionaryオブジェクトに $変数$ ってキーをセット、IncludeTemplateを呼ぶ。
$変数$ はそのまま置換、$変数.file$ ならばファイル内容で置換。
置換ファイルのなかの変数も展開される。
以下サンプル
-- page.asp --
<!-- #include file="func.inc" -->
<%
Dim dReplace
Set dReplace = CreateObject("Scripting.Dictionary")
With dReplace
.Add "$title$", "ページタイトル"
.Add "$header.file$", "header.tpl"
.Add "$msg$", "本文いろいろ<br>長文でも自由に"
.Add "$footer.file$", "footer.tpl"
End With
Call IncludeTemplate("template.tpl", dReplace)
Set dReplace = Nothing
%>
0248234
04/02/06 03:10ID:???<body>
$header.file$
<h1>$title$</h1>
<p>$msg$</p>
$footer.file$
-- header.tpl --
<!DOCTYPE HTML PUBLIC"-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<title>$title$</title>
</html>
-- footer.tpl --
<p>けつに添える決まり文句</p>
</body>
</html>
0249234
04/02/06 03:15ID:???サンプルその2。分岐、ループはこんなかんじでむりやり。
-- table.tpl -- おおもとのテンプレート
$header.file$
<body>
<h1>$headline$</h1>
$content.file$
$footer.file$
-- table_1.tpl -- $content.file$の中身(レコードなかったとき)
<p><img src="hoge.gif">レコードはありません。</p>
-- table_2.tpl -- $content.file$の中身(レコードあったとき)
<table>
<tr>
<th>項目1</th>
<th>項目2</th>
<th>項目3</th>
</tr>
$table_3.loop$
</table>
-- table_3.tpl -- ループ部分
<tr>
<td>$field1$です</td>
<td><a href="hoge.asp?id=$field2$">$field2$</td>
<td>「$field3$」</td>
</tr>
0250234
04/02/06 03:16ID:???<!-- #include file="func.inc" -->
<%
strSql = "SELECT * FROM テーブル"
Set rs = Db.Execute(strSql)
If rs.EOF Then 'SQL投げてなにも返ってこなければ
With dReplace
.Add "$content.file$", "table_1.tpl" 'なにもないよメッセージ
End With
Else 'レコード返ってくれば
Do While Not rs.EOF
With dReplace
.Add "$field1$", Server.HTMLEncode(rs("field1"))
.Add "$field2$", Server.HTMLEncode(rs("field1"))
.Add "$field3$", Server.HTMLEncode(rs("field1"))
End With
strLoop = strLoop & ReturnTemplate("table_3.tpl", dReplace)
rs.MoveNext
Loop
dReplace.Add "$content.file$", "table_2.tpl" 'テーブルあった場合
dReplace.Add "$table_3.loop$", strLoop 'ループ結果を入れる
End If
With dReplace
.Add "$title$", "テーブル一覧"
.Add "$header.file$", "header.tpl"
.Add "$headline$", "テーブル表示サンプル"
.Add "$footer.file$", "footer.tpl"
End With
Call IncludeTemplate("mail_top.tpl", dReplace)
0251234
04/02/06 03:21ID:???SubとFunctionの使い分けしないクセとかもあって失礼。
初心者なのでなんとなく作ってみましたが、こういうのは誰かがもっとマシなの
どっかで作ってるんでしょうね。
0252nobodyさん
04/02/06 03:35ID:???table_3.tplで閉じ</a>がないとか、
なんとなく書いたサンプルなんで変なツッコミどころが多い……
table.aspのDb開いたりするあたりはなんとなく省略。
0253nobodyさん
04/02/09 11:37ID:FDyP722P0254nobodyさん
04/02/11 01:35ID:???見所があるなら(゚Å゚)ホウとか。
どうしようもないんなら(´゚c_,゚` ) プッとか。
アドバイス出来ることがあるなら細かく書いてあげるとか。
ASPを利用してる技術者の皆さんにが推敲してあげれば
便利で汎用的な部品になるかもしれないじゃないですか。
ぼくは毎日仕事の始めにこのスレをチェックし、
そのたびにレスがついてないのを見て
「あぁ、今日もレスついてないのか・・・」
「あ、空ageだ・・・」
と思って心を痛めてきたんです。
お願いだから、誰か役に立つレスをしてあげてください。
オレは読むのメンドイんでパス。
0255nobodyさん
04/02/11 01:43ID:???すまん。251でお前さん自身も書いてるけど、
zipかなんかにまとめてうpろだに上げてくれん?
レガシASPでテンプレートは漏れも欲しいと思ってたんだけど
今気力無くて、コピペすらしんどいんだわ。頼む。
0256nobodyさん
04/02/12 00:15ID:hTvme9QKhoge.htmlにincludeさせたらできますか?
それともどうやっても無理なんでしょうか。
0258234
04/02/13 06:01ID:YLmnZHSDお待たせしました。
あれからだいぶいじったので、少し整理してうぷろだに上げてみました。
http://2ch.cafenet.jp/clip/img/653.zip
いちおう、変数置換・インクルード・ループ処理・式評価の機能があるつもりです。
仕様も実装も完全に思いつきですが、
なにぶん素人がみようみまねで作ってるんで、
見所があるなら(゚Å゚)ホウとか、
どうしようもないんなら(´゚c_,゚` ) プッとか、
アドバイス推敲とか、どしどしおながいします。
サンプルとして、たまたま見かけた
ITmediaエンタープライズ「WebプログラミングPHP言語入門」
http://www.itmedia.co.jp/enterprise/0401/23/epn01_3.html
http://www.itmedia.co.jp/enterprise/0401/23/epn01_4.html
のPHPスクリプトをむりやり移殖してみています。
0259234
04/02/13 06:03ID:???0260nobodyさん
04/02/17 03:30ID:v8l0G8dl0261nobodyさん
04/02/17 03:46ID:wO4OnFg8エーエスピーていうんだよ
0262nobodyさん
04/02/18 00:53ID:???ごめん。ダウソはしたけどまだ全然見てない。
っちゅーか今手持ちの仕事が全焼寸前。火付けたの漏れなんだけど_| ̄|○
0263254
04/02/18 02:46ID:???一応落として読みました。
readmeにも書いてあったけど、いかにも重そうな感じがしました(動かしたわけじゃないけど)。
けど、それよりいい方法があるかって言われると思いつかなかったりする。
汎用性を犠牲にして置換用のキー名は固定し、
キー名=文字列の単純置換をする程度なら実用性はある気はします。
つーか、今の仕事ではそういう仕様で実際に簡易テンプレートとして使ってます。
開発する人が便利に使うテンプレなのか、ユーザにメンテさせる(ユーザに対するインタフェースとしての)
テンプレなのかってのも論点にしなきゃいけないのかなーと思ったり思わなかったりしてます。
少なくとも、開発にとってのみ都合のいいテンプレートであるとしたら、それによって
レスポンスが明らかに落ちる(であろう)事なのに、「開発効率が上がります」じゃ客に言っても
通用しない気もするこの頃。
コードの変更なしにテンプレートをいじるだけで****出来ますよ。という訴求力がないと客は納得してくれない希ガス。
ほろ酔いなので何言ってるか自分でもよくわかんないわけですが、とりあえず言えることは、
ちょっと前に煽り気味のレスつけといて今さらマジレスすることになるとは思わなかった罠。
また気がついたことがあったら書きますよ。当分ASPの現場抜けられそうもないし。
>262
おつかれさまです。ヒマな時にでも先達の貴重な意見を期待しております。
0264nobodyさん
04/02/20 01:34ID:???262っす。
いやー、もう盛大に燃えてるんで火事場はほっといて(ぉぃ)資料集めとか言いつつ
おっことして試してみますた。
速度を見るって意味では九九の表くらいしかやってないんだけど、
まぁまぁじゃないかな。少なくともうちの会社にあるテンプレートと称するものよりは
よい希ガス。(変数置換以外はASPコード残してExecuteするのだわ、これが)
ただ、263=254も言ってる通り、これが利点だ!!ってのがないと提案しにくいかも。
漏れの勤め先はデザイナーさんも抱えてるんで、協業体勢が取れる、ってのを
利点として上にプッシュする材料にはなるけどね。
しかし何かこう、見ててHTML::TemplateとかVelocityみたいのできねーかな……
とか思ってしまう辺り、漏れってコーヒー一杯の注文に鍋で沸かして持っていく
タイプなんだろうかw デモソーナッタラスクリプトジャダメダロナ
あ、クラスのうまい使い方だけど、最近なんとなくコツがつかめてきた気がする。
googleで「VBScript Class」って全言語検索かけるとなかなか巧い例がひっかかるので
一度お試しを。
あ、>263殿、一応P(onkotsu)G(enerator)名乗って5年ほどですが、Webの世界は
まるっきりどしろーとなんで、お互い精進しましょうや。
<a href="dat/hagehage.zip">hage.zip</a>をクリックして参照は許して、
右クリックでURLをコピーしてブラウザのアドレスバーに
http://hogehoge.jp/dat/hagehage.zipと指定してのアクセスはゆるさない。
できればsessionに持っているログイン情報がないとき、REFERERが不正
な時に禁止したいのですが・・・
0266nobodyさん
04/02/20 22:48ID:???答えでてんじゃん。
http://hogehoge/download.asp?dir=dat&file=hagehage.zip
とかでやればいいし。
それより、AccessのMDBってADOからSelectするとき一旦ファイル全てをメモリに入れるんですかね?
それともファイルが論理構造になってて対象テーブルのみメモリに読みだすのかな?
0267nobodyさん
04/02/21 02:09ID:???Sessionって使わない方がいいんでしょうか。
IE以外はクッキーOFFにしたら成立しないし、下手にデータを放り込むと
サーバ資源を圧迫するからどーとか……
UUIDでも自前で生成して、毎回hiddenフィールドに仕込んで
クライアントを識別するとかした方がいいんでしょうか?
ああ、何かもうASPでサイト構築なんてできない気がしてきた……
(ASPでガンガン動いてるサイトが少なからずあることは知ってますけど)
0268nobodyさん
04/02/21 11:24ID:bYLJ5YhwForm(POST)で囲ってhiddenキー埋め込んで、
onclick="javascript:form1.submit();"
をすればIriaだろうが何だろうがブラウザからクリックしないとダウンロードできなくなるよ
0269nobodyさん
04/02/21 12:24ID:???0270267
04/02/21 13:50ID:???ごめん。漏れ<>265っす。
0271nobodyさん
04/02/21 15:51ID:plwAZOQXしまうのでしょうか?
今からASPで何か構築してみようと思うのですが、.NETから始めるべき?
0274nobodyさん
04/02/21 18:46ID:???ただ、
・既にClassic ASP(.NETのつかない昔ながらのASP)で、いくつかWebサイトが動いている
・そこに新たにサイトを構築したい
・マシンの管理の都合で勝手にPHPとかTomcatとか.NET Frameworkも入れられないし、
社員のスキル、納期を考えると未経験の技術は使えない
とかゆーことになると「じゃ今回もClassic ASPでやるしかないか」となることもあるだろう。
つか、今漏れが担当してるのがそのパターン。
何かこんなん、アンチパターンになかったっけ?
0275nobodyさん
04/02/21 21:15ID:???0276nobodyさん
04/02/21 21:32ID:???0277nobodyさん
04/02/21 23:35ID:???ASP.NETでMS推奨のいろいろな機能を使うってのは、
本来は存在しないイベントをむりやりハンドリングする代物が多すぎて気持ち悪い、
って意見はけっこうあるね。
だからシンプルなレガシーASPとかのほうがいいとかなんとか。
シンプルなぶん、大規模開発するにはかなりノウハウが必要だけどな。
0278nobodyさん
04/02/22 01:27ID:???>本来は存在しないイベントをむりやりハンドリングする代物が多すぎて気持ち悪い、
>って意見はけっこうあるね。
しかし、レガシASPで組んでて、
「このページをMe(thisでも$selfでもいいけど)扱いできたらなー……」
って思うことない?ないでつかそうでつか(´・ω・`)
0279nobodyさん
04/02/22 02:11ID:???ほとんどがレガシASP+ADO+BASPで十分
0280nobodyさん
04/02/22 03:39ID:???コンストラクタ(Class_Initialize)って、引数を持てないの?
初期化処理を別にやらなきゃならんなら、コンストラクタの意味がないような・・・
0281nobodyさん
04/02/22 23:39ID:???まぁ、そうでもないよ。ほっといたらフィールドは全部Emptyだし。
Property Get(でもFunctionでもいいけど)の結果を
いちいちIsEmpty()に掛けるって何かカコワルイ希ガス。
それにコンストラクタで余りややこしいことスンナ!!ってのもあるでしょ最近。
0282nobodyさん
04/02/22 23:51ID:???あ、蛇足だけど。
・COMコンポーネントの中にユーザーClassのインスタンスは入れられない
(例えばScripting.Dictionaryに入れるのもダメ。取り出したらプロパティもメソッドも呼べなくなってる。
Session、Applicationも無論同じ)
・逆に、ユーザーClassのメソッドetc.にCOMオブジェクトを渡すのもNG
(例えばRecordsetを渡して、メソッドの中で処理しようとしても、メソッドの中に
入った時点でRecordsetはプロパティもメソッドも呼べないモノになってしまう)
・Classの中に、COMオブジェクトを完全に封じ込めるのは可能
(プロパティの管理に、PerlっぽくScripting.Dictionaryを使うとか。
この場合、外にはDictionaryを直接見せない)
激しくガイシュツとは思うが、参考までに。
すいません。まだ理解していません。
download.aspの中身は、ファイルを読み込んでresponse,writeする処理なのでしょうか?
download.aspの中身は、ファイルを読み込んでresponse,binarywriteする処理なのでしょうか?
面倒なので、リダイレクトでなのとかしたいのですが?
0285nobodyさん
04/02/23 21:24ID:???オレは何か勘違いしてるだろうか。
0286nobodyさん
04/02/23 21:54ID:???確かに直林できる場所にファイルを置くことになるが、
ユーザはそのアドレスを知り得ない。
でもパケットモニタしたらわかっちゃうかも
0287nobodyさん
04/02/23 21:57ID:???0288234
04/02/23 22:18ID:Af0KmrX8http://2ch.cafenet.jp/clip/img/829.zip
不具合を細かく直したほか、クラスにまとめてカプセル化してみました。
これでだいぶすっきりしたと思います。
計測したりしてませんが、重さも思ったほどたいしたことないみたいだし
これぐらいなら汎用で実用になるんじゃないかな?
テンプレート関係の関数とDB操作関係の関数がごちゃまぜに
同じクラスになってるのがかっこわるい気もしますが、
自分の今回の用途としてはこれで便利なので、とりあえずこのまま。
いまさらながらPHPのSmartyの存在を知って資料を眺めてみましたが、
PHPでプリプロセッサを作ってさらにPHPファイルを生成する、って発想は
なかなかおもしろいですね。めちゃめちゃ高機能だし。
でも高機能すぎて参考にならないやって思って他をあたってみると、
PHP4 テンプレートクラスライブラリ改 (http://www.daiwakantei.co.jp/pc/tmpl2sa.html)
ってのはけっこう手ごろなかんじです。方向性がちょっと似てるっぽい?
今回はこれを参考にしてメソッド名を変更しました。
もっと早く知ってたら、いろいろ実装をパクったのになぁ。
余裕があったらASP+VBSで移殖してみたいけど、
尻に火がついてもはやテンプレートライブラリをいじってる場合じゃないんで
ずーっと先に気が向いたら考えます。
0289234
04/02/23 22:54ID:???>漏れの勤め先はデザイナーさんも抱えてるんで、協業体勢が取れる、ってのを
>利点として上にプッシュする材料にはなるけどね。
開発効率向上+保守性向上、ですかねぇ。
今回は、デザイナーさんと2人で組んでの仕事です。
で、これが終わったらわたし退社しちゃう予定なんで、なるべく引き継ぎがらくちんなように、
手順がはっきりするように、作ってみました。
前任者から数年前に引き継いで手を入れてた別のサイトがあるんですが、
もともと素人コードなうえに、素人に毛が生えた程度の自分がいじっちゃって、
山のような仕様変更にその場しのぎを繰り返しまくり、もぉつぎはぎしすぎて
自分以外は読めたもんじゃない……。引き継ぎにめちゃめちゃ苦労しそう……_| ̄|○
こんなにぐちゃぐちゃになる前に、思い切ってどっかで書き直しとけばよかった……。
あとそれは、もともと自前でデザインもやってたものを、あとからデザイン外注するように
なったので、デザイナーさんから届いたHTMLをぐちゃぐちゃ埋め込みASP化する作業に
やたら手間取ったりミス発生したりしてました。反省。
>レスポンスが明らかに落ちる(であろう)事なのに、「開発効率が上がります」じゃ客に言っても
>通用しない気もするこの頃。
今回は、サーバーマシンはけっこう早いやつを使ってるんですが、アクセス数は
たいした量にならない(ログイン制で1日数十人程度?)っていう変な案件なんで、
ちょっとぐらい重くてもあんまり問題ないです。(攻撃くらったらわかんないけど……)
でもまあ、テンプレートから動的生成するなら、これぐらいの負荷は許容範囲じゃないかな?
チューニングの余地は山ほどあると思いますが。
0290234
04/02/23 22:57ID:???これを公開する権利関係にはべつになにも問題ないです。
気にしないでください。
0291nobodyさん
04/02/24 10:32ID:lNj06MAF↓こういうコンポーネントもあるみたいなんですが、
http://www.vector.co.jp/soft/winnt/prog/se202148.html
信頼性とかどうなんでしょう。
BASP21を使用して、nslookupを実行して標準出力を受け取る、という方法もありそうですが、
スマートじゃないですよね。
なんかPHPのgethostbyaddrみたいな手軽な方法はないですかね?
0292nobodyさん
04/02/24 14:28ID:???パラメータを渡して処理しているようですが、これをaspで実装させることは可能でしょうか?
test.asp/12345678/l50 → test.aspを実行、12345678/l50をパラメータとして渡す
というように
可能な場合はサンプル等があればご紹介ください。
以上よろすくおながいすます
0293nobodyさん
04/02/24 15:32ID:???てか、目的ズバリのやつがあった。
EZ-NET URLParamFilter http://program.station.ez-net.jp/products/isapi/URLParamFilter/index.asp
>これを使用することで、たとえば GET メソッドで /sample/index.asp?param=data のような引数を使用せずに /sample/data/ というような感じにすることが出来ます。
0295292
04/02/24 17:30ID:???TEST1,/test/*,/test/test.asp,,,1
を設定
http://localhost/test/test.aspを作成後
http://localhost/test/test.asp/123-500
でアクセスすると
Request.ServerVariable("HTTP_URLPARAM_TARGET")に 123-500がセットされてますた
当然 test.asp/l50 他でもきちんと値を拾うことができております
特にこれを使ってどうこうというのは無いのですが、時間があったらaspで
2chスクリプトクロンでも作ってみようと思います
0296nobodyさん
04/02/25 00:38ID:???それって、http://localhost/test/test.asp/12345678/123-500 みたいに
.aspのうしろが階層になってても大丈夫ですか?
大丈夫なら自作のdownload.aspをちょっと改造してみよう
0297292
04/02/25 09:00ID:???前述のフィルタできちんと取れますよ
servervariableに
HTTP_URLPARAM_OPTIONS:1234567890
HTTP_URLPARAM_TARGET:100-120
という値が格納されてます
0298nobodyさん
04/02/27 17:38ID:???SQLServerからレコードを抽出してCSVを作成しているASPがあるのですが、
CSVファイルのサイズが大きくなってネットワークの負荷が無視できないものに
なってきたので、サーバーで圧縮して直接LZHかZIPで出力したいと
思っております。
BASP21使って外部コマンドでテンポラリファイルからLZHファイルを作成して
出力することはできるのですが、ASPが稼動しているマシソの鯖ポリシーで
tempファイルの作成は禁止されております(一瞬でも不可・・・)。配列から
LZHorZIP圧縮された配列を作成するActiveXライブラリをどなたかご存知
ないでしょうか?
サンプルがあればご紹介ください
0299nobodyさん
04/02/27 22:36ID:/hLQFYeSMSDEとかSQLServerが入ってるとモアベター
0300nobodyさん
04/02/27 23:04ID:???やったことないけど、UnLhaCom + UNLHA32.dllでLZHが扱えるんじゃないかな?
http://www.csdinc.co.jp/archiver/lib/activex/unlhacom.html
UnlhaExtractMem, UnlhaCompressMem ってメソッドで、
メモリ上で圧縮展開できるみたいだよ。
0301nobodyさん
04/02/28 02:15ID:???てゆーか、テンポラリファイル一つ作れない鯖に
ActiveXコントロールなんて入れられるのか?
0302nobodyさん
04/02/28 02:26ID:???0303nobodyさん
04/02/28 03:54ID:???スクリプトタイムアウト起こしそうw
0304nobodyさん
04/02/29 10:08ID:???それって、デフォルトで開くページに、index.htmlなどにまじって
test.aspを追加しておけば、
http://localhost/test/test/12345678/123-500
って指定で、test.aspを呼び出して値を拾うこともできるんでしょうか?
できるんだったら、そのほうがかっこくて応用も広そうなかんじ。
0306298
04/03/01 09:18ID:???ありがとうございます。
早速テストしてみたところunlhacomがエラーバソバソ
ドキュメントを読み直したところ
>注意)VBScriptではUnlhaCompressMem,UnlhaExtractMem,定義済み定数が使えません。
_| ̄|○だめですた
0307234
04/03/01 18:47ID:???とりあえずテンプレート中に if〜else〜endifブロックを記述できるようになりました。
まだネスト不可なんで、ネスト可にしたらまたどっかにうぷして反応みてみます。
でもこれ、自分以外に需要あるのかなあ。
いまごろまだテンプレートエンジンいじってるような進捗状況、スケジュール的に…_| ̄|○
0308nobodyさん
04/03/02 10:38ID:???ttp://park11.wakwak.com/~util/software/aspobjects/document/index.html
0309234
04/03/02 18:55ID:???こっちのほうがシンプルだし、dllで軽そう。きっちりネストもできるし、ブロックは行単位じゃないし。
しかもおまけにVectorオブジェクトもついてるし。
ちょうどVectorクラスも自作してたところなんだよなあ……。
Vectorは必要最小限しか実装してないんで、公開はしませんが。
ただ、自作エンジンはテンプレート中にeval()でなんでも埋め込めるんで、
いいかげんだけどそのぶんの自由度はあるかも。
0310nobodyさん
04/03/02 21:30ID:???0311nobodyさん
04/03/03 00:52ID:???基本的に過疎スレなので有用な情報が得られるかはわかりません。
とりあえず何でもいいから書いてみてくださいな。
0312308
04/03/03 19:01ID:???234さんが熱心に開発されていたようだったので言い出せなかったの…ゴメンネ
0313nobodyさん
04/03/04 23:37ID:???ChiliSoftASPだろ?
使ったことないけど、FileSystemObjectのCreateObjectも模倣して動くらしい
0314nobodyさん
04/03/05 00:08ID:???レガシASPからの移行以外に使う人いるんだろうか。
0315nobodyさん
04/03/05 01:59ID:???Apache::ASPはオープンソースで、フリーに使えた希ガス。
ttp://www.apache-asp.org/
っても、MSのASPでPerlScript使って開発してる例がどれほどあるか、が問題だが。
IIS PerlScriptって確かコメントに日本語使えないんじゃなかったかな……
漏れもApache::ASP使ってみたいけど、WinだとApacheとmod_perlの
バージョンがいろいろややこしくて、環境作るのマンドクセんだよね……
IISのカスタムエラー設定でASPエラー(500-100)を自作ASPにしているのですが、
フレーム分割したさきでエラーが起こった時も、TOPにエラー表示したいのです。
<script type="text/javascript">
<!--
if (top.frames.length!=0)
top.location=self.document.location;
// -->
</script>
0318316-317
04/03/05 18:19ID:???0319nobodyさん
04/03/05 18:22ID:???0320nobodyさん
04/03/07 22:53ID:cvCav3Bnいままで正常に表示されていたASPが文字化けするようになりました。
具体的には
Response.Write "メールが送信されました。"
というのが
???????????????
という感じで?の羅列になります。
<META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=x-sjis">
は指定してあるんですけど、原因がわかる方いませんか?
よろしくお願いします。
0321nobodyさん
04/03/08 01:19ID:???charset=x-sjis
は
charset=Shift_JIS
でいいんじゃねーの
件の問題はこれとは関係なさそうだが。
0322316-317
04/03/08 09:23ID:???エラーのページは自作していて、
1.デフォルトの500-100のエラーのページのように詳細を出すようにしたい。
2.フレーム分割しておるが、エラー画面はトップに出したい。
この1.2.を満たすのが難しい、ということです。
0323nobodyさん
04/03/08 10:30ID:???<script language="javascript">
function toTop ()
{
if (window.top.location.href != window.self.location.href)
{
window.top.location.href = window.self.location.href;
}
}
</script>
</head>
<body onload="toTop();">
0325nobodyさん
04/03/08 17:21ID:???0326
04/03/09 14:42ID:PapKlbMPASPで、クライアントがブラウザの×ボタンを
押した場合の検地の方法を教えてください
ASPでログインしていて、ログアウトされてしまった
場合、次のブラウザでブックマークで開かれてしまって、
ログインせずにその画面にいけてしまうので、対策が知りたいです
すみませんが、ご教授ください
0327nobodyさん
04/03/09 17:07ID:???Session.Abandon したら次回はログインが必要だと思うが。
あ、それともログイン後の画面の処理がおかしい?
要ログインなページはすべて、冒頭部分に
Session変数の有無をチェックするルーチンを入れておくように。
ログイン入力画面をスルーされても、そこではじく。
ありがとうございます セッション処理って
のをやっていませんでした
ログイン処理は、xmlで判定しているだけで、
その後のセッション処理は・・・
ああ 全部の画面にセッション判定を
入れておくんですね わかりました ありがとうございます
0329326=328
04/03/09 17:33ID:???でも、やはり×を押してブラウザを遮断してクライアントのセッションが
切れたよって検地しないと、つながったままってこと
になりますね
ううブラウザが落ちたってサーバがわかる方法ないかなあ
0330nobodyさん
04/03/09 17:48ID:???他のウィンドウが開いていたらセッション保持しているけど。
0331229
04/03/09 18:06ID:PapKlbMPそうなんですか?他のIEとかが
継続してセッションを保ってるんですか
すごいな
そういうことでしたら、ブラウザ一コでやれって
条件つければ、セッション管理できそうだな
いやあ ありがとうございました ほんと助かりました
0332nobodyさん
04/03/09 21:47ID:cpGa4q71basp21 と BinaryWrite 使ってるでしょ?
一旦セッション切ればOK
0333nobodyさん
04/03/09 22:28ID:???あ、いちおう念のため言っておくと、IISでセッションを使うと
アクセスするのにCookie必須になるからね。
携帯対応とかを考える必要があるなら注意。
0334nobodyさん
04/03/09 23:07ID:5BH0aBGMhttp://www.kcat.zaq.ne.jp/yumenokunisha/develop/bin2str.htm
ここのソースコピペして実行してみたんだけど、たまに誤変換で「・」に変換されてしまう・・・
どなたかこのソース修正してくれませんか、
あと、ほかの方法でいいのがあったら教えてください。
Function Bin2Str(byteData)
Bin2Str =""
i = 1
Do While i <= LenB(byteData)
u = Hex(AscB(MidB(byteData, i, 1)))
If ((CInt("&H" & u) >= &H81) And (CInt("&H" & u) <= &H9F)) _
Or ((CInt("&H" & u) >= &HE0) And (CInt("&H" & u) <= &HEF)) Then 'Code Page 932
l = Hex(AscB(MidB(byteData, i + 1, 1)))
intChar = CInt("&H" & u & l)
s = Chr(intChar)
i = i + 2
Else
intChar = CInt("&H" & u)
s = Chr(intChar)
i = i + 1
End If
Bin2Str = Bin2Str & s
Loop
End Function
0335334
04/03/09 23:15ID:5BH0aBGM0337336
04/03/09 23:19ID:???0338
04/03/10 10:50ID:Srya+a8Fまたわからない事態が出てきました
ASPのログイン画面から別の画面に遷移する場合は
セッションは引き継がれてましたが、
別のウィンドウを開いたら、セッションはNothinになってしまいました
これ、別のウィンドウにも同じ画面のセッションを引き継がせたい
場合、どうすればいいでしょうか?
0339338
04/03/10 14:28ID:Srya+a8F0340nobodyさん
04/03/10 15:13ID:???普通引き継ぐぞ...
っていうかアプリケーション終了するか、サーバー側で明示的にセッション終了しない限り
セッションクッキー破棄しないはず。
もっぺんスクリプトをよく見直してみてはどうだ?
アイテム名タイプミスしてセッション変数呼んでないか?
0341338
04/03/10 15:18ID:Srya+a8Fどうも レスありがとうございます
現在は、ログイン画面ー>メイン画面(どちらも同じブラウザ)という風に移行する場合は、
セッションは引き継がれています
それで、メイン画面から、response.redirectで子供のブラウザを
開くというときなんです
要するに、ログインしていない場合、ログイン画面でセッションは作られていない
から、直接それらメインの子供のウィンドウにお気に入りでいけてしまう
というのが問題なんです
0342nobodyさん
04/03/10 15:27ID:???0343nobodyさん
04/03/10 15:29ID:???子供ウィンドウではログインチェックやってるのか?
If IsEmpty(Session("セッション変数")) Then
Response.Write "ログインしろやゴルァ"
Response.End
End If
要ログイン画面すべて、とうぜん子供のウィンドウでも
こういうのを冒頭に仕込む。
0344
04/03/10 15:59ID:Srya+a8F>>343
やってます やってます 子供のウィンドウの
頭全部でそのセッションチェックは行ってます
で、ブレークポイントしかけてみたら、
そのセッションが、Nothingになてたんです
ちなみに、recponse.cookiesも同じでしたー
困った
0345nobodyさん
04/03/10 16:09ID:???確認だが、親ウィンドウのSession.SessionIDと子ウィンドウのSession.SessionID
をResponse.Writeしてみて違う値が表示される?
これで違うのが表示されたら漏れには分からん。
0346nobodyさん
04/03/10 16:17ID:???>要するに、ログインしていない場合、ログイン画面でセッションは作られていない
>から、直接それらメインの子供のウィンドウにお気に入りでいけてしまう
ってのもよくわかんない。
Session変数が引き継がれてないとして、「ログインしてるのに行けない」はわかるけど、
「ログインしてないのに行ける」の?
違いましたー
親ウィンドウがugeyなんとかかんとかで、
子供ウィンドウがrewずらずら
って表示されました なんか普通じゃないんでしょうかね?
0348
04/03/10 16:21ID:Srya+a8Fそう ログインしてないのに、
お気に入りから直接その画面が表示去れてしまうんです
社内のLANで、端っこのPCがサーバで、そこに
クライアントとしてつないでみても、お気に入りからいきなりその画面が出てしまってるんです
0349nobodyさん
04/03/10 16:35ID:???子ウィンドウのサーバーは同一のサーバーだよな?
0350
04/03/10 16:38ID:Srya+a8F同じです 鯖はひとつしかないですし、
親は自分でlocalhostでみてます
そのIPをURLに入れて、クライアントはつないでいます
うー 343のIF文入れて、その直前でブレーク
張ってみても、Nothingって出て、IFの中に入ってしまいますし
どうなってるのかなあ
普通はきっとセッションはブラウザ同士が引き継ぐものなんでしょうね
0351nobodyさん
04/03/10 16:56ID:???親のURL:http://localhost/asp/oya.asp
そこに記述されているリンクがたとえば<a href="http://192.168.XX.XX/asp/kodomo.asp">
とかだと同じサーバーでもセッションは(たぶん)引き継がれない。
<a href="/asp/kodomo.asp">
<a href="http://localhost/asp/kodomo.asp">
ならオケ。
でもログインしてないのに見えてしまうってのはわからんな...
それはスクリプトがなんかおかしいとしか思えん。
0352
04/03/10 17:09ID:Srya+a8Fコードを見てたら、
servertransferで開くと、きちんとセッションは渡ってました
window open で開くと、セッションは渡らないみたいです
でも今回のは、server transferを使わないでやることに
なってるので、セッションは別の何かの方法で渡さないといけないんでしょうか
0353
04/03/10 19:32ID:Srya+a8Fこちらアドレスの検証終わりました
IPを親が指定して、子供のアドレスも出しましたが、
クッキーの値が違っていました。 つまり、全然違うクッキーが
引き継がれている?(生成された?)と思われます
ますますわからなくなってきた
0354nobodyさん
04/03/10 21:09ID:???ショートカットやwindow.openでIE立ち上げると別プロセスなので
セッションクッキーも別物になる。
IEの新規作成→ウィンドウ(Ctrl+N)とかだと同一セッションになる。
と思う。
ちなみに寝介ではそういう問題は起きなかったと思う。
ちゃんと検証したわけじゃなく、経験則なので過信しない方向でよろしく。
0355
04/03/10 21:12ID:Srya+a8Fセッション厨房です
解決しました やはり、ウィンドウオープン時の
スクリプト記述で、セッションに変なことを
上書きしていたみたいです
どうもいろいろ検証くださってありがとうございました
0356nobodyさん
04/03/10 21:56ID:???どこいったのかな?
これとセッション保持が関係してくるんだったら、
おいらがいま作ってるアプリにも影響してきちゃうんで、
詳しいひと解説きぼん。
0357nobodyさん
04/03/11 01:56ID:???IE5.01以降 設定画面から消えたらしい
http://pcweb.mycom.co.jp/column/winxp/096/
0358nobodyさん
04/03/11 22:03ID:HuVlYADX0359nobodyさん
04/03/12 08:49ID:eGzfHR4AVBScript/JScriptみたいに
0360nobodyさん
04/03/12 08:51ID:eGzfHR4A0361nobodyさん
04/03/12 11:07ID:???一応MSDN Onlineにあることはあるが……ありゃ読みにくいよなぁ。
0362nobodyさん
04/03/22 17:42ID:F/od+5kGASP+VBScritpで、時間をyy/mm/dd形式ではなく、10桁のUnix時間で
笑わしたいのですが、どのようにしたらよいのでしょうか?
あと、Unix時間で表した場合、変数の型は何になるのでしょうか?
やっぱり整数型?
0363nobodyさん
04/03/22 18:07ID:???Unix時間ってのは漏れは知らないのだが、1900/1/1 00:00:00から何秒経過したかって奴?
それならばDateDiff("s", CDate("1900/01/01 00:00:00"), Now())とかで一応出来るのは出来るが。
しかしこれで笑ってくれるかどうか...
0364nobodyさん
04/03/22 18:28ID:???GMTの時差も考えないと。
符号付き32bit整数だっけ?それならVBSの長整数型と同じ。
で、IIS/ASP/VBS環境なのに2038年問題が起こって笑わせるってこと?
0365362
04/03/22 18:52ID:???ありがとうございます。10桁でしっかり笑えました(藁
_| ̄|○・・・ミスタッチです。
ちなみにVBで調べてたらDateDiffでMSDNに
「2 つの指定した日付の時間間隔を表すバリアント型
(内部処理形式 Date の Variant) の値を指定します。」
とありました。
どうもありがとうございました。逝ってきます・・・。
0366nobodyさん
04/03/25 01:31ID:???誰か、PerlScriptがまともに日本語を通すようにしてくれる神はおられぬか!!
ActiveScriptRubyなら日本語通るそうだけどうちの会社スクリプト系言語に詳しい人少ないから
(Perlはなんというか、たしなみとして知ってる人はそれなりにいる)
「Rubyで書きたいんです。」「帰れ。」
っつわれそーだし……(それ以前にRuby覚えてないけどな_| ̄|○)
0367失われたレスを補完
04/03/29 16:44ID:???ASPのチャットを使っているのですが、IP制限をしたりプロキシを遮断する方法ってありますか?
もしあったら賜りたいのですが…。
368 名前:nobodyさん 投稿日:04/03/25 23:53 ID:4QNsTO1G
>>367
>IP制限をしたりプロキシを遮断する方法
プロキシは匿名とかあるから分からんが、IP制限ならREMOTE_ADDRで良いのではないか?
0368nobodyさん
04/03/30 02:06ID:???PCの入れ替えでWinXPPro(NTF)に移行しました。
するとVIDでデバッグの設定を行い実行すると
「サーバーを自動的に正しいデバッグ状態にすることができません。・・」とエラーが出てしまいます。
FrontPageServer Extensionsの設定も触ってみたのですがWin2Kと少し異なっていてうまくいきません。
何か情報をお持ちの方がいらっしゃいましたら教えていただければ幸いです。
0369nobodyさん
04/03/30 23:30ID:???自分のHPで問い合わせメールなるものを作成する場合、
セキュリティのことも考えてSSL対応と非対応のメール送信プログラムを作成したいのですが
SSL対応メールのサンプルがほとんどなくて困っているのですが、
これはそんなに簡単に作成できるものではないのでしょうか?
どうしても作成してみたいのです。
是非、ご存知の方、教えてください。
よろしくお願いします。
0370nobodyさん
04/04/01 01:45ID:???SSLに対応したプログラムというのが認識違い
SSLはWebサーバとの通信経路を暗号化するだけなので
IISでSSLの設定すれば、sendmailプログラムは同じ物でよい
0371nobodyさん
04/04/01 22:19ID:374fK3Erありがとうございます。勉強になりました
0372nobodyさん
04/04/02 10:19ID:???Functionの関数をいろいろなページで使い回す方法ってありますか?
(com以外で)
JavaScriptの外部スクリプトの様に・・・。
0374nobodyさん
04/04/02 12:53ID:???<script language="VBScript" runat=server src="hoge.asp"></script>
0375nobodyさん
04/04/02 13:13ID:???よくわからないのでこれから調べてやってみます。
>>734
こっちの方がわかりやすいのでやってみます。
できるかな・・・。
0377nobodyさん
04/04/02 21:12ID:UEVZ+CnzJavaScriptのdocument.cookieでクッキーに書き込んで
ASPのRequest.Cookiesでクッキーを取得するって一般的ですか?
A→B
Aで値をテキストボックスに入力しその情報をBで表示
A←B
Bから戻る際、「A→B」で呼ばれる時に入力されていた
Aのテキストボックスに値を戻す。
と、言う流れをやる場合に、クッキー利用するかと思ったのですが、
JavaScriptで書きASPで取得って良いのかなと
思い質問させていただきました。
0378nobodyさん
04/04/03 02:18ID:???扱うデータにもよるんじゃないか?
ちょっとしたデータならCookieでやっちゃうし
データが多かったり、漏れたらまずい情報(個人名とかパスワードとか)
だったらSession変数使うよ。
0379nobodyさん
04/04/03 11:29ID:???405 メソッドは許可されていません
Request Line に指定されたメソッドは、要求によって識別されたリソースでは許可されていません。
要求するリソースに適切な MIME タイプが設定されていることを確認してください。
この問題が続く場合には、Web サーバーの管理者に問い合わせてください。
HPでASPを使ってメール送信できるようにしたのですが、
Netscapeで実行したら上記のメッセージが出ました。
これはどういうことなのでしょうか?
0380nobodyさん
04/04/03 12:54ID:???実現しているんでしょうか。
できればMVCっぽく実現したいんですが、いい方法はないでしょうか。
RequestスコープでSession.Contentsと同じような感じでユーザ定義の
オブジェクトを持ち回れればいいんですが、調べた感じではムリそうです。
ちなみに、今まで仕事で見てきたソースはほとんどロジックとビューが合体してて、
見てて泣きそうになるものばかりでした。
スマートに解決している人たちはどうやっているのか知りたいです。
よろしくお願いします。
0381nobodyさん
04/04/03 21:45ID:???ぜんっぜんスマートじゃないが、「こんなバカな解もある」くらいに思って読んでくれい。
・「ユーザ定義クラス群の基底クラス」を作る。
内容はScripting.Dictionaryをラップし、それプラス
- キー&値のペアの配列を要素に持つ配列(VBScript配列ね)を生成する
- 上の配列からキー&値のペアを復元する
機能を持つ。
・上のクラスに機能を委譲する形でガンガンクラスを定義する。
プロパティの類は、全部上のクラスのキー&値で実現。
ページ間で持ち回すときは、配列化してSession.Contextへ格納、
別ページの頭でSession.Contextから復元。
で、具体的にページではどうするかってーと、
hoge.aspを前処理・ビュー・後処理に分け、ビューはhoge.htmlをインクルード。
hoge.htmlには必要最小限の変数と、動的行生成程度のロジックを残し、
後はhoge.aspで片付ける。
ではモノホンのスーパーエンジニアの登場を期待しつつ逝ってきます。
0382380
04/04/03 22:50ID:???はあ。なるほど。
自分もそんな感じで、includeの代わりにServer.Transfer使って実装を試したりしてました。
ただ、イマイチServer.Transferの使いどころが分かってないんですが。
自分の場合、複数リクエストにまたがる場合のことは考慮してないんで
実用的かは分かりませんがこんな具合です。
誰か添削してください。
hogeControler.asp----------
'前処理
Set model = New HogeModel1
'ビジネスロジックを実行
model.doSomehing
'画面表示する項目だけのエンティティクラスを取得
Set entity = model.GetEntity
'セッションにセット
Set Session("一時的なキー") = entity
'リクエストを転送
Server.Transfer "hogeView.asp"
hogeView.asp----------
Set Entity = Session("一時的なキー")
'Entityを使って表示with必要最低限なロジック
Session.Contents.Remove("一時的なキー")
0383nobodyさん
04/04/03 23:37ID:???添削っつーほどのことでもないが、それ実際にやってみた?
多分、hogeView.aspではEntityのプロパティもメソッドも呼べなくて
どーしよーもなかったんではないかと思うんだが。
(単なるPublicメンバ変数はどうだったか忘れた)
0384nobodyさん
04/04/03 23:44ID:???とりあえずPublicメンバにはアクセスできましたよ。
Property Getとメソッドはめんどくさくて試してないです。
Sessionにセットするときのクラスは表示するためだけの構造体みたいな
もんだと割り切って使ったもんで。
0385384
04/04/04 01:25ID:???Sessionにユーザ定義クラスのインスタンスをセットしても
メソッドもProperty Getも正常に動きました。
どうやら1個のリクエスト内ならちゃんと動くけど複数リクエストに
またがると動かないようです。
Sessionの意味ねーじゃん。なんなんでしょうか。
とりあえず検証に使ったソース置いていきます。
hogeControler.asp
<!-- #include file="hogeModel.class" -->
<%
Dim model
Set model = New HogeModel
model.DoSomething
Set Session("HogeModel") = model
'動く
Server.Transfer("hogeView.asp")
'動かない
'Response.Redirect("hogeView.asp")
%>
続きます。
0386384
04/04/04 01:32ID:???hogeModel.class
<%
Class HogeModel
Public Hage1
Private privateHage2
Private privateHage3
Public Sub DoSomething()
Hage1 = "Hage1"
privateHage2 = "Hage2"
privateHage3 = "Hage3"
End Sub
Public Property Get Hage2()
Hage2 = privateHage2
End Property
Public Function GetHage3String()
GetHage3String = privateHage3
End Function
End Class
%>
hogeView.asp
<%
Dim model
Set model = Session("HogeModel")
Response.Write model.Hage1 & "<BR>"
Response.Write model.Hage2 & "<BR>"
Response.Write model.GetHage3String() & "<BR>"
Session.Contents.Remove("HogeModel")
%>
以上です。
0387nobodyさん
04/04/04 13:02ID:o+LU0J3w今までプログラム経験が全くなく、ネットワーク知識ゼロの自分はなにから始めればいいのですか?
データベースにアクセスし読み書きできるようにしたいんです。
まずHTMLの知識がなければどうしようもないですよね?
結果的に、htmLとVBScriptもしくはJavaScriptを扱えるようになればいいんですか?
よろしくお願いします。
0388nobodyさん
04/04/04 13:29ID:tshbcPU+どんなカリスマも始めは初心者。
0389nobodyさん
04/04/04 14:31ID:???HTMLよりVBScript、ASPとADOのオブジェクト構成かな。身につける優先度としては。
というか、ヘルプ(MSDNライブラリ)の引き方を覚えるのが最優先。がんがれ。
0390新入社員
04/04/04 16:26ID:De/FlG6s…ごめんなさい。もう少しわかりやすくお願いします。
それと、どのくらいの期間で完成させるべきだと思いますか?
お願いします。
0391nobodyさん
04/04/04 16:49ID:???うわ。分からないときに質問できる先輩社員、近くにいないの?
とりあえず、MSDNライブラリってのがインストールされてないかな。
それが総合解説書だから、まずそれの使い方を(ざっとでいいから)覚えましょう。
で、次はASPの簡単なサンプルを実際に動かしてみる。データベースへの接続とか
いう話は、ASPについて「なんとなく分かったような分からないような」つもりになって
からでOK。(ちなみに398の「ADO」ってのはデータベースとやりとりするための
仕組みだと思っておいておくれ)
期間については、それこそ課題をくれた人に聞くべし。課題についてどの程度時間が
あればできそうだ、って見積もりはまだ自分ではできないでしょ。
0392新入社員
04/04/04 17:30ID:???ありがとうございます。
先輩社員はほとんど外に出てて、会社には社長と取締役と営業の方しかいないので…。
一応ASPの本を買ってサンプルは動かしてみたのですが、
そのプログラムは自分で本を見ずに作成できるようにならなければいけないですよね?
やはりHTMLは必須ですよね?そしてVBScriptも。
やらなけりゃいけないことが増えていって、全て理解するには果てしなく時間かかりそうで…。
お先真っ暗です。
0393nobodyさん
04/04/04 18:13ID:???むむむ、これは最初に勘違いすると大変だから
>そのプログラムは自分で本を見ずに作成できるようにならなければいけないですよね?
んなこたーない。丸写しは勿論(・A・)イクナイ!! が、ぐぐってヒットしたソースを参考にしたり、
なんてことは多くの人がフツーにやっている。そうして探す頻度が高い事柄はそのうち
自然に頭に入る。そんなもんだす。気楽にやりなされ。
VBScriptは確かに必須。でも、必死にならんでいい(と思う)よ。
とりあえず勇気を振り絞って、課題の期限をはっきりさせておきなされ。
……もう明日でいい(と思う)けど。
0394新入社員
04/04/04 23:40ID:???そうなんですか!知らなかった…。
とりあえず、課題については明日聞いてみます。
ありがとうございました。また来ます。
ていうか、月曜日から5日間耐えられるか心配だ…。
学生時代に戻りたい…
0395nobodyさん
04/04/05 00:45ID:???しかし、PG経験なしでいきなりASPってどうなんだろうか。
とっつきは良いとは思うんだけど、最初に覚える言語がVBの
サブセットってどうなんだろ、と思ってしまうんだが。
開発環境なしで簡単に動くもの作れるから、それはそれで
正しい選択肢なのかなあ。
0396nobodyさん
04/04/05 00:54ID:???スクリプトでひょいっと書けるからコンパイラだのいった環境も必要ない。
という点ではレガシASPはいわゆるWeb系開発者の初歩としては
よく見えるのかも知れない。だったらPHPでいいじゃんとも思うが、
多分PHP使える人が少ないんだろう……
0397nobodyさん
04/04/05 03:29ID:???自分が経験したプロジェクトでもクラス使った処理なんて
リモートスクリプトぐらいしかないし、ユーザ定義クラスなんて
使われてないのかなあ。
皆さんのプロジェクトではユーザ定義クラスって使ってます?
主観ですけど、なんか不当に敬遠されてる気がするんですよねー。
0398nobodyさん
04/04/05 06:52ID:???商品一覧ページを作るとして、名前、写真等で構成される
個々のブロックをItemInfo.ascx、配置を行うItemInfoContainer.ascx
という感じに作ったんだけどItemInfoContainerの中で
<Ucl:ItemInfo name="<%=name%>" runat="Server">
こんな感じに書こうとするとItemInfoのnameに「<%=name%>」という
文字が入ってしまうんだけどこういう動的な値をプロパティに
設定したい場合はどうすれば良いのでしょうか。
そもそもこういう感じにascx使うのが間違ってるのかなぁ?
0400新入社員
04/04/05 22:34ID:???とりあえずHTMLに入力したのがASPで表示できるようにはなりました。
やっぱりVBScriptの本て買ったほうがいいですよね?
ASPの本は買ったけれど分かりにくいんです。
まぁとりあえず今日は少し早く寝れそうで良かった。
なんかパソコンを仕事で、ずっと触ってると嫌いになりそうですよね。
今週はあと4日だ。
0401nobodyさん
04/04/06 06:06ID:???自己解決
<Ucl:ItemInfo name="<%# name %>" runat="Server">
データバインドって便利だな
>>400
がんがれ!
0402nobodyさん
04/04/06 20:39ID:/6+N4hGpVBScriptのSubプロシージャでhtml部分も含めて部品化して
呼出そうとしたら上手く行くパターンといかないパターンに
なぜか別れます
(エラーの詳細なメッセージは出ずに単に表示不能になる)
そこでFunctionプロシージャにするとなぜか上手く表示出来ます
(特に返す値はないけど)
これって何か宣言が足りないんでしょうか?
0403新入社員
04/04/06 22:17ID:???なんか焦ってしまってダメだ。
とりあえず今日も早く寝ないと、キツイです。
明日は楽しみにしていたミスチルのアルバムが手に入るから、とりあえず頑張ります。
0405+++
04/04/07 00:12ID:???>なんかパソコンを仕事で、ずっと触ってると嫌いになりそうですよね。
ずっと触ってるくらいじゃ嫌いになりはせんわ。
伸ばした納期が来てバグは取れない眠気で死にそうコードはごちゃごちゃ
上司はイライラ、そんなお前がこんな仕事取ってくるから俺がこういう目に・・。
というような状況になったら嫌になるだろう。
0406nobodyさん
04/04/07 00:37ID:???困ったら調べろ。使えそうなところは理解した上で丸々コピれ。
動いてるものをコピればバグは出ない。
でも、そろそろスレ違いだな。ここはキミの日記じゃない。
仕事の愚痴じゃなくてASPの技術的なことを話題にするように。
具体的に書けば解決策は大体先人が教えてくれます。たぶん。
0407実は密かに381
04/04/07 01:02ID:???漏れはクラスびしばし作って使ってるよ。>385ほど、綺麗にDTOっぽく分け切れてないけど。
Newのコストとか最初は気になったが、そんなに恐れるほどのこともない。
Newどころか、持ち回しするデータは381に書いた通り、配列化して格納-復元なんて
恐ろしくコストのかかることやってるしw
ストレステストをやったらどうなるかちょっと怖いが、当面それほどアクセス数が見込まれない
らしいから、今回はこのまま突貫の予定。
もっともいろいろと癖があるけどね……383にも書いたんだが、基本的にCOMのコンテナ
オブジェクトには、ClassをNewしたインスタンスを入れてはいけない(同じページスコープ
内でさえ、取り出したらメソッドが呼べなくなっている)。逆も同じ(クラス内の変数に
メソッド経由でRecordsetなんかSetしたら、後で取り出したときポカーンとするハメに)
これについてはJScriptのユーザ定義オブジェクトに関してMSDNに類似の注意書きがあるから
参照よろ。
あと継承じみたことをやろうとすると、多重インクルード防止機構がないのが痛い。
おかげでページの先頭にはいつもいつも山のような#Includeが並ぶことに……
(そこはJScriptだと@ccとか使ってウマーなんだけどなぁ)
もっとも、今頭を抱えてるのは、調子に乗って作りまくった約50のクラスを自分でも把握できなく
なりつつあることだが_| ̄|○
0408nobodyさん
04/04/08 10:30ID:???>上手く行くパターンといかないパターンになぜか別れます
ソースうpしろ。ここにいる人間はエスパーじゃねぇからそんな質問じゃ何も答えられない。
0409nobodyさん
04/04/08 23:39ID:L/po8Xrwすんませんでした
あれからよくソース見比べて共通点探したらJavaScriptが原因でした
ASPとJavaScriptが共存してるとSubプロシージャをCall呼出し
しないとダメみたい
0410nobodyさん
04/04/09 00:08ID:???! ?
0411402
04/04/09 00:59ID:wLjiBB06何かやり方的におかしかったでしょうか?
元々前の担当者から引継いだASPで入力チェックをJavaScript
でやってたんですが負荷の分散の意味でもいいかと思って
そのまま置いてました
それともASP一本でいった方がいいんでしょうか?
0412410
04/04/09 01:21ID:???Function呼び出しになんで関係あるのかなあと不思議に思っただけで。
文章に曖昧なところが少々あるので想像で書くが、
クライアントサイドのJavaScriptで入力チェックをするのは正道だと思います。
でもそれは、明らかに不正な入力をリクエスト前にはじくために補助的に有効
なのであって、それだけでチェック処理を完了させてはいけません。
サーバサイドでも当然同様のチェックを行う必要があります。
サーバサイドのリクエスト内容チェックが絶対必要であって、クライアントサイドの
入力チェックは補助的なものだと考えたほうがいいと思います。
見当ハズレだったらスマンね。
0413410
04/04/09 01:42ID:???Functionで動いてSubで動いたり動かなかったりする。
Callをつけると動く。
という部分を見ると
Visual Basic 6.0 では、Function 呼び出しの引数リストをかっこで囲む必要があります。
Sub 呼び出しでは、Call ステートメントを使用する場合はかっこが必要ですが、
そうでない場合はかっこを使用しません。
という基本的な項目が思い浮かびます。
testSub1(param1) は動くのに
testSub2(paramA, paramB) は動かない
とかいう状況ならそれっぽいが。
あと、Responseに何も出力してないとエラーの詳細はブラウザには出ません。
IISのログには出ますがそれは見ましたか?
0414nobodyさん
04/04/10 00:37ID:Ae8JmJNMLANは有効です。
こういう環境でもASPは動きますか?
0416nobodyさん
04/04/10 11:15ID:Ae8JmJNMありがとうございました
0417nobodyさん
04/04/24 20:11ID:QH0HzCevサイトってないですか?
0419nobodyさん
04/05/01 08:36ID:76bzEXk5Webサーバ : IIS5.0
DB : Access2002
[送信]ボタンをクリックしてPOSTされたデータをDBへ書き込みたいと思っています。
----------------
2台のPCで同時に[送信]ボタンを押してしまうと次のエラーとなります。
『The Microsoft Jet Database Engine エラー 80004005
'' は既に使用されているので、使用できませんでした。』
これは、1人目がDBをオープンしているから2人目はオープンできないよっていうエラーだと思います。
AccessってDBがクローズされるのを待って書き込みにいってくれないのでしょうか。
2人同時にDBへ書き込めるようにしたいのですがどうすればよいのでしょうか。
----------------
以下のようなソースを書いています
Set connection = Server.CreateObject("ADODB.connection")
uri = "Provider=Microsoft.Jet.OLEDB.4.0;"
uri = uri & "Data Source=" & "C:/hogehoge.mdb;"
uri = uri & "User ID=;"
uri = uri & "Password=;"
connection.Open uri
connection.Execute(sql文) 'INSERT文
connection.Close
Set connection = Nothing
----------------
Openの仕方が悪いのかと思い、オプションで以下を指定したりしましたが駄目でした。
connection.Mode = adModeShareDenyNone
connection.Mode = adModeReadWrite
connection.Mode = adModeShareExclusive
DBへのIUSRアクセス権はフルコントロールにしています。
0420nobodyさん
04/05/02 00:10ID:???ちゃんとApplication.Lockしているか?
Accessなんかつかうんなら、Accessへのアクセスは直列化しないとだめだぜ
0421nobodyさん
04/05/02 23:39ID:???移植しようとしてます。今,FORMの
INPUTタグでonclick=入力チェック関数名と書いて,入力値チェックしてるのですが,
i-modeだと,onclick属性が使えないらしいです。
何かいい方法ってありますか?
submitして呼び出す先のASPでチェックするしかないですか?
0423nobodyさん
04/05/03 00:38ID:???0424nobodyさん
04/05/03 17:52ID:Ms49IDTNまた運を使い果たして可哀想な人。
0425nobodyさん
04/05/03 21:38ID:???ASPが出力した結果のHTMLがクライアントでどういう挙動を
するかなんてサーバサイドとは本質的に関係ないからそもそもスレ違い。
さらに言うと、
携帯から見られる=インターネットに公開されてると仮定して言えば、
そのASPがどんな機能か知らんが、ポストされたデータを
サーバサイドでチェックする処理が元々入っていないなんて
普通は考えられない。
という意味で>422の発言は(言い方は悪いが)妥当であると思いました。
あと、こんな過疎スレで聞いてもしょうがないよ。と思いました。
0426nobodyさん
04/05/03 23:52ID:J0aa2c9Vテストで連続投稿したりしてみるとよく419みたいなエラーで書きこめなくなる
レコードセットもコネクションもちゃんと閉じる処理してるんだけど
MySQLなんかだと問題ないんだけど
0427nobodyさん
04/05/04 00:49ID:???WebでAccessなんて使ったことないからわかんないけど。
0428nobodyさん
04/05/04 01:00ID:???素直に(?)MSDEにしとけばいいのでわ。
0429nobodyさん
04/05/04 01:29ID:???http://support.microsoft.com/default.aspx?scid=kb;ja;832205
0430nobodyさん
04/05/04 13:05ID:b36PUwr81. C:\
2. id, passwordはいらない
3. ADDB.ConnectionでInsertするのは辞めた方がいい
adrsを使った方がいい。で、adrsは3,3,1(2)でオープンした方がいい
0431nobodyさん
04/05/04 17:04ID:W4zc5XPDindexページでキャリア判別を行って、各キャリア別のページに
リダイレクトさせたいのですが上手く動作しません。
ソースは以下の用に記述しました。
<%@ LANGUAGE=JScript %>
<%
Response.Buffer = true;
var ua = new String(Request.ServerVariables("HTTP_USER_AGENT"));
if((!blauza.match("UP.Browser")) && (!blauza.match("DoCoMo")) && (!blauza.match("J-PHONE"))){
Response.Redirect("http://www.PC版.htm");
}
if(ua.match("DoCoMo")){
Response.Redirect("http://www.iモード版.htm");
}
if(ua.match("UP.Browser")){
Response.Redirect("http://www.EZ版.htm");
}
if(ua.match("J-PHONE")){
Response.Redirect("http://www.Voda版.htm");
}
%>
0432nobodyさん
04/05/04 17:13ID:???0433431
04/05/04 17:16ID:W4zc5XPD「blauza」を「ua」に置き換えてみて下さい。
質問用に変数名変えたんですけど、一箇所変え忘れました
0434431
04/05/04 17:50ID:W4zc5XPD単に変数名を書き間違えてました。
ゴメンナサイ
0435nobodyさん
04/05/04 18:05ID:b36PUwr8switch文使えよ...
0436nobodyさん
04/05/05 01:27ID:???びんじょさしちくり
ADOだとCommand作って直でSQL投げるより
更新可能なレコードセット作っておいてAddNewとかUpdateとかするもんなの?
こないだまで組み込みSQLの世界にいたもんでどうもその辺の流儀(?)がよく分からなくて。
0437nobodyさん
04/05/05 01:28ID:???びんじょさしちくり
ADOだとCommand作って直でSQL投げるより
更新可能なレコードセット作っておいてAddNewとかUpdateとかするもんなの?
こないだまで組み込みSQLの世界にいたもんでどうもその辺の流儀(?)がよく分からなくて。
0438nobodyさん
04/05/05 01:29ID:???0439nobodyさん
04/05/05 13:06ID:63Il5XCN処理の速さ
adcd.Execute > adrs.Update > adcnでSQL実行
ロックとかの融通性を考えた場合
adrs.Update > adcd.Execute > adcnでSQL実行
かな。もちろんselectなのかWriteなのかにもよるんだけどね。
0440nobodyさん
04/05/06 14:51ID:???小企業で周りに聞ける人がいない。
mdbを扱ったとき、クライアントによって「読み取り専用...」の
エラーメッセージが出てmdbをさわれません。
mdbそのものはゲストで触れるように権限を出していますが
考えられる原因はどこにあるでしょうか?
0441nobodyさん
04/05/06 22:51ID:g8eNtjDmGuestっていうか、IUserでだったと思うから
とりあえずEveryoneに対して解放した方がいいかも
0442nobodyさん
04/05/08 17:46ID:RWoB4aPoFlashでは右クリック→保存ができないので、ZIP圧縮したものをアップして、
左クリックで保存してもらっています。
しかし、解凍作業が面倒ですので、左ワンクリック→保存というふうにしたいです。
そんなとき、
ttp://www.rizm.net/usrplay/?USRID=2516&MFID=19123
こういうとこを見つけたんですが、ここのように左ワンクリックで
ダウンロードできるようにしたいです。
他の板で聞いたところ、これはaspと呼ばれるサーバプログラミングであると
教えていただきました。
ASPの本を買って勉強すれば、Flash上のボタンでも左ワンクリック保存ができるでしょうか?
サーバによってはできない、など、注意すべきことがありましたら教えてくださいm(_ _)m
0443nobodyさん
04/05/08 18:16ID:???できるよ。ASP使うならサーバはもちろんWindows + IIS でね。
HTTPヘッダーを追加すれば良いだけなので、
サーバ設定をいじればASP書かなくてもいいんだけど。
0444nobodyさん
04/05/08 19:11ID:RWoB4aPoすみません、詳しくお聞きします。
>ASP使うならサーバはもちろんWindows + IIS でね
現在infoseekのサーバをレンタルしているのですが、それが
Windows + IIS でなければASPは使えないということですね?
>HTTPヘッダーを追加すれば良いだけなので、
>サーバ設定をいじればASP書かなくてもいいんだけど。
できればASPを書かない方法でやりたいところですが、
この「サーバ設定をいじれば」というのは具体的にどういうレベルでいじるのでしょうか?
サーバ管理者でないとできないことでしょうか?
それとも僕のようにレンタルしている人間ができるような設定でしょうか?
0446nobodyさん
04/05/08 23:22ID:???- サーバ上でMIME設定をbinaryに変更する
- ASPが使える場合、basp21
どちらもレンタルサーバは厳しいかも
apacheの場合は触らせて貰えるかもね
0447nobodyさん
04/05/08 23:23ID:???Guestに対して解放しても、対応するのはGuestユーザのみだから
結局Guestはユーザであってグループではないということ
0448nobodyさん
04/05/09 03:04ID:???infoseek はUNIX鯖みたいだから ASP はアウト。
apache で、かつ .htacess が許可されていたら
.htacess ファイルにMIME設定を書けるはず。
それもダメなら infoseek は Perl CGI 使えるらしいから
Perlスクリプト書きなはれ。
0449nobodyさん
04/05/09 05:56ID:???ありがとうございます。
>>448
やっぱUNIXはだめなんですね。
.htacessでMIMEをいじっても、クライアントのブラウザによっては効果がない
ことがあると聞きました。
IEがひどい仕様だそうで・・・
Perlで左ワンクリックダウンロードができるんですか??
Perl CGIは現在動かしているのでできます。
しかし、どのようなものを書けば良いか見当がつきません。
大雑把でかまいませんので、どういった処理をさせるか教えていただけませんか?
0452nobodyさん
04/05/10 11:37ID:eZPFP0x6そこの入会申し込みの流れをこんな感じでやってます。
入力フォーム→BASP21→申し込み者と管理人にメール
これだと、申し込み時に必ずメルアドを入力してもらう事が必要になってしまいます。
その為か、最近入会の申し込みがめっきり減ってしまいました。
以前はmailtoリンクで作っていたので、手軽に送信できるせいか、
それなりの入会数や問い合わせがありました。
ただmailtoの場合は、(特に携帯からの)必要事項の記入が無い、空メールが非常に目立ちました。
formを使ってから、確かに空メールは無くなったのですが・・・・。
何か上手い対応策、またはクライアントのメルアドを取得する方法などありましたら、
教えて下さい。
0455nobodyさん
04/05/10 16:44ID:MU9v+tcT0456しがないSE
04/05/10 17:08ID:cDmq76NT当方IISにてWebサイトを構築しているものですが、レスポンス向上対策として
GZIP圧縮転送の設定をIISに施してみました。
そこで、aspファイルがクライアントのIEにキャッシュされてしまう問題が発生しました。
プログラム構成上下記コードを記述しています。
Response.AddHeader "Pragma", "no-cache"'キャッシュ非使用をヘッダに追加
Response.AddHeader "Cache-control", "no-cache"
Response.Expires = -1'有効期限を負にし、強制的に期限切れへ
Response.Buffer = True
0457しがないSE
04/05/10 17:08ID:cDmq76NTWindows2K SP3 IIS5.0
IE6 SP1
クライアントキャッシュされる問題は、MS03-048パッチがあたっていないIEで発生すること
までは分かりました。
動作確認をしたところクライアントのキャッシュ領域に確かにASPファイルがキャッシュ
されましたが、そのキャッシュファイルを使用し動作していないように見られました。
この場合RFC2616 14.32 Pragma指示子の動作によってクライアントキャッシュを使用せず、
再度リクエストを投げる動作をIEが行っているように見られます。
0458しがないSE
04/05/10 17:09ID:cDmq76NTパケットモニタリングツール(FreePeek)を使用し200レスポンスがサーバから帰っているか?
の2点で確認いたしたところ、クライアントキャッシュを無視し且IISから200レスポンスが
帰っているところまで確認いたしました。
動作としては問題ないようなのですが、類似の問題及びRFC2616 14.32 Pragma指示子
の解釈をしないケースが無いか?について悩まれた方が居ればご助言いただきたく
長文失礼しました&宜しくお願いします
0459nobodyさん
04/05/10 18:11ID:???IPからメールアドレスがわかるとでも?
>>453の言っているとおり、そんな事ができたら大変な事になる。
スパム業者はうはうはだろうな(w
0460nobodyさん
04/05/10 22:09ID:???> これだと、申し込み時に必ずメルアドを入力してもらう事が必要になってしまいます。
> その為か、最近入会の申し込みがめっきり減ってしまいました。
その程度のサークルかよ
0463nobodyさん
04/05/11 07:26ID:???Apacheスレとどういう関係が?
君がやりたいのは、フォームにユーザがメールアドレスを書かなくても、
クライアントのメルアドを情報として入手したいんでしょ?
HTMLやJavaスクリプトを含めたWebプログラムには、共通のセキュリティポリシーというものがあって、
クライアントの内部情報を読み取ったり、書き換えたりは出来ないようになっています。
以上の事柄を踏まえた上で、俺は今回のあなたのやりたい事と同様の動作をするプログラムを知っています。
コンピュータウィルスです。
0464nobodyさん
04/05/11 08:29ID:???誰か分かる人お願いします<(_ _)>
0465452
04/05/11 11:05ID:fGMzUcRT自分でもこんな事できたら、スパム業者はみんなやるよなってのは
思ってましたw
ただ、メーラーソフトって、立ち上げると自動的に「mail to欄」に
自分のアドレスが入るじゃないですか。
だからWeb上でも認証ボタン押しただけで記入の手間が省ける
何かがないかなぁと思ったんですが・・・。
460さんにも言われてしまいましたが、入力の手間程度で
入会者が減るようでは、ホント「その程度のサークル」ですね。
サークル自体の充実活性化も、もっと頑張ります。
ところで461は僕ではないですよ。
0466nobodyさん
04/05/12 11:40ID:???>立ち上げると自動的に「mail to欄」に自分のアドレスが入るじゃないですか。
それは、Localにインストールされたプログラムだから、規制が無いのでできる芸当です。
前述のとおり、ASPやServletのWeb系では、そのような事は不可能です。
0467nobodyさん
04/05/12 17:47ID:zlsB9+9+近々Lanの中の別マシンにメールサーバを立てる事を予定しています。
下記のような目的を達成するのに当たり、オススメのメールサーバがあれば
教えていただきたいのですが。。
※環境はWindows2000Server,IIS5.0です。
■目的
1.アカウントを複数発行(100〜2000アカウント程度)する。
2.特定のアカウントに対してのメールの着信をプログラムで監視して、着信があればその内容を読み取る。(ASP.NETを予定)
0468nobodyさん
04/05/12 20:04ID:???http://internet.impress.co.jp/tipsbook/111.html
参考までに、mailtoも、記述を工夫すれば、メール本文に
ひな形などを表示させることも出来る
ソース見て、body= のところ。
ここに、必要事項などのひな形を入れれば、無言メールなどは
かなり防止できると思うよ
ttp://www5e.biglobe.ne.jp/~access_r/hp/html/html_016.html
これなども参考に。
0469nobodyさん
04/05/22 22:22ID:G+A7/KafテキストファイルをASPから読む場合、どのように記述したらよいのでしょうか?
下記のように list.txt には、カンマ区切りでデータが入っています。
list.txt
1,AAA
2,BBB
3,CCC
このデータを取得し、表示する方法を教えてください。
0471nobodyさん
04/05/23 01:16ID:???じゃあメソッドを全部書いてあげるね。親切すぎてゴメンね。
CreateObject
OpenTextFile
Read
Split
Close
0472nobodyさん
04/05/25 11:17ID:7PIn4EZpVBScriptでデータベースをWebに表示するプログラムを書いてるんですけど、
表示したデータを並べ替えたりPageSizeで区切ったページを切り替える場合、
レコードセットを保持したまま操作するのがいいのか、それともその都度
レコードセットを作るのと、どちらがサーバーに負荷が少ないでしょうか?
0473nobodyさん
04/05/26 00:18ID:???保持したまま操作するというのは、RecordsetをSessionに格納するというということだと思うけど、
それならば「切断されたレコードセット」をSessionに入れるようにすると良いです。
接続を保ったままSessionに入れるのは、絶対にやめたほうが良い。
0474nobodyさん
04/05/26 01:02ID:???更に言えば、GetRows()で配列化して持った方が多少ASPフレームワークに優しい。
でも、ページ分けするほどのデータなら、DBをこき使った方が最終的なレスポンスはいいんじゃなかろうか。
そもそも、
Microsoft製のデータ保持COMコンポーネントでSessionに入れていいのは
FreeThreadedDOMDocumentだけ
こちらが確認のURLです。……ってしたかったんだけどどこだか忘れちまった_| ̄|○
要はコンポーネントのスレッドモデルの問題。その話はMSDNにも書いてあるから読んどくれ。
ちなみに、
Scripting.Dictionary ×
ADODB.Recordset ×
素のMSXML.DOMDocument ×
COMコンポーネントを使うときはページ内のみに留めてください
(Sessionに入れられるDictinaryと、素のVB配列より楽に延び縮みさせられるVector、
探し回ればおっこちてるけどね。Caprock Dictionaryで全言語ぐぐっとくれ。)
0475472
04/05/26 01:56ID:fNiyqIUJおぉ〜詳しくありがとうございます。
それほど負荷がかかってる様子ではないですけど、同時に
20クライアントぐらいアクセスしてきたらやばいのかな…、
などと思いサーバの負荷を気にしだしたんです。(ちなみにSQLServerを
使う予定)
もしかして、20クライアントなんて気にするほどの数じゃないんですか?w
0476nobodyさん
04/05/26 23:38ID:???正直、いくらなんでも20クライアントのアクセスで悲鳴を上げるようなら
そのマシンは不特定多数相手のサーバには向いてないと思う……
社内イントラのファイルサーバあたりにリストラ(嫌な響きだな……)しる。
ちなみに確かMS謹製のWebサイトストレステストツールが無償配布されてる記憶が。
それもMSDNを「ASP」で検索したら多分見つかる。
0478nobodyさん
04/06/05 02:43ID:ujAxFTweさて、今時新規でASPを組むことになりました(苦笑)
携帯がらみのサイトなのですが、端末の固有識別番号を拾う必要があるかもしれません。
J-SKY(Vodafone)やauは結構(ロジック的に)綺麗に拾えるようですが、DoCoMoは機種ごとに結構複雑なようです
http://www.nttdocomo.co.jp/p_s/imode/tag/utn.html
一応、現在は
(1)HTTP_USER_AGENTから「ser」という文字列を探す
(2) (1)の後ろで「;」という文字列を探す(無ければ最後尾まで識別番号と見なす)
(3) (1)〜(2)をMidで拾う
としていますが、他にDoCoMoの固体識別番号を拾うロジックがどこかにあれば教えていただけけないでしょうか?
理想はASPですが、PHPやPerlでもOKです。Javaは……移植できるかなぁ(^^;
(それを言い始めたらPHPやPerlだって一緒ですが(苦笑)
0480nobodyさん
04/06/06 14:54ID:???utn付けない場合は勝手に送られるのかな?
まぁ、この程度の文字列操作だったらそんな感じで強引にやった方が良いと思うよ。
敢えて言えば文字数が一定なのを使った方がいいとおもうけど。
スマートにしたいのも分かるけど、1行で拾える程度じゃん。
0481nobodyさん
04/06/06 14:56ID:???0482478
04/06/06 23:00ID:???>479
ええ、そこが悩みの種なんですよね。Vodafoneは一回設定してもらえばOKですが、DoCoMoは送信するたびに許可を求めてきますから……
>481
でし(T_T) まぁ、>>478でどうにかなると思うんですが、他に「ser」という文字列が入る可能性も無くはないですからね。それがちょっと心配です。
0483nobodyさん
04/06/14 22:02ID:DCIbC5r/Range("B1").Select
ActiveWindow.FreezePanes = True
と書いても出力先のxlsファイルでは枠の固定がされてません。
書き方が悪いんでしょうか?
0484nobodyさん
04/06/14 22:39ID:DCIbC5r/objExcelSheet.Cells(2,1).Activate
objExcelApp.ActiveWindow.FreezePanes = True
~~~~~~~~~~~~~
これが抜けてただけでし他。
0485nobodyさん
04/06/24 19:12ID:l1ypybz2ASPからメール送信を行いたいんですけど、SMTPサーバ(sendmailとか)は
別途用意する必要があるんでしょうか?
IIS付属のSMTPってのじゃだめなんですか?
それと、送信のみなので、ドメインの取得は必要ないですよね?
qmailサーバをなんとか一度だけ立てた、このヘタレにご教授ください〜。
0486nobodyさん
04/06/24 21:26ID:???どうやって送るかによる。BASP使うのなら利用できるSMTPならIISだろうがSendMailだろうが
(ローカルでなくても)何だって良い。
CDONTS使うのならIISでSMTP立てないと多分無理。こっちのほうは使ったことないのでよく分からんが。
ドメインは取る必要ないが、相手先によっては、けられる恐れあり。
うちの会社じゃDNS逆引き出来ないとこから来るのははじいてる。
とりあえず外部公開してるサーバでSMTP立てるのだったら設定は慎重に頼むぞ...
0487あああ
04/06/24 23:38ID:yUps7HkZASPファイルを更新したので、あららしいファイルを上書きしたのですが、
ブラウザでいくらキャッシュ消したり、再読み込みしても
もう存在しないはずの旧ファイルの内容を標示してしまうことってありませんか?
発生条件がほんと謎なのです。なったことあるひといますか?
ちなみにこの状態におちいると、その箇所のASPファイルをすっこぬいて
カラにしてしまっても動き続けます。ファイル無いはずなのに標示されます。
0488nobodyさん
04/06/25 00:11ID:???NT4で何回かそんな現象にぶち当たったことあるな。
鯖再起動したら直ったけど。
ん〜ひょっとしたらサービスの再起動だけで直ったかも。
最近NT4いじってないんでよく覚えてないや。
0489あああ
04/06/25 00:56ID:???IISだけ再起動でも直ります。
ただ、なぜ、いつ、発生するのかが謎なのです。
0490nobodyさん
04/06/25 01:36ID:???ごめん。適当に思いついただけです。
0491485
04/06/25 10:48ID:74QRNCFyありがとうございます。
やるとしたらBASPは使います。
調べたら、これって同一LAN内にSMTPいなくてもOKなんよね?
はじめに思っていたより、実は簡単・・?
0492nobodyさん
04/06/25 13:43ID:5t0nY7E7XPにapacheをインストールしてaspファイルとhtmlファイルを作成しました。それを以下に記します。
vbs06a.html===============================================
<HTML lang="ja" >
<HEAD>
<TITLE>VBScript 06a</TITLE>
</HEAD>
<BODY>
<FORM action="vbs06a.asp" method="get">
<!-- ここにFormタグを入力 -->
<INPUT type="text" name="txt1" size="3" maxlength="3">
-
<INPUT type="text" name="txt2" size="4" maxlength="4">
<BR>
<INPUT type="submit" value = "決定">
<INPUT type="reset" value = "リセット">
</FORM>
</BODY>
</HTML>
===========================================================
続きへ
0493nobodyさん
04/06/25 13:44ID:5t0nY7E7<HTML>
<HEAD>
<TITLE>VBScript 06a</TITLE>
</HEAD>
<BODY>
入力された郵便番号は
<!-- ここにスクリプトを入力 -->
<%= Request.Form("txt1")%>-<%= Request.Form("txt2")%>
です
<BR><BR><A href="vbs06a.html">back</A>
</BODY>
</HTML>
==========================================================
htmlファイルに郵便番号を入力して、決定を押したらaspファイルでその郵便番号を表示するはずなのですが、その郵便番号の箇所(txt1とtxt2)のみ表示されません。"入力された郵便番号は"などのコメントは表示されます。
どうしてこのようになるのか今は全く検討がつきません。環境設定の問題なのでしょうか?
どなたかご教授願います。
0494nobodyさん
04/06/25 14:56ID:DQ991GJyを
method="post"
にしてみれ。
0495nobodyさん
04/06/25 15:01ID:5t0nY7E7ご返事ありがとうございます。
結果は変わらなかったです。
0496nobodyさん
04/06/25 15:10ID:DQ991GJy今気付いたけど、
>XPにapacheを
って釣られたのか? orz
0497nobodyさん
04/06/25 15:21ID:5t0nY7E7はい、XPに入れましたが、やはり問題あったのでしょうか?
0498nobodyさん
04/06/25 15:32ID:5t0nY7E7http://www5a.biglobe.ne.jp/~n_rieko/asp/1.htm
↑
に動作環境として載っていたので、大丈夫かと思っていました。
0499nobodyさん
04/06/25 15:44ID:???0500nobodyさん
04/06/25 15:49ID:xR8nbSP+ASPとSQLserverを使ってるんですが、今2つのデータテーブル(フィールドはどちらも同じId、Name、Address、Tel)を1つにまとめたいと考えてます。
ただ、そこで問題なのがおたがいのIDが重複している可能性があるので、一度両方のデータセットを取得して、IDの衝突がないことを確認してその時点でのクエリ
(rs配列にあるValue)をInsertしていく・・という方法を考えています。
ひとつのデータベーステーブルから値をひろって、それを別のデータテーブルに
格納したいのですが、変数を使う場合SQL文はどう表記すればいいのでしょうか?
Set rs=conn.Execute("Select * from table1")
で、これをテーブル2に
conn.Execute("Insert into table2 (Id,Name,Address,Tel) values rs("ID")& ",'" & rs("Name") & "','"& rs("Address") &"','" & rs("Tel") &"'" )
これだとエラーになってしまうんです。
いろいろと「"」や「'」で囲ったりしてみたんですが、やればやるほど泥沼にハマってしまいました。。(^^;)
すいませんどなたか助けてください。
0501nobodyさん
04/06/25 15:52ID:5t0nY7E7すいません。
書いてませんね。
なんか頭の中が混乱していたようです。
つまりapachはXPをサポートしていないということでしょうか?
このスレで聞いていい質問なのか分かりませんが・・・。
0503nobodyさん
04/06/25 16:17ID:???あるにはあるが
http://jp.sun.com/software/interoperability/chili/
こんなの買うくらいならふつー最初からIIS使うわな。
>>500
そんなバッチ更新わざわざASPからやる必要ないんじゃ...
osqlなりエンタープライズマネージャーからSQL文で1発で更新かけれる。
0504nobodyさん
04/06/25 22:37ID:???http://asp.nishinari.or.jp/
0505nobodyさん
04/06/25 23:41ID:8zpicMqZとりあえずCreateParameterでやった方がいいよ。
0506500
04/06/25 23:43ID:???本当ですか?エンタープライズマネージャーのどの機能ですか?
教えて君ですいません。。またその際のSQL文とはどんなものでしょうか・・?
0507nobodyさん
04/06/26 00:03ID:???Apache::ASPってのもあることはある。
こいつはapache+mod_perl環境を前提としたPerlによるASPのエミュレートぽい環境。
それなりに使えるようには思うが、結構導入がマンドクセので、
そこまでしてApache - Perlの組み合わせでASPをやるかとなると……
玩具には楽しいけどね。レガシASPに比べれば多少機能アップも図られてるし。
0510nobodyさん
04/06/26 13:20ID:/jOReQICIISの設定は終了しています。
IISではapacheのようにlocalhost/ASP(ASPはフォルダ)のようにフォルダ内のファイル一覧表示って出来ないのでしょうか?
URLにファイル名までのパスを入力するとそのファイルの表示は出来ています。
どなたかよろしくお願い致します。
0511nobodyさん
04/06/26 13:47ID:/jOReQICすいません。出来ました。
失礼致しました。
0512nobodyさん
04/06/26 22:56ID:???ASPでやるべきかどうかは置いといて、
conn.Execute("Insert into table2 (Id,Name,Address,Tel) values (" & rs("ID")& ",'" & rs("Name") & "','"& rs("Address") &"','" & rs("Tel") &"'" )")
じゃないかな?
SQL文は先に変数に入れて Response.Wrtie してみれば、ちゃんとした構文になってないのがすぐ分かる。
あと、パラメータ使わないにしても、Replaceで ' を '' に変換くらいはしたほうがいいかと。
0513nobodyさん
04/06/27 03:45ID:HH+gkox4そのときのエラー内容を以下に記します。
また、その下にエラー箇所のソースを記します。
どなたか何かお気付きの方がいっらしゃれば、ご教授の程、よろしくお願い致します。
エラー タイプ
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][ODBC Microsoft Access Driver]一般エラー レジストリ キー 'Temporary (volatile) Jet DSN for process 0x954 Thread 0xa9c DBC 0x111dc3c Jet' を開くことができません。
/スーパーサンプル/samples/7 アプリケーション/7-5 スケジュール/sche.asp, line 275
'=================================================
'----- DB接続
'=================================================
Sub ConnDB()
Set ObjConn = Server.CreateObject("ADODB.Connection")
ObjConn.open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & _
Server.Mappath("sche.mdb")
End Sub
上記のうちの
ObjConn.open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & _
の行のようです。
0514nobodyさん
04/06/27 16:56ID:HH+gkox4ソースをほかのPC(OSは同じ。XP)に移して動かしたところ、ちゃんと動きました。
どこに違いがあるのか分かりません。
0515nobodyさん
04/06/27 17:06ID:HH+gkox4動かないPC(ノート)で動かせるようにしないといけないので、どなたかご教授願います。
0516___
04/06/27 17:28ID:w62SJ2Y/イントラ限定でクライアント10台くらいでWin2000鯖&SQL2000で在庫管理システム
構築しようと思ってます。鯖って1台(IIS&SQL)でいいかな?それとも2台(IISと
SQL)あったほうがいいかな?ていうとないとダメ?教えて君ですいませんがどなたか
ご教授願います。
あ、鯖はごく一般的(PEN4?3G?&Mem1Gくらい?HDD40GB)です。それとトランザク
ションは発生が1000件/日、更新は300件/日、くらいのもんです。
0517nobodyさん
04/06/28 00:59ID:As6ZB0VV> トランザクションは発生が1000件/日、更新は300件/日、くらいのもんです
1台で十分。
もっと言えばMSDEで十分
0518nobodyさん
04/06/28 15:05ID:ycSyQ97EMicrosoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][ODBC Microsoft Access Driver] 更新可能なクエリであることが必要です。
そこでマイクロソフトのサポートで調べてみて、以下の文がありました。
http://support.microsoft.com/default.aspx?scid=kb;ja;175168
=========================================================================================
最も頻度の高い原因は、デフォルトで "Everyone" グループに含まれているインターネット ゲスト アカウント
(IUSR_MACHINE) に、データベース ファイル (.mdb) に対する書き込みのアクセス許可がないことです。
この問題を解決するには、エクスプローラで、対象のファイルのプロパティの [セキュリティ] タブを修正して、
インターネット ゲスト アカウントに適切なアクセス許可を付与します。
=========================================================================================
この文の、”対象のファイル”というのは、mdbファイルだと思っても差し支えないでしょうか?
というのも、対象となるmdbファイルのプロパティを参照しても、「セキュリティ」というタブが
見つからないのです。
今、私は上記の文の通りのことが出来てません。
"Everyone"グループというのも分からないし、インターネット ゲスト アカウント (IUSR_MACHINE)も分かりません。
どなたかどうすればいいか教えて頂けないでしょうか?
0519nobodyさん
04/06/28 18:17ID:ZKttLMDoブラウザからmdbファイルをクリックすると、「ファイルのダウンロード」になります。
そこで、「開く」をクリックすると、以下のメッセージが出て、ファイルを開けません。
=======================================================================
このファイルを開けません。
このファイルは、イントラネット外または信頼されていないサイトに保存されています。
セキュリティ上問題がある可能性があるため、ファイルを開きません。
ファイルを開くには、ローカルマシンまたはアクセスできるネットワークの保存場所に
いったんコピーしてください。
=======================================================================
やはりブラウザからmdbファイルをダウンロードして、開く事が出来るようになれば、
うまくいくような気がしています。
どなたか、何かお気づきの方がいらっしゃいましたら、ご教授の程、よろしくお願いいたします。
0521nobodyさん
04/06/28 23:35ID:???0522nobodyさん
04/06/29 11:29ID:RUrjiXQHすいませんでした。
環境は、windowsXPです。
これ以外に何を書けば良いでしょうか・・・・?
なお、これは先ほど解決いたしました。
「対象のファイルのプロパティの [セキュリティ] タブ」は、
フォルダオプションの設定を変えることによって出現しました。
それにより、アクセスを許可でき、解決となりました。
mdbをダウンロードしたのは、ただmdbファイルがアクセス不許可になっている
ことが原因であるということがはっきりしているという意味で書かせて頂きました。
0523nobodyさん
04/06/29 22:13ID:o15RwvsC>「セキュリティ」というタブが見つからないのです。
NTFSならフォルダオプションで表示させられるはず。
0524nobodyさん
04/06/29 23:55ID:???もうスルーしようぜ。
0525戦士
04/07/03 10:15ID:???BASP21のメール送信機能をお客さんリスト分ループさせて
1件づつ送信すればよい?
0526nobodyさん
04/07/04 13:25ID:???SMTPなしでメール送信することなんてできないですよねぇ?
出来るって話をする人がいて、一応調べてるんですけど・・。
BASP使っても、SMTPは必須なんですよね?
0528nobodyさん
04/07/04 16:33ID:???非常に邪魔くさそうなので試す気無いけど。
0530nobodyさん
04/07/07 18:46ID:???0531nobodyさん
04/07/08 02:27ID:???0532nobodyさん
04/07/08 22:46ID:???0533nobodyさん
04/07/14 19:35ID:FW6QKySkASP側で拾うことは出来ますか?
SESSION変数の後始末をしてあげたいもので・・・
0534nobodyさん
04/07/15 00:57ID:???ただ、それによって「ブラウザが閉じるまで」のクッキーは失効するから、
次に同じ(と思われる)クライアントがセッションIDを持ってなければ、
それまでのセッションが切れたと判断され、Session_OnEnd()が呼ばれる。
そこで後始末しる。
……で良かったっけ? 何か書いてて不安になってきたのでツッコミよろすく。
0535nobodyさん
04/07/15 01:39ID:???ブラウザを閉じた同じクライアントから再度接続したときにセッションが切れている
のはクライアントがセッションクッキーを破棄したからで、サーバにSession情報が
残っていないのではない。
何らかのタイミングでAbandonするか、タイムアウトするまでセッションの情報は
消えません。
んで、クライアントがブラウザを閉じたというタイミングをサーバは知りえないので、
結局タイムアウトで消えるまでは残りつづけるかと。
Session_OnEnd()に後始末書いとけって結論は同じです。
0536nobodyさん
04/07/15 03:48ID:5ftZesxYend.aspでSession.AbandonしてBODYのonLoadでwindow.close();
なーんてね( ´∀`)
0537nobodyさん
04/07/15 17:49ID:Prek2ToUでも//がコメントに使えるのはなぜですか?
0538nobodyさん
04/07/15 23:13ID:???536な感じでonUnloadと併用すればできる。
ただし、フレームとか使って遷移しないページに貼ること。
unLoadの時のJavascriptも使えるのが限られる(location.hrefはダメ)からいろいろ試してみ
0539nobodyさん
04/07/16 18:24ID:HCuP+FIsjavascript の
<form>
<Input 〜略〜 onclick = "関数名">
みたいなことは、ASPでもできるのですか?
またできるのでしたら、やり方を教えてください。
0540539
04/07/16 18:30ID:HCuP+FIs<form> のactionでaspページへはジャンプしたくないのです。
ボタンを押したときに、表示しているページをかえずに
関数を走らせることはできるのでしょうか。
0541nobodyさん
04/07/16 18:40ID:???ASPのページは読み込まずにASPの関数を呼びたいのか?
なんにせよASPの関数を呼ぶためにはASPのページをpostするしかないと思うのだが。
0542539
04/07/16 18:50ID:HCuP+FIs表示がかわらないで関数を呼べればと思ったのですが。
最悪関数の最後に元のページに戻る一文をくっつけてみます。
ちょっと構造的に不細工な気もするのですが。
ありがとうございました。
0543nobodyさん
04/07/16 22:01ID:???目的がよくわからんが、ページ遷移伴わずにサーバに処理させたいんなら
リモートスクリプト使えばいいんじゃないの?
0544nobodyさん
04/07/24 00:06ID:dg7dM13BをASPで、実現できないでしょうか?
現在はVBSScriptを使ってMS-WordやExcelのファイルを
html変換しています。
0546nobodyさん
04/07/25 01:00ID:LBJKrSVDASPの変数にJavascriptの変数の値をいれることってできますか?
0547nobodyさん
04/07/25 01:56ID:???Request.Form か Request.QueryString で取りなされ
0548nobodyさん
04/07/25 02:02ID:LBJKrSVDsubmitなしでする方法はないですかね。。
0549nobodyさん
04/07/25 18:21ID:???電文を受信し、それを解析して電文送信を行うASPを作成しているのですが、
同一の宛先から複数回電文受信した場合、明示的にセッションを切断しなければ、
同一セッションとみなされるのでしょうか?
教えてASPの中の人!
0550nobodyさん
04/07/26 00:21ID:???それは電文を受信するライブラリの作りによるよ。きっと。
0551nobodyさん
04/07/28 11:31ID:rYM5kEJf画像のサムネイルを動的に作成する方法を教えてください
横150ピクセル×縦100ピクセルのエリアに
縦横比を変更せずに
表示できるサムネイルができればいいんですが・・・
たとえば
横300ピクセル×縦180ピクセルの画像を
横幅は表示エリアにあわせて
150ピクセル
縦幅は縦横比を変えずに
90ピクセル
の
横150ピクセル×縦90ピクセルのサムネイルを作成
画像と縦横のピクセルを指定すると
最適化されてくる関数等があればなおいいんですが・・・
0552nobodyさん
04/08/01 00:58ID:QYh3SWaPIMGタグのwidthとheightを変更するんじゃなくて
ファイル自体を生成するってことですか?
0553551
04/08/02 10:30ID:???そうです。
ファイル自体変えれればいいなと思ってます。
固定でwidthとheightを変えちゃうと
縦横比がおかしくなっちゃうから・・・
0554nobodyさん
04/08/02 11:24ID:???すこーしオーバースペックかもだがImageMagickを使ってみては。
Windows用のバイナリ配布ならCOMブリッジがあるから、ASPからも使える……はず。
実際に試した訳じゃないんであかんかったらスマソ。
0555nobodyさん
04/08/03 20:36ID:???やっぱりPerlと連携させるのがベストなのかな?
0556nobodyさん
04/08/05 02:58ID:hyKdPEntrequestじゃあかんの?
0557nobodyさん
04/08/12 13:23ID:???以前basp21でのメール送信に関して質問させていただいた者です。
いま、baspを使ってメール送信のテストを行っているのですが、
うまくPOP認証がされません。
具体的には、Path is not Directory のエラーが出るのですが、
これは単に受信データの存在するディレクトリがない、という
ことだと思うのですが、テストSMTPはLinuxなので、システムドライブが
何なのかわかりません。
また、本番SMTPはあるプロバイダのメールアカウントを使用しますので、
受信ディレクトリを教えてくれるかもわかりません。
そこで、ディレクトリを指定しないでもPOP認証を通る方法はありませんでしょうか?
宜しくお願いします。
0558557
04/08/12 15:17ID:???rc = object.RcvMail(POP,User,Pass,"STAT",Dir)
の"Dir"は、SMTPサーバのメールデータ保存ディレクトリではなく、
basp存在サーバのディレクトリですよね?
認証通るようになりました。
失礼しました。
0559nobodyさん
04/08/12 20:25ID:???メール送信→メール受信だろ...
あと
>basp存在サーバのディレクトリですよね?
違うだろ...
リファレンスぐらい見れ。
http://www.hi-ho.ne.jp/babaq/basp21.html#0004
0560557
04/08/13 15:32ID:???POP Before SMTP 認証を通すために、
一旦受信をしています。
0561nobodyさん
04/08/19 16:16ID:T7xEf/rS別のWEBサーバのASPからアクセスしたいんですが
どうやって接続すればよいんでしょうか?
WEBサーバの方に適切なDSNを設定しておけば
Set ObjConn = Server.CreateObject("ADODB.Connection")
ObjConn.Open ("DSN=????")
で開けるんでしょうか?
またはDSNを使用しない場合は何を指定すればいいんでしょうか?
すんませんがご教授お願いします
0562nobodyさん
04/08/19 21:49ID:???DSNに書いたらODBC接続になるぞ
var adcn = Server.CreateObject("ADODB.Connection");
with (adcn) {
ConnectionString = "Provider=sqloledb;Data Source=xx.xx.xx.xx;User Id=sa;Password=;Initial Catalog=NorthWind";
Open();
}
これだけでいい
0563nobodyさん
04/08/20 21:58ID:sZXCXkGpIIS5なんですが、ログインしてsessionに情報を保持したあと、
サイト内を移動していると、不特定の場所で突然ログイン画面に遷移します。
各画面の先頭でsession保持チェックを入れてあって、
そこでsession情報が突然失われてしまう、というところまで確認しています。
しかも、ログイン画面に飛ばされると、sessionのIDも変わっています。
起きる時は立て続けに発生し、起きない時はぜんぜんおきません。。。
sessionはログアウト時にAbandonしています。
それ以外ではAbandonしたりはしていません。
サーバのホスト名にアンダーバーも入れてません。
ホトホト困り果ててしまいました。。。
一体何が起こっているのでしょうか?
少しでも何かわかる方、教えてください。
お願いします。
0565563
04/08/23 14:26ID:zVUDN8F2IISのログを取得してみたんですが、
ログイン画面に飛ばされる(要はsessionがなくなる前)までは、
ASPSESSIONID・・・の記述があるのですが、
sessionがなくなってログイン画面に飛ばされた時には,
ASPSESSIONID・・・の記述そのものが「きれいさっぱり」なくなってます。。。
0566nobodyさん
04/08/23 23:05ID:???そのASPSESSIONIDをなくしてしまうページを確認しろということでしょ。
ログをさらさなければこれ以上的確な提案はできない希ガス。
0567nobodyさん
04/08/25 02:51ID:???257757 - [OFF2003] [INFO] Office のサーバーサイド オートメーションについて
http://support.microsoft.com/default.aspx?scid=kb;ja;257757
0568nobodyさん
04/08/25 13:56ID:???0569nobodyさん
04/08/25 15:31ID:???0570nobodyさん
04/08/25 18:15ID:???.NETもいっとく?
0571563
04/08/27 19:25ID:JE6br4ZJ[IE55][IE6] ローカル HTML ファイルを使用するとセッション Cookie が失われる
http://support.microsoft.com/default.aspx?scid=kb;ja;315713
参った。。。
セッションcookieなんて、有効期限決められるのでしょうか???
触れないと思うんだけど・・・。
ダミーウインドウ開いておけと?
嫌だなぁ。。。
0572nobodyさん
04/08/27 19:35ID:???0573nobodyさん
04/08/27 23:27ID:???つーか素直にIIS/PWS経由でアクセスするという手はないんかいな。
0574nobodyさん
04/08/29 20:39ID:???Recordsetオブジェクトを、Closeしないで処理終了した場合は、
そのオブジェクトや、メモリはどうなるのでしょうか?
0575nobodyさん
04/08/30 00:35ID:???0577nobodyさん
04/09/06 11:25ID:???MSの↓のツリービューを表示したいのですが、(DBの部分は関係なし)
http://support.microsoft.com/default.aspx?scid=kb;ja;183329
win2000 IE6.0の端末ではオブジェクトが表示(ロード)されません。
(XP+IEはOK)
ツリービューを表示させるのには何が必要ですか?
0578nobodyさん
04/09/12 01:18:04ID:???0579nobodyさん
04/09/16 15:23:17ID:TGXTNniE0580nobodyさん
04/09/16 16:23:51ID:???ASP.netなら。
しかし、たまーに.aspxなサイト見かけるようになってきたが
総本山のサイトに未だ.aspなページが多いのはなんでだろ〜♪
0581nobodyさん
04/09/16 16:35:32ID:???サンクスです
0584577
04/09/21 09:14:49ID:qjUnzu43どこで聞けばいいのでしょう?
0586577
04/09/22 09:40:48ID:???確かにサーバー側の問題ではなくユーザー側ではあると思います。
VBやVisual J++をインストールされている端末は表示されます。
VBやVisual J++がインストールされていない端末で表示したいのです。
(xpはインストールされてなくても表示されます)
ここはスレ違いだと思いますが、どなたか教えてください。
0587nobodyさん
04/09/22 12:58:00ID:???その際、no1.aspのSession情報、Request情報もno2.aspに引き継ぎたいのですが、うまくいきません。
no1.asp側で
window.open("","test");
document.form_1.target = "test";
document.form_1.action = "no2.asp";
document.form_1.submit();
とすると、Request情報を取得することができました。
しかし、Session情報の取得が出来ませんでした。
no1.aspとno2.aspで Session.LCIDとSession.SessionIDを出力してみたところ
SessionIDが違う値になっていました。
Session情報を引き継ぐことは無理なのでしょうか?
お願いします
0588nobodyさん
04/09/22 13:19:08ID:???自分もなったよ。最近。どうしようもなかったから
"no2.asp?xxx=0&yyy=1";
とかにして Request("xxx")で取得した
0589nobodyさん
04/09/22 19:39:18ID:???セッションは基本的にプロセス単位に持つから、別ウィンドウでプロセスが変わるIEは無理。
逆に言えばタブブラウザは複数のウィンドウでも1プロセスなので引き継ぐことが可能。
0590587
04/09/22 23:23:16ID:???0591nobodyさん
04/10/11 03:31:05ID:???0592nobodyさん
04/10/13 00:47:48ID:???前と同じIDなのは正常な挙動?(Session.Contentsはしっかり初期化されてる)
Session.Abandonメソッド:セッション情報を破棄
みたいな説明が多いんだけどこれってSessionIDも破棄するって
ことではないの?
0593nobodyさん
04/10/13 10:20:42ID:???Abandon メソッドを呼び出すと、現在の Session オブジェクトが削除のためにキューに退避されますが、
実際に削除されるのは現在のページのスクリプト コマンドの処理がすべて完了した時点です。
つまり、Abandon を呼び出したページ内であれば Session オブジェクト内の変数にはまだアクセスすることができますが、
その後の Web ページではアクセスできなくなります。
だそうで。
セッション破棄したページ以降のリクエストで以前と同じSessionIDが採番されてるようなら異常だと思う。
0594nobodyさん
04/10/13 11:37:55ID:???abandonを呼び出しているページを更新しても、一度ブラウザを落としても
以前のSessionIDが配番されます。タイムアウトを1分に変更して1分ごとに
みてみたんですが、これも以前のSessionIDが配番されます。セッション変数
(Session.contents)はきちんと破棄されています。けれどふとした拍子に
依然と異なるSessionIDを配番しやがります。理由の特定はできなかったです。
というような感じの挙動でした。回避策はとったんですが思い通りに動かないのは
気持ち悪いです。自己解したら報告に来ます。
0595nobodyさん
04/10/13 11:47:50ID:???だからDBのキーにしたりすることはお勧めできない、って。
単に空いたIDを使い回しているだけってことじゃないのかな……
0596nobodyさん
04/10/13 12:29:12ID:???http://windows.microsoft.com/windows2000/ja/server/iis/default.asp?url=/windows2000/ja/server/iis/htm/asp/iiapsess.htm?id=196
本家のドキュメントからの引用です。
>>唯一、ユーザーが新しい SessionID cookie を受け取るのは、
>>サーバー管理者がサーバーを再起動してメモリに格納された
>>SessionID の設定を消去するか、ユーザーが Web ブラウザを再起動した
>>場合のみです。
Session.AbandonではSessionIDは破棄されません。
>>594で再起動させたのにIDが変わらなかったのは、ショートカットからそのページに
飛んでいた(ブラウザにSessionID Cookieが残っている)からでした。
アドレスを手入力するとあっさりSessionIDは変わりました。
ご迷惑かけましたっていうか一人でドタバタしましたとさ
0597nobodyさん
04/10/22 10:29:13ID:GVkfhK7Nこの際に、パスワード有効期限切れや、アカウントロック中などのメッセージを
必要に応じて表示させたいと思います。
上記情報のパラメータ(?)の取得方法をお教え願いたいのですが。
また、ADSIのバージョン確認法も教えていただきたく思います。
よろしくお願いします。
0598nobodyさん
04/10/22 19:34:02ID:4aYaveIP動的な折れ線グラフを出力したいのですが
まずどうしていいのか分からないので
どうぞ一つよろしくお願いします。
0599nobodyさん
04/10/22 21:35:58ID:???まず入力された数値をオウム返しに表示するページを作りんさい。
絵(グラフ)を描くのは適当にコンポーネント探しんさい。
オーバースペックで良ければImageMagickとかあるし。
0600nobodyさん
04/10/23 22:42:20ID:???http://support.microsoft.com/default.aspx?scid=kb;ja;323750
http://support.microsoft.com/default.aspx?scid=kb;ja;184619
0601nobodyさん
04/10/25 03:06:17ID:rJW5BvWS(たとえば、hoge://hoge.hoge.cgi?aaa=123&bbb=456 → hoge://hoge.hoge.cgi/123/456.html)
同様のことがASPでもできるんでしょうか?
0603nobodyさん
04/10/25 09:17:19ID:lryWe8IGさんきゅー。でもリンク先が404_| ̄|○
0604nobodyさん
04/10/25 14:38:39ID:???ttp://web.archive.org/web/20040224002756/http://program.station.ez-net.jp/products/isapi/URLParamFilter/index.asp
0605602
04/10/26 00:17:10ID:???未確認でスマンかった。
↓になってるみたいだね。
ttp://program.station.ez-net.jp/products/isapi/URLParamFilter/v1.1/
0607nobodyさん
04/10/26 10:30:57ID:???javaスクリプトで制御できるのかと思ったのですが、ググってみると出来ないという回答しか見つかりませんでした。
お願いします。
0608nobodyさん
04/10/26 10:42:13ID:???ASPでどうこうできる話ではないぞ。
0609597
04/10/26 12:06:52ID:o98NDTMbありがとうございます。
早速試してみたのですが
-2147463156
ディレクトリのデータ型と、ネイティブ DS のデータ型を相互に変換することはでき
ません
Active Directory
とエラーが出てしまいます。
立て続けで申し訳ないですが、教えてください。
お願いいたします。
0610nobodyさん
04/10/27 01:16:53ID:???その後で必要に応じて値を変更してるんだが、
IIS 6.0 でアクティブな ASPセッションが何もない状態
(Abandonしたりタイムアウトして生きてるセッションがなくなった状態)
が続くと、いつの間にかアプリケーション変数が初期値に戻っている。
IIS 5.0 では同じコードでもそういう現象はなかったんだが、
メタベースかどこかの設定を変えてやる必要があるんだろうか。
0611nobodyさん
04/10/27 23:37:14ID:???一番上にある、アイドル時間の監視(20分でプロセス終了)をやめたら
解消しますた。
0612nobodyさん
04/10/28 22:11:44ID:???基本的にはできないけど、銀行とかのログインサイトで使用されているメジャーな方法としては
フレームを使ってフレーム内でページ遷移させるようにする。
フレームのHTMLにonUnloadイベントをつけて、ログアウト処理を行うaspに飛ばす
こうするとブラウザの閉じるボタンを押した場合も、別サイトに飛んだ場合もログアウト処理が走る。
但し流行りのタブブラウザの場合は、閉じるボタンを押すとonUnloadが働かないので注意
0613ASP素人
04/11/01 03:30:19ID:sStej03s'----- DBにデータを追加
'=================================================
Sub UpdateDB()
StrSQL = "insert into member ("
StrSQL = StrSQL & " name "
StrSQL = StrSQL & " mail "
StrSQL = StrSQL & ") values ("
StrSQL = StrSQL & "'" & name & "',"
StrSQL = StrSQL & "'" & mail & "'"
StrSQL = StrSQL & ")"
ObjConn.Execute(StrSQL) (←この行が違うといわれるのですが・・・)
If Err = 0 Then
End If
End Sub
アドバイスくらはい
0615nobodyさん
04/11/01 09:29:17ID:???>StrSQL = StrSQL & " mail "
カンマ入れなくて良いの?
0616nobodyさん
04/11/01 12:41:32ID:???そこは列名だからカンマ要らないっしょ。
とりあえず613は「違うと言われる」という内容のエラーメッセージを
表示されたそのまんまコピペしる。でないとわからん。
0617616
04/11/01 12:42:30ID:???てことで>615でいけそうですな。
0618ASP素人
04/11/01 18:48:33ID:ZGzcf1yoエラー タイプ
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC Microsoft Access Driver] INSERT INTO ステートメントの構文エラーです。
/scripts/id.asp, line 176
0619ASP素人
04/11/01 18:51:14ID:ZGzcf1yoDimObjConn,ObjRS
中略
'=================================================
'----- DBに接続
'=================================================
Sub ConnDB()
'スクリプトと同じフォルダにあるAccessのpass.mdbに接続します。
DBName="Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & _
Server.Mappath("pass.mdb")
Set ObjConn = Server.CreateObject("ADODB.Connection")
ObjConn.open DBname
StrSQL = "select * from pass"
Set ObjRS = Server.CreateObject("ADODB.Recordset")
ObjRS.Open StrSQL, ObjConn,3,3
End Sub
0620615
04/11/01 21:51:00ID:???念のため書くけど,SQLステートメント(この場合はStrSQL内)に間違いがあると,
ObjConn.Execute(StrSQL)の行を実行するときににエラーが出るのよ.
0621nobodyさん
04/11/01 22:58:41ID:???いや、616は、617に書いた通り漏れの勘違いカキコ。
実際貼ってもらったエラーの文言からしても、615の指摘が的を射てるっぽいね。
ってことで、615の修正は試してみた?
0622nobodyさん
04/11/02 00:42:10ID:???SQL文をそのまま書くのは間違えやすい(特に「'」とか)し、パフォーマンスも若干落ちるので
Recordset出してAddnew()したほうがいいよ。
0623nobodyさん
04/11/02 05:50:58ID:XVal7AaO116は無視して115の言うとおりカンマ入れろ。
>>622
Response.Write StrSQL するなりしてちゃんとチェックすれば無問題。
むしろRecordSet使うほうがパフォーマンス悪いヨカン。
クエリの実行でエラーになったときのデバッグの基本は
1.Response.Write StrSQL して目視チェック。
2.Response.Writeの結果のSQL文をクエリ実行環境(SQL Serverの場合はクエリアナライザ、
アクセスの場合はクエリ作成→左上のアイコンをプルダウンして「SQL」を選んだ状態)
でコピペ →実行! →エラー内容を見る
でつ(・∀・)!
0624ASP素人
04/11/02 09:18:41ID:WxKWacb6カンマはどこに入れればよろしいのでしょうか?
0625nobodyさん
04/11/02 10:14:58ID:???insertの構文を見直してみよう。特に列の所。
0626nobodyさん
04/11/03 01:07:15ID:???つーか、ちゃんと基礎からSQLの勉強しようZe!
「お勉強ページ 勝手にリンク まとめサイト」スレより「SQL/DB」関連のリンク
http://program2ch.jugem.cc/?cid=14
0627nobodyさん
04/11/03 03:04:22ID:Fscx21N8・・・ってまだ早いかw
0628OpenTextFile
04/11/03 17:34:39ID:pUiAD0wAブラウザ(IE)で実行すると固まった状態になります。
どのようなことが考えられますか?
また、タイムアウトなりおこしてエラーとか出力する方法はないの
でしょうか?
ーーーーーーーーーーーーー以下スクリプトーーーーーーーーーーー
<% LANGUAGE=VBScript
DIM obj
DIM fo
Set obj=Server.CreateObject("Scripting.FileSystemObject")
Set fo=obj.OpenTextFile(Server.Mappath("text1.txt"),1,True)
Response.Write fo.ReadLine
fo.Close
Set fo = Nothing
Set obj = Nothing
%>
0629nobodyさん
04/11/03 20:19:59ID:???とりあえず、4行目のServer.Mappathがちゃんと目的のファイルのパス返してるかどうか、
そっから下のコードをコメントアウトして確認してみては。
あと、それだと一行読んで表示して終わりだけどそれで合ってるの?
ひょっとしてループのコード削ってカキコしてない? だとしたらループの終端条件も
チェックしてみませう。
0630nobodyさん
04/11/03 22:24:22ID:???InetMgr > 仮想ディレクトリのプロパティ > ディレクトリタブ > アプリケーションの設定欄 > 構成ボタン > デバッグタブ
デバッグのフラグ: 両方にチェック
スクリプトのエラーメッセージ: 上を選択
とりあえずこの設定をすればブラウザでエラーを拾える
0631nobodyさん
04/11/03 22:25:23ID:???0632nobodyさん
04/11/04 02:05:45ID:???まず、固まった状態とは何がどう固まっているの?
IEが反応しなくなって強制終了するしかなくなるってこと?
それともサーバから何も帰らないってこと?
0634nobodyさん
04/11/04 17:06:47ID:???0637nobodyさん
04/11/05 16:04:56ID:???使用者がパスを入力したときにサーバ側でパスから日付を複合化して
Date()と比較して合ってれば、ある処理をさせるようなスクリプトを考えてます。
MD5のような堅固な暗号じゃなくて構わないので、可逆的な暗号を作成する方法を
説明しているサイトとかあるかな?
今自分で考えているのは、許可する日付8桁に四則演算してやって・・・・
と考えていましたが、どうも上手くまとまらないんだYO
たすけて偉い人
0638nobodyさん
04/11/05 21:17:16ID:???0639nobodyさん
04/11/05 21:18:51ID:???0640nobodyさん
04/11/11 06:15:19ID:TWFMGtp50641nobodyさん
04/11/11 15:45:27ID:???0642nobodyさん
04/11/12 19:52:42ID:qd5J7hVzテキストファイルに1行ずつ
aaa
bbb
ccc
・
・
・
xxx
yyy
zzz
という文字列の記述があって、
あるaspファイルにアクセスする度に、上記テキストファイルを上から1行ずつ読み込み、
かつ読み込んだ文字列をテキストファイルから削除する動作をさせたいんです。
どなたか教えて下さい。
0643nobodyさん
04/11/12 21:41:52ID:???1. FileSystemObjectの使い方は知っていますか?
2. 何か、自分の使える言語で「テキストファイルに対する一般的な操作」は書けますか?
1. 2. に「はい」と答えられるなら自ずから問題は解決するはずです。
どちらかが「いいえ」なら、書籍、Web、MSDNのヘルプなどで勉強してください。
(今勉強しておけば、この先ASPでファイルを操作するときに困ることは格段に減ります。)
0644nobodyさん
04/11/12 22:44:39ID:???var fs = Server.CreateObject("Scripting.FileSystemObject");
var FILE = "C:\\test.txt";
with (fs.OpenTextFile(FILE,1)) {
Response.Write(ReadLine());
var wMSG = "";
while (!AtEndOfStream) { wMSG += ReadLine(); }
Close();
}
with (fs.OpenTextFile(FILE,2)) {
Write(wMSG);
Close();
}
0645nobodyさん
04/11/13 04:47:00ID:???vbscriptやhtml、javascriptを効果的に見分けられるような
エディタがあるんですかね。
0646nobodyさん
04/11/13 06:38:48ID:???俺はサクラエディタ使ってるけど。
0647nobodyさん
04/11/13 07:16:18ID:???■■■:FFFFFF
っていう感じで■3つを色コードFFFFFF(白)で表示ってのを
今は作ってあり、今はFFFFFFを直接書き換えて右端に更新ボタンを作ってあり
更新する事により色コードをチェック後DBを更新して■の色も
更新するように作ってあります。
ASPとはほとんど関係ない事ですが、クライアントから■をクリックしたら
別ウィンドウが開いて色の一覧が出て、選択して閉じるボタンを押すと
選択した色が選ばれているような感じにしてくれと言われたのですが、
ペイントみたいな感じは個人的にさけたいのですが、
見栄え的に何か良い方法、もしくは同じような事をやられた方、見えないでしょうか・・
内容的にはWEB商品の色を選ぶみたいな処理なんですが。
処理的には思い浮かぶのですが、IEで色選択をさせるってのを
画面として作った事がないのであえて質問させてもらいました。
よろしくお願いします。
0649462
04/11/13 13:29:20ID:tao/R1VF1…何となくですが、基本的な事ならできると思います。
2…JavaScriptしかできませんが、一般的な操作はできてると思います。
スイマセン、本当始めたばかりで右も左も分かりませんが、色々と勉強中です。
頑張って、軽くて負荷の少ない記述とか、セキュリティーも考慮した記述などができる様になりたいです。
>644さん
具体的な記述、ありがとうございます!
最初のwhileループ内にあるReadLineを、ReadAllに書き換えたら、期待通りの動作をしました。
あと644さんの記述で、withの使い方を覚えました。
本当に助かりました。
0650643
04/11/13 13:52:14ID:???罪滅ぼしに一つサイト紹介。知ってたらまたまたスマソorz
ttp://www.imasy.or.jp/~hir/hir/tech/js.html
ASPをJScriptで書くときに気を付けた方がよいポイントとかあるのでマジお勧め。
/* ちなみに「TIPS編」は目次準備中とあるが中身はちゃんとあるのでちうい。 */
0651nobodyさん
04/11/13 15:55:16ID:tao/R1VFいえいえ。
FSOって基本なのに、かなり上っ面なぞっただけで理解した気になってたんで、改めて教科書を読み直すきっかけになりました。
それにJScript解説のページ、すごく参考になります。
VBScriptはよく分からないので、こういうページはありがたいです。
ところで、また分からない所が出てきてしまいました。
落としてきたVBScriptで書かれたソースの中に、自作でJScriptの記述を入れて、
そのJScriptの記述からVBScriptをファンクションとして呼び出そうとしているのですが、
上手く動作しません。
ちなみにVBScriptの部分は、お金にからむ処理が記述してあるので、その部分をJScriptで書き直せってのは勘弁して下さい(T_T)
今失敗している記述はこんな感じです。
<SCRIPT LANGUAGE="JScript" runat="Server">
var hensu = new String(Request.Form("hensu"));
if(hensu != "undefined"){ FUN()}
</script>
<SCRIPT LANGUAGE="JScript" runat="Server">
function FUN(){
</script>
<%
response.write("FUNファンクションに入った<p>")
VBで色々と記述
%>
<SCRIPT LANGUAGE="JScript" runat="Server">
}
</script>
650で教えて頂いたサイトも参考に調べているのですが、今日18時までに、ある程度形にしないと怒られるんです。(休日出勤の為)
申し訳ありませんが、宜しくお願いします。
0652642
04/11/13 15:57:17ID:tao/R1VF上の書き込み、642です
0653nobodyさん
04/11/13 17:04:15ID:???<% @LANGUAGE = JScript %>
<!-- 上はページの先頭行(<html>開始タグよりも前)に書くこと -->
必要なHTML部分を記述
<%
// デフォルトスクリプト言語をJScriptにしたので、scriptタグで
// JScriptのコードを囲まなくても、<%〜%>で代用できる
// むしろ、scriptタグで囲んでしまうと、JScriptコードから
// VBScriptのプロシージャを呼べないっぽい
var hensu = new String(Request.Form("hensu"));
if(hensu != "undefined"){ FUN()}
%>
<!-- <SCRIPT LANGUAGE="JScript" runat="Server">
function FUN(){
</script>
<%
↑ではなく、こう↓する-->
<SCRIPT LANGUAGE="VBScript" runat="Server">
Function FUN()
response.write("FUNファンクションに入った<p>")
VBで色々と記述
End Function
</script>
<!--
%>
<SCRIPT LANGUAGE="JScript" runat="Server">
}
</script>
-->
0654nobodyさん
04/11/13 17:52:27ID:???function FUN() {
Response.Write "FUNファンクションに入った<p>"
'VBScriptで色々と記述
}
</script>
<script language="JScript" runat="Server">
if ((Request.Form("hensu").Item()) != "") { FUN(); }
</script>
0655654
04/11/13 17:58:14ID:???>>651
3行目の FUN() に 「;」 がない
JScriptからVBScriptの関数を呼び出す場合はVBScriptの関数を先に定義しておく必要があったような気がする。
漏れもJScript+レガシASP使い。
ここお勧めだから参考にするといいよ。
http://homepage3.nifty.com/aya_js/wsh/wsh202.htm
http://homepage3.nifty.com/aya_js/wsh/index.htm
0656nobodyさん
04/11/15 14:41:40ID:50MlQxDcありがとうございます。
土曜日は、残念ながら上からの指示で、全部VBScriptで書くことになってしまいました。
せっかく具体的な記述を頂いたのに、申し訳ありません。
ただ、僕が基本的にJScriptを使っているので、また教えて頂いた記述を使う機会があると思います。
テキストで保存させて頂きました。
で、今日は今日で、新しい壁にぶつかっているのです…。
formから送られた内容を受け取り、変数に代入したら、1度目はいいのですが、それ以降ブラウザの更新をかけても、変数の内容が空にならないんです。
<% Response.Buffer = true
A = Request.Form("A")
%>
<html><head><title>フォームの練習</title><body>
<meta http-equiv="Content-Type" content="text/html; charset=SHIFT_JIS">
<FORM action="./renshu_form.asp" method="POST">
Aを入力して下さい<br>
<INPUT type="text" name="A" size="30" maxlength="32"><br>
入力内容が正しければ、サブミットボタンを押して下さい<p>
<input type="submit">
</FORM>
<%
If A <> "" Then
Response.Write("ifに入った<br>")
End If
%>
これだと、2回目以降、常に変数Aに前回の値が入っているので、必ずif節に入ってしまいます。
また、更新をかける度に「情報を再送信しないと、ページを更新できません」という警告が出るのですが、以前formを使った記述を書いた時は、こんな警告は出なかったように思うのですが…。
申し訳ありませんが、またご教授お願いします。
0657ASP素人
04/11/15 18:41:13ID:wubhQkHVみなさんに教えてもらったとおりやってみたのですがだめでした。
カンマ入れたりしても・・・・・・
'=================================================
'----- DBに接続
'=================================================
Sub ConnDB()
'スクリプトと同じフォルダにあるAccessのdb1.mdbに接続します。
'DBName="Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & _
'Server.Mappath("member.mdb")
Set ObjConn = Server.CreateObject("ADODB.Connection")
ObjConn.Mode = 2
ObjConn.open "member" 'DBName
StrSQL = "select * from member"
Set ObjRS = Server.CreateObject("ADODB.Recordset")
ObjRS.Open StrSQL, ObjConn
'Response.Write ObjRS.Fields("name")
'Response.Write ObjRS.Fields("mail")
End Sub
'=================================================
'----- DBにデータを追加
'=================================================
Sub UpdateDB()
ObjRS.AddNew
ObjRS.Fields("name") = name
ObjRS.Fields("mail") = mail
ObjRS.Update
End Sub
で、結局こういう状況です
0658ASP素人
04/11/15 18:42:23ID:wubhQkHV現在の Recordset は更新をサポートしていません。
プロバイダか、選択されたロックタイプの限界の可能性があります。
となっていますが、神様、教えてください
0659nobodyさん
04/11/15 22:05:55ID:???通りすがり、かつASPの事はそれほど詳しくないのだけど…
> ObjRS.Open StrSQL, ObjConn
ロックタイプを指定しない場合、既定では読み取り専用のはずだけど。
Openメソッドの第4引数に適切なロックタイプを設定すればいいのでは?
0660nobodyさん
04/11/15 23:12:36ID:???>ObjConn.open "member" 'DBName
そもそも Conection.Open メソッドに "member" ちうテーブル名だかmdbファイル名だか分からない
ものを渡しているのが気になるのだが。
とりあえず >659 氏の仰るとおり既定のロックタイプは 1(adLockReadOnly) なので、
第四引数に 3(adLockOptimistic) か 2(adLockPessimistic) を指定しよう。
ObjRS.Open StrSQL, ObjConn, ,3
みたいに
0661ASP素人
04/11/16 11:27:18ID:Dc5bDdUYで先には進んだわけなのですが、
'=================================================
'----- DBにデータを追加
'=================================================
Sub UpdateDB()
ObjRS.AddNew
ObjRS.Fields("name") = name
ObjRS.Fields("mail") = mail
ObjRS.Update (←ここでエラー)
End Sub
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][ODBC Microsoft Access Driver] 更新可能なクエリであることが必要です。
とでます。
もうすこしみたいなのでよろしくお願いします。
0662nobodyさん
04/11/16 11:49:07ID:???そもそも更新可能なレコードセット作れたっけ?
一辺、単純にUPDATE文投げてみそ。
0663615
04/11/16 13:43:40ID:???主キーが存在しますか?
Accessのテーブルは主キーがないと更新できないらしいです。
0664660
04/11/16 21:43:12ID:???VBScript で以下の文を実行したらちゃんと走ったから、ODBCのせいでも主キーのせいでもない模様。
ASP は環境作るのめんどいからパス。
時に、objRS とか name ってどこで宣言してるの?まさか局所変数だったりして…
objRS や objConn を別のサブルーチンで Close してたり、 "SELECT FROM 〜" の 〜 を
mdb名と勘違いしてたり、objRS が Applcation 変数だったり…
前提
ADOX で JET4.0 の hoge.mdb を作成し、 ADODB.CONNECTION を刺して
connection.execute メソッドで以下の 2つの SQL 文を投入。
CREATE TABLE hoge( id INTEGER , name TEXT(25) );
INSERT INTO hoge VALUES(2, 'mumumu');
--------------------
set c = createobject("adodb.connection")
set r = createobject("adodb.recordset")
c.mode=2
c.open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=c:\hoge.mdb"
r.open "select * from hoge", c,,3
r.addnew
r.fields("id") = 4
r.fields("name") = "mamama"
r.update
c.execute "UPDATE hoge set name='mimimi' where id=2"
c.execute "insert into hoge values(5,'momomo');"
r.close
c.close
set r = nothing
set c = nothing
----------------
0665nobodyさん
04/11/16 21:44:53ID:???> 更新をかける度に「情報を再送信しないと、ページを更新できません」という警告が出るのですが、
POSTで送っているから。
更新すると Request.Form("A") の内容もまた送られてしまうため、Aが空にならないんだと思う。
0667660
04/11/16 21:47:31ID:???確認してみれ。ASPの実行ユーザが変えられていたら、そのユーザが mdb を変更できるか。
0669615
04/11/17 15:06:19ID:???>時に、objRS とか name ってどこで宣言してるの?まさか局所変数だったりして…
漏れももしやとは思ったのだが、エラーメッセージがそれらしく出力されてるから
グローバルになってるのかとおもたのだよ。
ASP素人氏には各変数をどこで定義しているか聞きたい。
0670ASP素人
04/11/17 21:41:41ID:87XfvWNx<%
DimObjConn ,ObjRS
'パラメータを取得します。
name = Request.Form("name")
mail = Request.Form("mail")
act = Request("act")
'デフォルトページを登録画面に設定します。
if act = "" then
act = "ent"
end if
これでしょうか?
一番初めの部分です
0671nobodyさん
04/11/18 01:45:44ID:???~~~~~~~
ここにスペースが無いのはコピペミス?
0672615
04/11/18 09:47:24ID:???>670
<% のすぐ下の行に
Option Explicit
を書き込んでみて。未定義の変数が使われるとエラーが表示されるようになるから。
既に記述していたら不要だけど。
現状では変数の有効範囲が曖昧で混乱を招いているからおながいします。
0673ASP素人
04/11/18 13:31:45ID:DA9fr5zwそれはコピペミスでしたすんません。
>>672
やりました。
そしたら
Microsoft VBScript 実行時エラー (0x800A01F4)
この変数は宣言されていません。: 'name'
/boshu.asp, line 6
と・・・・
権限は一応チェックしますた。
0674659
04/11/18 14:29:47ID:???可能なら使用している全ての変数を明示的に宣言して。
あとベタだけどAccessのメニューでテーブル[member]に書き込み権限があるか
みてください。
0675nobodyさん
04/11/18 16:25:00ID:y/ZLmA11ttp://www.geocities.jp/activex_treeview/
↑OS2000 Vbはインストールされていない端末で
ActiveXを使ったツリービューが見れないだよね。
xp や NTでは見ることが出来たんだが・・・?
どの端末もVbが入っていれば見れます。
Vbなしで見る方法ありますか?
Vbランタイムでは×
ASPスレにも書き込むけど、だれか教えて。何が必要なんだ〜??
0676615
04/11/18 18:24:49ID:???「この変数は宣言されていません」っていうエラーが消えるまで
変数を定義しる。ついでにその変数は何のために使う変数なのか
コメント入れとけばメンテが楽になるよ。まぁこの変数名なら分かるけど。
それから更新対象のテーブルの定義を書き込んでみて。
フィールド名とかデータ型の一覧。
そしてフィールド名の左隣の列に鍵マークが付いているか。
Accessならテーブル選んでデザインをクリックかなんかすれば見られる。
0677615
04/11/18 18:30:23ID:???マルチは感心せぬが。
classidをレジストリから検索したら、ツリービューコントロールは
COMCTL32.OCX
の中に入っているらしいことが判明。
対象PCにコピーしてREGSVR32.EXEで手動登録すれば動くかも。
※OSがどうなっても保証はしません。知りません。独り言です。気合いでGO!
0678659
04/11/18 21:06:15ID:???テーブル member(主キー無し)
カラム name (テキスト型 サイズ:20), mail (テキスト型 サイズ:20) 作成後、
ASP素人氏のコードを借りて IIS5.0 の環境で下記スクリプトを実行してみた。
(フォーム)
<html>
<head>
<title>Test Form</title>
</head>
<body>
<form action="test.asp" method="post">
name : <input type="text" name="name" size="20"><br>
mail : <input type="text" name="mail" size="20"><br>
<input type="submit" name="submit" value="送信">
</form>
</body>
</html>
0679659
04/11/18 21:08:46ID:???<html>
<head>
<title>ASP_TEST</title>
<%
Dim ObjConn ,ObjRS
Dim Name, Mail
Sub ConnDB()
Set ObjConn = Server.CreateObject("ADODB.Connection")
ObjConn.Mode = 2 'adModeWrite - 2 adModeReadWrite - 3
ObjConn.ConnectionString = "Driver={Microsoft Access Driver (*.mdb)};" & _
"DBQ=C:\Temp\www\member.mdb"
ObjConn.Open
StrSQL = "select * from member"
Set ObjRS = Server.CreateObject("ADODB.Recordset")
ObjRS.Open StrSQL, ObjConn,, 3
End Sub
Sub UpdateDB()
ObjRS.AddNew
ObjRS.Fields("name") = Name
ObjRS.Fields("mail") = Mail
ObjRS.Update
End Sub
%>
</head>
0680659
04/11/18 21:09:47ID:???<%
Name = Request.Form("name")
Mail = Request.Form("mail")
Call ConnDB
Call UpdateDB
ObjRS.Close
ObjConn.Close
Set ObjRS = Nothing
Set ObjConn = Nothing
%>
<h4>テーブルmemberの内容</h4>
<%
Call ConnDB
Response.Write "<table border=" & """1""" & ">"
Do Until ObjRS.EOF
Response.Write "<tr><td>"
Response.Write ObjRS.Fields("name").Value & _
"</td><td>" & ObjRS.Fields("mail").Value & "</td></tr>"
ObjRS.MoveNext
Loop
Response.Write "</table>"
ObjRS.Close
ObjConn.Close
Set ObjRS = Nothing
Set ObjConn = Nothing
%>
</body>
</html>
0681659
04/11/18 21:14:12ID:???ユーザー権限とかテーブルのアクセス権に問題が無いなら
やっぱり変数のスコープの問題かも。。。
0682ASP素人
04/11/19 12:15:43ID:LqCvowdj一応コピペして一部なおしてやってみたのですが、
エラーでがでました。
ってことはおっしゃるとおり
>ユーザー権限とかテーブルのアクセス権に問題が無いなら
やっぱり変数のスコープの問題かも。。。
ということなんでしょうかね〜。
IIS5でXPproの環境なのですが、
↑のユーザー権限とテーブルのアクセス権について徹底的に教えていただけますか?
0683659
04/11/19 13:12:52ID:???ので使うなら取り除かないとエラーが出るよ。
>ユーザー権限とテーブルのアクセス権について徹底的に教えていただけますか?
いや、別にそんなに難しい話じゃないのよ('A`)
ユーザー権限については>>660氏が>>667で書いてある事がどうかって事だし、
テーブルのアクセス権は、mdb作成→テーブル作成の間に「ユーザー/グループの権限」
をいじっていなければ問題は無いはずだから(Access2000の話なんでOffice XP以降のバージョンは違うかも)。
気になっていたんだけど、>>670と>>657は両方とも boshu.asp 内にあるのかね?
差し支えなければ boshu.asp のコード全部晒してみ?
それと>>615氏の言っている更新対象のテーブルの定義も。
0686615
04/11/19 16:15:11ID:???駄目ですたって何が駄目ですたの?
表示されなかったから駄目って書いたのだろうけど、
REGSVR32.EXEでの登録は成功したの?
あと一応登録後、再起動してから試してみた?
っつぅかぶっちゃけ分かんないしスレ違いなので書きたくないのだが(ォ
VisualStudio(6.0)に付いてくるDependency Walkerっつぅツールで
COMCTL32.OCXを覗くと、このファイルが使用している他のファイルのリストが
みられる。
0687nobodyさん
04/11/19 16:25:56ID:Dfi0LnleユーザーAが必要事項を記入してサブミットを押しました。
サーバ内のテキストファイルがopenして、入力内容を書き込んでます。
この時、ユーザーBがサブミットボタンを押したらどうなるのでしょうか?
テキストファイルをcloseする前に、open命令が出る形になるので、マズイような気がします。
もしエラーが出るようなら、解決策、もしくは皆様の対策を教えて下さい。
0688659
04/11/19 16:46:13ID:???参考になるかよーわからんけど
【How to use licensed ActiveX controls in Internet Explorer】
http://support.microsoft.com/default.aspx?scid=kb;en-us;159923
0689675
04/11/19 16:49:37ID:???すみません。
REGSVR32.EXEで登録しました。
レジストリーエディタでID検索したら
hitはしたので登録は大丈夫だと思います。
もちろん再起動もしました。でも表示されませんでした。
Dependency Walkerはこれから使ってみようと思います。
スレ違いなのは承知です。ただどこのスレに書けばいいのだろう・・・。
615氏もう少しお付き合いください。申し訳ない。
0691675
04/11/19 17:39:38ID:???まじ感動!!出来ました。かなり苦戦いたしましたが表示されるようになりました。
http://support.microsoft.com/kb/159923
ここも参考になりました。615氏もご迷惑をおかけしました。
0692nobodyさん
04/11/19 23:09:27ID:???「ファイル ロック 排他」あたりをキーワードにぐぐってみれ。
具体的にはApplication.LockとUnlockを使うことになるのかな。
0693nobodyさん
04/11/20 01:45:28ID:???Application.Lock
↓
ファイル入出力とか複数ユーザが同時にやるとヤバそうな処理
↓
Application.Unlock
0694nobodyさん
04/11/20 09:08:44ID:???http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/jpiis/iishelp/iis/htm/asp/vbob84h7.asp
テキストファイルのロック制御はFileSystemObjectが勝手にやってくれてるものだと思ってるんだが…
その辺詳しい人いる?
0695ASP素人
04/11/20 10:10:40ID:+ocqxxRzOption Explicit
DimObjConn,ObjRS
'パラメータを取得します。
name = Request.Form("name")
mail = Request.Form("mail")
act = Request.Form("act")
'デフォルトページを登録画面に設定します。
if act = "" then
act = "ent"
end if
'登録確認画面でエラーチェックをします。
if act = "entconf" then
flg_err = ""
if name = "" then
flg_err = "name"
end if
if mail = "" then
flg_err = "mail"
end if
end if
'エラーがある場合はエラー表示画面に移動させます。
if flg_err <> "" then
act = "err"
end if
0696ASP素人
04/11/20 10:11:45ID:+ocqxxRz'HTML表示処理開始
'=================================================
%>
<% Call ConnDB'DBに接続します。 %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=x-sjis">
<title>メンバー募集フォーム</title>
</head>
<body>
<h2>メンバー募集フォーム</h2>
<%
'-- ページ内容の表示
Select Case act
Case "entconf"'登録確認
Call Gamen_entconf
Case "kan"'処理完了
Call Gamen_kan
Case "err"'エラー
Call Gamen_err
Case else
Call Gamen_ent
end select
%>
</body>
</html>
<%
Call CloseDB
0697ASP素人
04/11/20 10:13:41ID:+ocqxxRz'----- 登録画面
'=================================================
Sub Gamen_ent( )
%>
<form method="POST" action="boshu.asp">
<table border="1">
<tr>
<td>お名前</td>
<td><input type="text" name="name"></td>
</tr>
<tr>
<td>メールアドレス</td>
<td><input type="text" name="mail"></td>
</tr>
</table>
<input type="hidden" name="act" value="entconf">
<input type="Submit" name="sub" value="確認">
<br>
</form>
<%
End Sub
0698ASP素人
04/11/20 10:14:05ID:+ocqxxRz'=================================================
'----- 登録確認画面
'=================================================
Sub Gamen_entconf( )
%>
<h2>登録内容を確認してください</h2>
<form method="POST" action="boshu.asp">
<table border="1">
<tr>
<td>お名前</td>
<td><% =name %></td>
</tr>
<tr>
<td>メールアドレス</td>
<td><% =mail %></td>
</tr>
</table>
<input type="hidden" name="act" value="kan">
<input type="Submit" name="sub" value="登録実行">
<br>
<!-- 隠し項目にセット -->
<input type="hidden" name="name" value="<% =name %>">
<input type="hidden" name="mail" value="<% =mail %>">
</form>
<%
End Sub
0699ASP素人
04/11/20 10:15:02ID:+ocqxxRz'=================================================
'----- 処理完了画面
'=================================================
Sub Gamen_kan( )
%>
<% Call UpdateDB()'データを追加します。 %>
<form method="POST" action="boshu.asp">
<table border="0">
<tr>
<td>
<h2>ご登録ありがとうございました</h2>
</td>
</tr>
</table>
<input type="hidden" name="act" value="iti">
<input type="Submit" name="sub" value="登録画面へ">
<br>
</form>
<%
End Sub
0700ASP素人
04/11/20 10:16:04ID:+ocqxxRz'=================================================
'----- エラー表示画面
'=================================================
Sub Gamen_err( )
%>
<form method="POST" action="boshu.asp">
<table border="0">
<tr>
<td><h2>エラーがあります</h2></td>
</tr>
</table>
<input type="button" value="戻る" onclick="history.back();">
<br>
</form>
<%
End Sub
'=================================================
'----- DBに接続
'=================================================
Sub ConnDB()
'スクリプトと同じフォルダにあるAccessのmember.mdbに接続します。
DBName="Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & _
Server.Mappath("member.mdb")
Set ObjConn = Server.CreateObject("ADODB.Connection")
ObjConn.open DBName
End Sub
0701ASP素人
04/11/20 10:17:09ID:+ocqxxRz'=================================================
'----- DBにデータを追加
'=================================================
Sub UpdateDB()
StrSQL = "insert into member ("
StrSQL = StrSQL & " name, "
StrSQL = StrSQL & " mail "
StrSQL = StrSQL & ") values ("
StrSQL = StrSQL & "'" & name & "',"
StrSQL = StrSQL & "'" & mail & "'"
StrSQL = StrSQL & ")"
ObjConn.Execute StrSQL
End Sub
'=================================================
'----- DBを閉じる
'=================================================
Sub CloseDB()
ObjConn.Close
Set ObjConn = Nothing
End Sub
%>
0702ASP素人
04/11/20 10:17:54ID:+ocqxxRz0703nobodyさん
04/11/20 14:00:41ID:???Applicaton.Lockを使う場合
ファイルへのロックというより、ファイル操作するコードへの進行をロックする感じ。
Javaのsynchronizedとか、Win32APIだとCriticalSectionぽい発想かな。
0704nobodyさん
04/11/20 14:56:12ID:???いやだからApplication.Lockじゃ
>ファイルへのロックというより、ファイル操作するコードへの進行をロックする感じ。
が出来ないって言ってるわけで。
0705ネタではありません。
04/11/20 15:35:17ID:???すみません、困っています。
どなたかWEBアプリケーションを作れる方、
相談にのっていただけませんか?
「こういうWEBプログラムが作りたい」という案は
すでにあります。自宅サーバーもすでにあります。
平日の夜、都内で焼肉をおごります。
もし、「それなら作れるよ」ということでしたら
数万円の謝礼をお支払いする用意があります。
よろしくお願いいたします。
0706659
04/11/20 17:42:11ID:???>ASP素人氏
>>695-701を Option Explicit を取った状態で
>>678-680で使ったmdbで試してみた。
………普通に登録できますた。。。
ConnDB()とUpdateDB()を>>657のコードに差し替えて
ConnDB()内の ObjConn.open .... の部分だけ書き換えたコードも
試したけど、これも登録できますた。
コピペの内容を見る限り、
とりあえず変数の取りまわしがおかしいって事はなさそうだから、
後は権限周りとmdbのテーブルを徹底的に確認しる!
それとパーソナルファイヤーウォールとか入っているなら無効にしてから
実行してみて。
それでも駄目なら、そちらのテスト手順の問題かWindows XPにSP2当てておかしくなりますた。。。
ぐらいしか思いつかんです。
0707テム・レイ
04/11/21 01:14:31ID:IhuSU57VまれにあるIISの制御不能状態。
(再起動すれば直るやつ)
の発生条件は結局なんなのでしょうか。
無限ループやってるとかバカなオチではないです。
どうもまれに発生するようで・・
0708テム・ジン
04/11/21 01:59:39ID:ZshPsh4wまれにあるパソコンの制御不能状態。
(再起動すれば直るやつ)
の発生条件は結局なんなのでしょうか。
0709ASP素人
04/11/28 00:40:42ID:dbF1/8oJ解決しますた。
やはり権限に問題あったと思われます。
DをNTFSからFAT32にしてやってみたところちゃんとできますた。
心から感謝申し上げます。
で・・・・
'=================================================
'----- DBにデータを追加
'=================================================
Sub UpdateDB()
StrSQL = "insert into member ("
StrSQL = StrSQL & " name, "
StrSQL = StrSQL & " mail "
StrSQL = StrSQL & " id "
StrSQL = StrSQL & " pass "
StrSQL = StrSQL & ") values ("
StrSQL = StrSQL & "'" & name & "',"
StrSQL = StrSQL & "'" & mail & "'"
StrSQL = StrSQL & "'" & id & "'"
StrSQL = StrSQL & "'" & pass & "'"
StrSQL = StrSQL & ")"
ObjConn.Execute StrSQL
End Sub
↑のとこなんですけど
idとpassを増やしてみたらすぐエラーですた・・・。
きっとStrSQL = StrSQL & " name, "のnameの後の「,」とかにいろいろ関係しているのかな?
とか思ったんですけど、どうなんでしょうか・・・??
どういうふうに直せばよろしいでしょうか?
0710nobodyさん
04/11/28 01:09:00ID:???列名の方はまんま「mail,」「id,」として、値の方は「〜 & "'"」を「〜 & "',"」ね。
SQLでエラーが出たら、まずエラーになってるSQL文を画面なりログに出力してみませう。
あと、コマンドラインからosqlが使えるなら、osqlで接続してそのSQL文を直接投げると、
SQLServerからもう少し詳しいエラー情報をもらえるかも。
0713ASP素人
04/11/28 16:34:50ID:30XD0iuk無事成功しますた。
ありがとうございました。
0714nobodyさん
04/11/28 21:15:58ID:???0715nobodyさん
04/11/29 11:22:27ID:???俺はいつもADO使ってUpDateしちゃうんだけど。
0716nobodyさん
04/11/30 01:35:41ID:???ただ、ADO以外の世界に行ったとき、UPDATEが使えないと困ることもあるかもね。
0717nobodyさん
04/11/30 07:22:16ID:tivpUcTGアラームmailを対象者に対し発信するというプログラムを作ることになりました。
多分、バッチを動かして・・・という事だとは思うんですが・・・
ご経験のある方いらっしゃいますか?
参考になるサイトなど教えていただけると幸いです。
(IIS+SQLServer)
0718nobodyさん
04/11/30 12:01:09ID:???0720717
04/11/30 20:31:15ID:tivpUcTGレスありがとうございます。
いろいろ調べて見ました。
BASP21のbhelper.exe? basp21p.iniの設定?・・・
basp21p.iniに**.asp(メール送信)のパスを書いて
そのaspファイルを実行するためのbatファイルを
タスクスケジュールで動かすということでしょうか?
さらに調べて見ます・・・
0721719
04/11/30 20:47:48ID:???VBScriptファイル(例:dbcheck.vbs)にDBのチェックルーチンを書いてBASP21のSendMailを使ってメールを送る。
タスクスケジュールからそのVBScriptファイルを起動するように設定するだけ。batは別にいらない。
ほかにもいろいろやり方ある。がんがれ。
0722nobodyさん
04/11/30 20:51:52ID:???SQL Server Agent に監視してもらうのがいいんでない?
0723717
04/12/01 19:20:01ID:mG+eCHVU下記のようなものをタスクで動かすといったことでしょうか?
m_from = "******@***.co.jp"
m_title = "アラーム"
m_to = "*****@***.co.jp"
m_sv = "***.**.**.***"
Set Conn = Server.Createobject("ADODB.Connection")
Conn.Open "usr1","usr1","user2"
SQL = "select * from alarm"
Set db = Server.Createobject("ADODB.Recordset")
db.Open SQL,Conn,3,3
gen = trim(db("AAA"))
zan = trim(db("BBB"))
shamei = trim(db("CCC"))
if gen < zan then
Do while NOT db.eof
m_name = "社名:" & shamei
db.MoveNext
Loop
Set Objbasp = Server.Createobject("basp21")
rc = Objbasp.Sendmail(m_sv,m_to,m_from,m_title,m_name,"")
end if
Conn.Close
0725nobodyさん
04/12/04 18:06:40ID:OgiZkJNRauの古い機種(A1304T)だとRedirectがききません。
ジャンプ先のURLを直打ちしてやると問題無く表示されます。
最近の機種だと、期待通りの動作をします。
何か良い解決策はありませんでしょうか?
最悪、auだと判明した時点で、「auの方はこちら」と
HTMLでリンクを表示させようと思ってますが、ちょっとそれはカッコ悪いので…。
0726nobodyさん
04/12/04 18:25:30ID:???リダイレクトでなくServer.Transferしてしまうのはどうか。
0728nobodyさん
04/12/05 01:30:19ID:0MhJ+aQV昔DBマガジンか何かで読んだけど
ADODB.Command + Parameterオブジェクト
↓
sql文を ADODB.Connection で実行
↓
Recordsetでfieldを入力し、 Update
らしい。
0729728
04/12/05 01:31:29ID:???Commandオブジェクトが一番速いらしい
0730nobodyさん
04/12/05 02:18:05ID:???ストアドプロシージャを使えるならそれが最速だわな。
RecordSet でUpdateは、バッチ更新モードにしたら結構速そうな気がするけどどうなんだろう?
0731こうたろう
04/12/08 02:00:58ID:+LYJFTt5<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<META http-equiv="Content-Style-Type" content="text/css">
</HEAD>
<BODY>
<P>フォームとPHPの連携</P>
<FORM method="POST" action="smp4-01.php">
キーワード <INPUT size="20" type="text" name="keyword">
<BR>
<BR>
<INPUT type="submit" name="exec" value="実行">
<INPUT type="submit" name="cancel" value="キャンセル">
</FORM>
</BODY>
</HTML>
にアクセスしてPHPと文字を入力してsmp4-01.php↓
<?php
print $keyword . "<BR>";
print $exec . "<BR>";
?>
に飛ぶんですけど
Notice: Undefined variable: keyword in C:\Program Files\Apache Group\Apache2\htdocs\smp4-01.php on line 3
Notice: Undefined variable: exec in C:\Program Files\Apache Group\Apache2\htdocs\smp4-01.php on line 4
どうしても↑になるのは何がいけないんでしょうか?宜しくお願いします。
0733nobodyさん
04/12/08 10:52:16ID:???0734715
04/12/09 11:48:01ID:???メモしますた。
全然関係ないと思うけど、レコード件数を数えるのに
ADODBのRecordCountとSQLのCount(*)で時間を比べたらSQLのが確実に早かったです。
0735nobodyさん
04/12/09 18:26:25ID:???Count(主キー列名)にするともっと速いらしいぞ。
0736ASP素人
04/12/10 11:17:31ID:Z21oO7eiユーザーごとにページ振り分けをASPでしたいんですが、
どのページ参考にすればいいですか?
0737nobodyさん
04/12/10 15:35:46ID:eati1ZOZJScriptでcookieの有効期限を1時間後に設定したいのですが、上手く動きません。
ソースはこんな感じです。
var d,ti,kigen,d2;
d = new Date();
ti = d.getTime();
kigen = parseInt((ti + 600000),10);
d2 = new Date(kigen);
//クッキーの作成
Response.Cookies('kukki').Expires = d2;
//クッキーの受信
Response.Write(Request.Cookies('kukki'));
Response.End();
クッキーの作成の部分で「型が一致しません」と表示されエラーになってしまいます。
宜しくお願いします。
0738nobodyさん
04/12/10 15:51:37ID:???http://www5a.biglobe.ne.jp/~n_rieko/asp/9.htm
http://www.ken3.org/cgi-bin/test/test066-2.asp
http://labo.heisei-tech.co.jp/Www/Asp/8.htm
0739nobodyさん
04/12/10 18:01:17ID:eati1ZOZありがとうございます。
ただ、分単位での期限設定が出来ません。
60分後にクッキー削除したくて、以下の様に記述するとエラーになります。
Response.Cookies("cookie1") = "kuki"
Response.Cookies("cookie1").Expires = 60
2行目の部分を
Response.Cookies("cookie1").Expires = Date+1
というような、1日単位での設定はできてるみたいなのですが。
Cドライブのcookiesフォルダの中に、クッキーが作成されないのも気になります。
あと、できればJScriptでの記述が載っているページも教えて頂けませんか?
VBは慣れてないのでムズカシイです…。
0740nobodyさん
04/12/10 19:06:42ID:???現在の日付時刻に60分足したらいいだけじゃないのか?
0741nobodyさん
04/12/11 12:55:51ID:nhn6UiYDそう思ってJSで、737の様な記述にしたんですが、上手く動かず。
VBでは739の次に
Response.Cookies("cookie1").Expires = Date + Minute(60)
という記述も試してみたのですが、ダメでした…。
VBでもいいので、現在時刻に60分を追加する方法を教えてもらえませんか?
0742nobodyさん
04/12/11 13:34:11ID:???聞くだけではなく自分で調べる癖をつけましょう。
http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/script56/html/vsfctDateAdd.asp
0744nobodyさん
04/12/16 11:41:35ID:???ASPでExcelを生成・操作するとき
IISが実行されているサーバに
MS-Officeがインストールされている
必要はあるのでしょうか?
0745nobodyさん
04/12/16 12:54:00ID:???あまり関係ない。
0746nobodyさん
04/12/16 23:26:53ID:???0747nobodyさん
04/12/17 01:04:32ID:???多分鯖にExcel入ってないとダメでそ。
0748nobodyさん
04/12/17 01:15:37ID:???[HOWTO] 書式付きの Excel ブックを作成して MIME コンテンツとしてストリーム配信する方法
http://support.microsoft.com/default.aspx?scid=kb;ja;271572
0749nobodyさん
04/12/17 01:51:02ID:I091fOI9Webサーバ:Win2k IIS5 + ASP(VBScript) (Shift-JISでコーディング)
DBサーバ:Fedora core + PostgreSQL7.4 (UTF-8でTable作成)
環境でASPの勉強をしているのですが、
ADOでデータを取得した場合 文字化けが発生しました。
(DBサーバをEUCにしたら文字化けはしません。)
UTF-8 のデータを扱いたい場合、注意する点等あれば教えてください、、。
0750749
04/12/17 01:52:28ID:???create -E UTF-8 データベース名
でDBを作成しました。。
0751745
04/12/17 10:54:15ID:???これ使ってExcel保存する場合は鯖にExcelなくても大丈夫
中途半端な説明でごめん。
ただこれで保存してもソース見るとただのHTMLでXLMじゃないから
注意してねん
0752nobodyさん
04/12/17 14:53:02ID:???正直PostgreSQLスレで聞くべきだと思うのだけど…
ざっと思いついた確認事項
1.コンソールから psql -l でデータベースのエンコーディングを確認する
2.psqlで select * from <該当テーブル名> で文字化けして取り込まれていないかチェック
3.クライアントエンコーディングの設定
特に3番目は要チェック
0754nobodyさん
04/12/22 19:38:54ID:???処理が非常に重いためブラウザへの出力処理がかなり遅れます
重い検索処理をしている間は「検索中」と表示したいのですが
どうやればいいでしょうか(´・ω・`)
0755nobodyさん
04/12/23 00:45:05ID:???一番簡単な方法が、
「検索中」と書いたプレーンHTMLからMETAタグでASPに飛ばす。
ファイルが2つになるのが嫌ならQueryString使えばいい
test.asp にアクセス
↓
<META>タグですぐに test.asp?search にリダイレクト
↓
サーバ内で計算している間はページ遷移が起きないため test.asp に書かれている「検索中」が表示されたまま
↓
サーバ内で計算が終わると、ブラウザに test.asp?search の内容が送られる
ちなみにASPのバッファのフラッシュとかすればできるみたいだけど、漏れはできた試しがない
0756nobodyさん
04/12/23 00:51:06ID:???<%
if (Request.QueryString().Item()!="search") {
%>
<html lang="ja">
<head><meta http-equiv="Refresh" content="0;URL=test.asp?search"></head>
<body>検索中...</body>
</html>
<%
} else {
%>
<html lang="ja">
<head>
....
0757nobodyさん
04/12/23 02:22:41ID:???ありがとうございます、
丁寧に例まで書いてくれて本当に・゚・(ノД`)・゚・。
0758nobodyさん
04/12/24 16:19:31ID:???もしその中に「SELECT」とか「"」とか入力されたらエラーになりますよね。
例)「名無し」と入力すると
SELECT * FROM Test WHERE Name = '名無し'
これがもし「SELECT」「'」だったらエラーが返ってきます。
そういったSQL文に含めちゃいけない文字や単語一覧が載ってるサイトとかありますか?
例文とかあると助かるのですが。
0759nobodyさん
04/12/24 19:36:58ID:???それは板違い。データベース板へGO!
一つだけ言っとくと「SQL文に含めちゃいけない文字」なんて無い。
要はデータベースにとって特別な意味を持つ文字(デリミッターに使う文字とかワイルドカードとか)
を含む場合は、それに応じた処理をすればいいだけの話。
0761758
04/12/25 11:58:10ID:???0762nobodyさん
05/01/05 11:17:30ID:???データベースのヘルプファイルのキーワードのところに予約語と入力すれば一覧表が表示されるが。
0763nobodyさん
05/01/11 22:42:19ID:???ASPでAccess使うやつは糞って言われてるのは何故ですか?
検索しても分かりませんでした(´・ω・`)
0765nobodyさん
05/01/12 08:28:06ID:???みんなmdbは糞だいって無理にMSDE使いたがるけど、
MSDEでWebDBやってるデータベースのほとんどはmdbでも十分。
mdbなんてコピーするだけで別のサーバにデータ移せるし、インストールもいらないしね。
ADOで接続するなら接続プロバイダーが違うだけだから、mdbでやって不都合があるなら
MSDEや他のDBにアップサイジングするのをおすすめします。
0766763
05/01/12 23:32:10ID:???レスサンクス!
なるほど、それじゃ特別に欠点があるわけじゃないんですね、、
今学校の課題でASP+mdbでプログラムを作ってるんですが
プログラムのサイズが大きくなってくるに伴い、
Provider (0x80004005)
エラーを特定できません
というエラーを出すようになってしまったんです。
エラーの出るタイミングはランダムでまったく出ないときもあります
一度でると数秒待って実行しないと連続で出ます
エラーは
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open sp
で発生してるみたいです
開発&実行環境は
Win XP Pro,
IIS 5.1
一応学校の教師にも聞いてみたんですがタスクが壊れてるんじゃないかな
と言う答えだけで解決はできませんでした
もしタスクが壊れているとしたら解決法はないでしょうか、
もし違う原因が考えられたらそれも教えて欲しいです
よろしくお願いします。
0767nobodyさん
05/01/13 00:34:44ID:???○:スタック
(;´Д`)
0768水瓶
05/01/13 01:20:49ID:b40uSWu1まず、現状をご報告致します!
サーバー環境
Windows2000 Server
IIS5.0
basp21
クライアントのブラウザからJPEGファイルのアップロード
をさせたいのですが・・・サイズが大きいファイルをアップ
ロードされてしまいます。サーバー側でアップロードファイル
のサイズ指定をしたい所ですが、クライアントの中には面倒臭い
と言う方が多く・・説明時間が非常にもったいないので。
サーバー側でアップロードされた画像ファイルのサイズ変更を
行なうにはどうしたらよろしでしょうか?
※ちなみにレンタルサーバーを借りているので、コマンドを使用
して画像を一括縮小するようなexeは起動できません。
みなさまどうかお力をお貸し下さい、宜しくお願い致します。
0770nobodyさん
05/01/13 01:53:11ID:???毎回0x80004005エラーが出るならIIS実行ユーザーのアクセス権とかが怪しいんだけど
>エラーの出るタイミングはランダムでまったく出ないときもあります
だからなあ。
ttp://tryasp.winscom.co.jp/wbbs_qa.asp?TBL=W4_ASP_QA&CATE=&MODE=L_PARENT&NO=0&CTL_DISP=GROUP&CTL_NO=60322
の一番下のレスを参考にしては?
0771水瓶
05/01/13 10:01:02ID:b40uSWu1早速ですが・・ISAPIで使用できる
画像サイズ縮小の簡単なサンプルコード
があったら教えて下さい。
宜しくお願い致します!
0772nobodyさん
05/01/13 18:05:07ID:???クローズ処理が抜けている箇所がありました、
まさかこれがこんなエラーになるなんて、、
修正後は1度もあのエラーが発生してないので
原因はこれの可能性大です
ありがとうございましたm( " )m
0773nobodyさん
05/01/15 00:12:37ID:T9jb4et6家には、XP Home Edition が二台あります。これらを使用してASPがうごかせないですか?
あるサイトでASPを動かすにはIIP(だったかな)が必要で通常の httpd142n なんかでは
うごかないそうです。
そこで、XP Home Editionが二台あったことを思い出し、一台はウェブサーバーにしてもう一台
は通常のクライアントPCにすることによってASPが動かせないかな? と思っていますが、
いかがでしょうか?
もし可能だったらHome Edition同士のネットワークの組み方も教えてください。
0774nobodyさん
05/01/15 00:53:46ID:???バージョンを含めたアーカイブファイル名でhttpd142nなんていうな。
それは「AN HTTPD」というWebサーバ。
さらに、IIPじゃなくてIIS。
ASPを動かすためにはIISかPWSが必要だが、XP HOMEには
どちらも付属していないしサポートされていない。
動かすのが不可能ではないが初心者には無理。
素直にXP PROを買え。
それ以前になぜASPなのかが疑問だけどな。
ネットワークの組みかたは板違いなので初級ネット板で。
0775nobodyさん
05/01/15 02:16:39ID:???>>769じゃないんで>>769がどういうISAPIを想定しているのかわからんのだが
ttp://aspin.com/home/components/
もしかしたら、このページにお望みの物があるかもしれない。
目的のISAPIが見つかればサンプルコードはドキュメントに大抵記載されているはず。
0777nobodyさん
05/01/16 00:03:11ID:???意味があるかどうかは激しく疑問だが
Apache::ASPっつーものもこの世にはないではない。
0778水瓶
05/01/16 22:45:09ID:zwbLgbaTさっそくサイトの方を拝見しました。
Englishサイトだったので・・ちょっと探すのに
時間がかかりましたが、Imager Resizerと言う物
をGetできました、これから、英文と格闘して何とか
したいと思います、本当にありがとうございます。
感謝、感謝しております。
0780nobodyさん
05/01/19 13:28:55ID:bcQ8immqform(POST)受けた情報が正しければ、
その情報をtxtに書き込み、
5秒間「ローディング中」のgif画像を表示した後、画面を切り替え、
入力された情報が確認用に、画面表示される。
というスクリプトが書きたくて、行き詰ってます。
入力情報をtxtに書き込み、確認表示させる事は出来たのですが、
間にローディング中を挟むと、期待通りの動作をしません。
どなたか解決方法教えて下さい。
ソースはこんな感じ↓です。
Sub KAKIKOMI()
入力された情報をtxtに書き込み
Call LOADING()'ロード中サブルーチンの呼び出し
End Sub
Sub LOADING()
Response.Write("<img src='loading.gif'>")'ロード中の画像
Dim TimerStart, TimerEnd, TimerNow, TimerWait
TimerWait = 5
TimerNow = Timer
TimerStart = TimerNow
TimerEnd = TimerStart + TimerWait
Do While (TimerNow < TimerEnd)
TimerNow = Timer
If (TimerNow < TimerStart) Then
TimerNow = TimerNow + 86400
End If
Loop
Call HYOUJI()'確認画面を表示するサブルーチンの呼び出し
End Sub
0782nobodyさん
05/01/19 16:47:34ID:SN13QhSb時代はPHPだろ?
0783nobodyさん
05/01/19 16:54:13ID:???mdbとaspを使用してサーバー上でデータベースの検索、更新等を行いたいのですが
できるのでしょうか?
yahooジオシティではmdb,asp,js等のファイルが使用可能になってますが
やり方が分からないです。いろいろ探したんですけどそれっぽいのがありません。
0784nobodyさん
05/01/19 17:26:49ID:???>yahooジオシティではmdb,asp,js等のファイルが使用可能になってますが
アップロードできるファイルの拡張子と利用できることは別。
それとも有料版とかは利用できるのか?
0785nobodyさん
05/01/19 17:34:45ID:JyTQskK2なるほど。確かに転送可能としかなってませんな。
有料版はよくわかりません。
となると他のレンタルサーバーでやるしかないか。
0787nobodyさん
05/01/22 17:02:52ID:cI+rNlDvwwwrootにあるaspファイルでFileSystemObject.GetFolder(".")のようにすると
C:\Inetpub\wwwrootではなくC:\WINDOWS\System32が返ってきます。
カレントのパスを取ることはできないのでしょうか。
0789787
05/01/22 17:27:33ID:cI+rNlDvレスありがとうございます!!
しかしこれだとカレントではなくサーバーのルートになってしまうみたいです。。。
0791nobodyさん
05/01/22 18:59:00ID:HKaXY9jS読み取りロック、書き込みロックができるといいですが、どんな方法があるでしょうか?
0792787
05/01/22 19:16:21ID:cI+rNlDvおお!まさにこれです!Server.Mappath(".")でカレントが取れました!
ありがとうございました!!(・∀・)
0794nobodyさん
05/01/22 22:42:00ID:???0795791
05/01/22 23:10:46ID:???ありがとうございます。
ただ、Application.Lock みたいな、サーバ全域に及ぶ大雑把なロックではなくて、ファイル単位にロックを
掛けたいのです。
というのは、たとえば複数板を持つ掲示板のように、ロック対象のファイルが独立に何個もあるからです。
つまり、ログAに対するアクセスとログBに対するアクセスは排他する必要がないですよね。
もちろん、具合のいい手段が無ければ Application.Lock を採用せざるを得ないと思っています。
0796nobodyさん
05/01/23 00:11:09ID:???複数Lock用の変数があったって何も問題ないと思うぞ。
それにApplication変数はサーバ単位じゃなくてアプリケーション単位だし。
Windowsはflockができないから
Application.Lockが嫌ならロックファイル作ってfsoのFileExistsくらいしかないと思うぞ
0797791
05/01/23 00:41:16ID:???>複数Lock用の変数があったって何も問題ないと思うぞ。
Lock用の変数というのがいまいちよくわからないのですが、どういうことなんでしょうか?
ロックしたいファイル毎に変数を用意して、その変数ごとにロックをかけることができるということでしょうか?
>それにApplication変数はサーバ単位じゃなくてアプリケーション単位だし。
Application はアプリケーション単位とのことですが、test1.asp、test2.asp を作って、それぞれのスクリプトで
Application("MyValue") に対して値を格納、取得してみると、Application は test1.asp、test2.asp で共通の
オブジェクトであることが確認できます。
ですので、同一サーバ内の ASP 共通のオブジェクトだと思っていたのですが、認識が違ったでしょうか?
というか、そもそも根本的な質問となってしまい恐縮ですが、IIS で言うところの「アプリケーション」って
なんですか?
自分のマシンにとりあえず IIS を入れて遊んでいるのですが、インストールしっぱなしで何も考えずに
wwwroot の下にスクリプトを作って実験しています。
ですが、アプリケーションというのがどういう単位のものなのか、よく分かってないです・・・
>Application.Lockが嫌ならロックファイル作ってfsoのFileExistsくらいしかないと思うぞ
これについても検討しました。
ようするに、自前のループを構成し、ロックファイルをチェックしながらロックが解除されるまでループするわけですよね。
この処理に欠かせないものとして、他言語で言うところの Sleep が必要だと思うのですが、ASP での Sleep って
なんでしょうか?
0798nobodyさん
05/01/23 02:37:09ID:???>>797
> Application はアプリケーション単位とのことですが、test1.asp、test2.asp を作って、それぞれのスクリプトで
> Application("MyValue") に対して値を格納、取得してみると、Application は test1.asp、test2.asp で共通の
> オブジェクトであることが確認できます
Application("test1.asp"), Application("test2.asp") って2つ作ればいいのでは?
> ようするに、自前のループを構成し、ロックファイルをチェックしながらロックが解除されるまでループするわけですよね。
> この処理に欠かせないものとして、他言語で言うところの Sleep が必要だと思うのですが、ASP での Sleep って
> なんでしょうか
Application変数使う場合も同じだよ。
変数の方がファイル作るより速いし、値の更新ロックもかけられて安全だからね。
SleepはBASP21でやればいいし。
ただ、Application.Lock/UnLockはすべてのApplication変数をロックするから、長い間ロックしないように。
まぁ、そもそもadoとかfso使って書き込む場合はプロセスがファイルをロックするから
ロック制御なんていらないっていう話もあるけど。
0799nobodyさん
05/01/23 02:46:55ID:???> IIS で言うところの「アプリケーション」ってなんですか?
簡単に言えばApplication変数やglobal.asaのスコープ範囲のこと。
設定したフォルダ以下のIIS設定パラメータが他と独立になる。
global.asaや同じ名前のApplication変数はアプリケーション内に一個しか持てないから
それぞれ別の設定にしたければ独立でアプリケーションを立てればいい。
IIS6.0ならスレッドやメモリも独立になるから、プログラムのバグで応答しない状態になっても
サイト内の他のプログラムは影響を受けない。
0800799
05/01/23 02:50:54ID:???> IIS6.0ならスレッドやメモリも独立になるから、プログラムのバグで応答しない状態になっても
> サイト内の他のプログラムは影響を受けない。
これはアプリケーションじゃなくてプールだ。
0801791=797
05/01/23 03:35:33ID:???>>798
>Application("test1.asp"), Application("test2.asp") って2つ作ればいいのでは?
すみません、こうやって 2つ作る目的がわかりません。
やりたいことは >>795 で補足したように、複数のファイルを個別にロックする、ということです。
たとえば掲示板スクリプト bbs.asp を作ったとして、引数に応じて扱う板を変えるとします。
bbs.asp?bbsid=1 とか、bbs.asp?bbsid=2 という具合にです。
bbs.asp は、bbdid=1 ならば 1.log、bbsid=2 ならば 2.log と、それぞれのログファイルに対してアクセスするわけです。
この際に、bbsid ごとに排他制御を行いたいのです。
Application.Lock で済ませると、本来ならば 1.log と 2.log は同時にアクセスしてもかまわないにも関わらず、排他アクセスしかできなくなってしまいます。
ところで
>そもそもadoとかfso使って書き込む場合はプロセスがファイルをロックするから
これって本当なんですか?
ado についてはこの際どうでもいいとして、fso は自動的にロックするものなのでしょうか?
ロックされてるファイルに対してオープンをかけるとどうなりますか?
エラーになるのは都合が悪くて、ブロックされるのがCPUリソースの有効活用の点で具合がいいです。
あと、後出しの条件ですみませんが、basp21 は都合により今回は使いたくないです。
すると Sleep に相当する機能は無いということになりますか?
>>799,800
おかげさまで google でようやく具合のいい説明に流れ着いたこともあって、その説明でよく理解できました。ありがとうございます。
いろいろ回答していただいて思ったのですが、自分のやりたいことをするには、ASP だけでは無理で、それ用のコンポーネントを作るってアプローチになるのかな、と感じました。
ただ、どこでも何もせず、できるだけスクリプトを置くだけで動くようにしたいので、Application.Lock を使うのが唯一の選択肢になりそうですね。
(>>798 によれば、そもそもロックする必要は無い?)
0802nobodyさん
05/01/23 12:42:25ID:qaGxTvCiそんなに頻繁にアクセスされるならMDBにログ吐いた方がいいんじゃないの?
0803nobodyさん
05/01/23 13:28:55ID:???http://tryasp.winscom.co.jp/wbbs_qa.asp?TBL=W4_ASP_QA&CATE=&MODE=L_PARENT&NO=0&CTL_DISP=GROUP&CTL_NO=33018
0804791=801
05/01/23 14:27:40ID:???今回はファイルの使い方のお勉強が目的だったので、MDBはまた今度にします。
自分でも調べてみてるのですが、ASP ではあんまりきめ細やかなファイルの制御はできないって結論で合ってますよね。
ところで、MDB は複数の同時アクセス時に壊れるという話がありますが、どうなんでしょう?
以前 ASP ではないんですが、VB にて MDB の実験を行ったとき、テーブルがロックされるタイミングがなんかおかしくて、
データの整合性が取れないことがある、という現象を確認しています。
このときは、ファイル共有した MDB に複数のマシンからの同時アクセスする実験だったのですが。
それ以来、多数クライアントの用途においては MDB を毛嫌いしています。
>>803
ありがとうございます。
これを読んで、今採用できる手段は Application.Lock しかないのだろう、と悟りました。
これによるパフォーマンスの問題が気になるほど深刻なわけではなかったのですが、エレガンスの点から他の方法を探していました。
ですので、無いなら無いで、そういう結論が出せたというだけで十分な収穫でした。
しかし、>>801 のリンク先にはなにやら気になる記述がありますね。
>IISはファイルを一定時間ロックしますので、この間はファイルの削除が失敗します。(ファイルのクローズ後、確か60秒間だったような?)
これについての詳細な挙動について書かれたドキュメントってありますか?
0805nobodyさん
05/01/23 15:47:22ID:???> MDB は複数の同時アクセス時に壊れるという話がありますが
確かにMDBは壊れるとかよく聞くけど
ADO使ってきちんと行ロックかけて更新してれば壊れることはない。
IIS以外からもAccessとか使って作業してたり、DAOとか使ってたら話は別だが。
さすがに秒間何百アクセスもあるくらいのサイトならDB使うだろうしね。
0807nobodyさん
05/01/29 09:30:56ID:???俺もそんな風に思ってたんだけど、ぐぐってたらこんなの見つけた。
ttp://blog.melma.com/00034126/20041205171020
要は3000hit/日くらいのサイトのアクセスログをmdbに保存するスクリプトで、
>3日にいっぺん、mdbファイルが破損してました。
ってことなんだけど、どうなんだろう?
他にこういう経験した人いる?
試しに、連続して1000件ずつINSERTするスクリプト(ASP)を書いて
Win2k+IISに置いて、5台のPCから同時にそれを開いてみたんだけど、
mdbが壊れた様子はなかった。
検証としては不十分かもしれないけど、3000hit×3日での
「同時アクセス」の発生回数よりは遙かに多い筈だが…。
0808nobodyさん
05/02/01 23:19:53ID:c6w5Mcw90809nobodyさん
05/02/01 23:49:21ID:ahD93X8bhiddenで渡せば?
0810nobodyさん
05/02/02 01:13:34ID:???変数=<%=変数 %>;
0812810
05/02/04 00:28:38ID:???0813nobodyさん
05/02/05 07:04:27ID:???時給1300円
0817nobodyさん
05/02/20 03:46:34ID:QVbhiX9s毎日数値を打っていって、そのデータ(mdbに保存)を
折れ線グラフで表示させたいんですけど
できますでしょうか?
0818nobodyさん
05/02/20 05:15:28ID:???0819nobodyさん
05/02/20 08:50:02ID:???http://www.chestysoft.com/drawgraph/default.asp
おれ、これ買って使ってる。 30ドル。
日本語も問題なく出せるし、コーディングが簡単だったから。
円グラフと棒グラフも簡単に出せる。
http://www.chestysoft.co.uk/drawgraph/linegraphs.asp
0820819
05/02/20 09:01:29ID:???http://www.chestysoft.co.uk/drawgraph/databasedemo.asp
ここにトライアル版と、DBからの出力例のスクリプトがある。
凡例には日本語フォントを指定すれば日本語が出る。
0821nobodyさん
05/02/21 00:44:03ID:???0822nobodyさん
05/02/22 23:38:51ID:7I44eOuTrs(フィールド名) で所得はできるんですが、その前に
if rs(フィールド名)<>"" then などといった条件式を入れると、途端に所得できなくなります。
一旦変数に格納し、その変数で条件分岐させると大丈夫です。
他の型、varchar型などですとそんなことは起きないので、text型特有の問題のようですが
何か理由があるのでしょうか???
0823おやすみ
05/02/23 01:21:59ID:???フィールドがNullだからでは?
Null≠""ではないよ。
If Not IsNull(rs(フィールド名) Thenでは駄目ですか?
0825それでは(・∀・)イイ!!夢を
05/02/23 01:35:12ID:???書き忘れ
括弧が一つ無かった。
If Not IsNull(rs(フィールド名)) Then
個人的にはSQLのWHEREでNULLのフィールドを除外したした方が良いと思いますが・・・。
0826nobodyさん
05/02/23 01:37:41ID:???の方が簡単だろ
0827nobodyさん
05/02/23 01:49:13ID:???ああ、text型ね。ADOのバグあるよ。
前方スクロールカーソルでレコードセット取得してる場合、
text型のカラムを二回目読もうとすると読めなくてエラー。
また、text型のカラムより後にあるカラムを先に読んでしまっても
エラーになる事がある。
もうやってるみたいだけど一旦変数に格納するのが吉。
またはカーソルタイプをダイナミックにすれば大丈夫。
text型は重宝するんだけどバグがね…
SJISの二バイト文字入れててbcpで吐くとデータ壊れるし。
早く2005出ないかなぁ…。
0828nobodyさん
05/02/23 02:39:16ID:???これって取得できるものが不定になって危険じゃなかったっけ?
rs.Fields("xxxxxx").Value にしないと。
0829822
05/02/23 08:08:27ID:???確かにtext型を無理やり読むと、他のフィールドが読めなくなったりもしてました。
まさに>827の現象です。ビンゴです。カーソルタイプだったとは!てかバグかよ!
>823-825
IsNullなどの条件式を入れてもダメなんです。>827によると
一回読むと二回目が読めなくなるみたいですね。
場合によってはWhere内で条件組んでもいいですねえ。そっちのほうが速そう。
>828
略すと所得が不定になるのですか? 知りませんでした…。
0831nobodyさん
05/02/23 09:22:50ID:???0832nobodyさん
05/02/23 18:17:06ID:???どうせVBScriptはVariantしかないから気にしなくてもいいんじゃない。
ADO.netだと確かデフォルトプロパティが無いからそうしなきゃならないんだろうけど
0833nobodyさん
05/02/23 21:01:56ID:???JScriptは勝手に型変換されておかしくなるぞ。
nullとかundefinedとか時刻型とかは特に。
VBScriptは時刻型をValueなしで読み出すとどうなるの?
0835nobodyさん
05/02/24 22:20:25ID:???取得したデータを変数に入れる場合はValueをつけないと痛い目にあう。
良くあるパターンで、
Valueつけないで変数にいれた場合はオブジェクトとして変数に入れるから
カーソルを次の行に持っていくと、その変数は読み出せなくなる。
Valueをつけると単なる文字列として変数に入れるから
カーソルを次の行に持っていってもレコードセットを閉じても読み出せる。
0836nobodyさん
05/03/04 15:04:27ID:ktMSRMP4※マクロ付きというだけでウィルスと見做すトコロも結構あるので(^^;
仕事で使うんで、VBAでASPソース解析マクロ組んだんだけど、一日ででっち上げたのでもっといいモノがあると思うんです(^^;
こーゆー使い方できるのが他にあれば紹介して欲しいし、無ければ少し改造(特にコメントの認識周り)で相談に乗ってもらえれば、と思うんですが、いかがでしょうか?(^^;
本来はビジネスsoft板かもしれませんが、一応対象がASPっつーことで( ´∀`)
0837nobodyさん
05/03/04 22:24:32ID:???zipかlzh(か、何であれ好きな形式)に固めてうpればよいのでは。
0838nobodyさん
05/03/04 23:48:24ID:???拡張子変えてアップロードすればいいじゃないの?
メーラーとかでvbsとか弾くヤツは拡張子をtxtにすれば送れたりするし。
そもそもアップローダされたファイルにマクロが含まれてるか
チェックしてるうpろだなんてないだろ。
0839836
05/03/05 00:45:06ID:q5avG9fpむ、言われてみれば(^^; どこかに長持ちするアップローダー、御存知です?
今ふたばに上げようとしたんですが、なんか調子悪いっす(^^;
>>838
いや、それが意外と(苦笑) .xlsとか.docとか上げると即削除とかゆーところもありますよ。
0840836
05/03/05 00:47:24ID:q5avG9fpttp://cgi.2chan.net/up2/src/f70629.lzh
からどーぞ。いや、こんな程度で恥ずかしいんですが(^^;
0841836
05/03/05 14:22:19ID:DIN0FHj5ということで、yahoo検索上位三番目のアップローダーに上げておきました
ttp://tool-ya.ddo.jp/2ch/trash-box/contents.jsp?file=20050305141934208.lzh
からどーぞ。
……絶対作ってそうなんだけどなぁ、このくらい(苦笑)
0842nobodyさん
05/03/05 17:14:48ID:???遅レスだけど
サーバの地域設定によるので、海外のレンタルサーバだと
MM/DD/YYYY hh:mm:ss とか
DD/MM/YYYY hh:mm:ss とかあり得る。
0843nobodyさん
05/03/15 23:41:26ID:???0844nobodyさん
05/03/17 19:02:18ID:???ASPでサーバにあるExcelファイルを開くことが出来ないのは、
ASPの仕様なのでしょうか?
5年ぐらい前は出来ていたのですが・・・
0846nobodyさん
05/03/17 23:52:01ID:???セキュリティレベルが厳しくなってきてるんだよ。ちゃんとセキュリティ設定を把握しようね。
0847nobodyさん
05/03/19 23:46:27ID:???出てくる「使用するサーバーの指定」の欄に何の名前を入力していいのかわかりません。
IISをインストールし、インターネットインフォーメーションサービスのローカルコンピューターの名前かなと思い、いれてみたのですが、接続できないようで先に進めません。
ご教授お願い致します。
OSはxpのproを使用しております。
0848nobodyさん
05/03/20 01:14:37ID:???0849nobodyさん
05/03/20 19:37:18ID:???はじめてなんですが、どんなことをするのでしょうか?
普通、どんなツールでデバック作業をしているのですか?
また、何を勉強しておけばいいのでしょうか?
やっぱり、VisualBasicあたりでやるのでしょうか?
0850nobodyさん
05/03/21 00:08:32ID:???漏れはPGじゃないので良く分からんが、
デバッグ作業って限界値テストみたいなのではないのだろうか?
デバッガで検出できるんだったら、わざわざバイト雇う必要ないと思うし。
0851nobodyさん
2005/04/05(火) 11:01:33ID:GPgbhi4+簡単な自動メール送信ソフトを作成してます。
ASPとBASP21、DBにはアクセスを使ってます。
各サーバーの稼動状態をチェックしてフラグを立て、
フラグが立っていればそのサーバー名を記述したメールが届くというものを目指してます。
各フラグをメール送信用DBに書き込むのと、メール送信自体は出来たんですが、
毎日0時にそのプログラムを実行するのが出来ません。
私が今試してるのが
バッチファイルを作成し、それをタスクで毎日0時に立ち上げる
バッチファイルの中身は、メール送信のASPをIE経由で立ち上げる
ログオンした状態では問題ないのですが、ログオフしてるとメールが送信されません。
なにか良い方法はありませんでしょうか?
0852nobodyさん
2005/04/05(火) 12:54:51ID:???なんでそんなややこしいことを...
Windows Scriptかいてそれをスケジュールするだけでいいじゃん。
0853851
2005/04/05(火) 13:20:08ID:???レス感謝です。
WindowsScript自体よくわからなかったのですが、早速ググってみたところ以下のページがみつかり
ttp://www2f.biglobe.ne.jp/~takan/javac/js/wsh/
スクリプトをブラウザの仲介無しで動作させられるとのことで。
早速試してみます。ありがとうございました。
0854851
2005/04/05(火) 14:38:06ID:???Set WSHShell = WScript.CreateObject("WScript.Shell")
WshShell.Run("http://localhost/mailsend.asp")
で、ログオフ状態からでもメール送信ができました。
ありがとうございました。
0855852
2005/04/05(火) 15:49:30ID:???いや、あのそのmailsend.aspでやってる処理をWindowsScriptに書いてスケジュールすればって意味だったのだけど...
まあ動いたのならいいか(ASP通す分無駄が有るけど)。
0856nobodyさん
2005/04/05(火) 21:46:49ID:???basp21はWScriptからも使えます。
よって mailsend.asp の中身の 「Server」 の文字列を 「WScript」 に置換し、
ファイルの拡張子を 「vbs」 に変えれば、わざわざWebページを開かなくてもメールを送信することが可能です。
0857851
2005/04/06(水) 00:14:50ID:???レス感謝です。
さっそく再度組みなおしてみます。
理想に近いシンプルなものが出来そうです。
ありがとうございます。
0858nobodyさん
2005/04/10(日) 17:44:24ID:Tjxmg0rJ0859http:// 27.pool3.dsl24mosaka.att.ne.jp/~ss.jpg
2005/04/10(日) 17:51:25ID:???うはっwwwおkwww??
0860nobodyさん
2005/04/10(日) 21:36:09ID:???その昔Apache::ASPモジュールってのがあったが……
まぁ、言語がPerlになるけど。
0862nobodyさん
2005/05/07(土) 00:41:32ID:Ci/+aKdOどこかにサンプルありませんか?
0863nobodyさん
2005/05/07(土) 01:15:41ID:l5j6orktっwwwwwwwwwwwwwwwwっっwwwwww
おkっおkwwwwwwwうぇっうぇwwwwwwwww
wwwwwwwwwうぇwwwwwwwwwwww
wwwおkwうはっwwwwwwっっおkwwwwww
w
0864nobodyさん
2005/05/07(土) 01:22:52ID:???0865nobodyさん
2005/05/07(土) 01:56:39ID:C9GNlHk9うまくいきません。 イベントログには、
サーバーはアプリケーション '/LM/W3SVC/1/Root' の
読み込みに失敗しました。エラーは 'クラスが登録されていません
' でした。 と書いてあります!! どうすればいいでしょうか??
0866nobodyさん
2005/05/07(土) 04:00:54ID:???とりあえず
http://www.google.co.jp/search?num=100&hl=ja&inlang=ja&ie=Shift_JIS&oe=Shift_JIS&c2coff=1&q=%2FLM%2FW3SVC%2F1%2FRoot+%83N%83%89%83X%82%AA%93o%98%5E%82%B3%82%EA%82%C4%82%A2%82%DC%82%B9%82%F1&lr=lang_ja
0867nobodyさん
2005/05/07(土) 12:50:09ID:o/GwVysr諦めてる実例ばかりで、へこんできました・・・・
0868nobodyさん
2005/05/08(日) 10:34:33ID:???ここんとこもう少し詳細を。
0870nobodyさん
2005/05/08(日) 15:28:19ID:???0871nobodyさん
2005/05/08(日) 16:28:48ID:???かなり泣きそうにダルいけどなw
0872nobodyさん
2005/05/08(日) 17:25:06ID:???0873nobodyさん
2005/05/08(日) 17:54:34ID:???もっと凄いことになります。
0874nobodyさん
2005/05/08(日) 21:43:58ID:???なんとかならんものかな...
0875nobodyさん
2005/05/09(月) 20:50:17ID:???0877872
2005/05/09(月) 23:25:49ID:???DELL PowerEdge2650
CPU Xeon 2.8GHz(HT)
Mem 1GB
HDD 73GB(10000rpm)×4(RAID5)
OS Win2k Standard
なんだけど、でかいファイルのアップ中のCPU利用率が両論理CPUともに
50%を超えてしまうのよ。orz
そりゃXeon3.6×2とかにすりゃマシになるんだろうけどさ...
0878nobodyさん
2005/05/10(火) 04:01:36ID:???社内用途レベルであればWebサーバのフロントエンドとして十分なスペックだと思うけど。
どのくらいのファイルをアップロードさせようとしてますか?
0879872
2005/05/10(火) 09:56:22ID:???場合によっては100MB超。多くは数MB程度なんだけど。
それが1日に50件くらいなんで今のところ問題は無いんだけど、
もしADODB.Stream使って負荷下げられるものなら下げたいって思ったんだけど...
それにしても、ちょっと調べてみたところADODB.Streamってめちゃめんどくせえな。
また暇なときでも試してみます。
クライアントからサーバ側にファイルを送り終わらないと
処理するスクリプトが動き出さないんだよね。
だからアップロードするファイルサイズが大きいとそれだけhttpのリクエストを受け付ける段階で
サーバのリソースを食ってしまう。これは仕掛け上しょうがない部分。
十数MB以上ぐらいのサイズになるんだったら
FTPやwebDAVなどの使用を検討してみてはいかがでしょう?
ActiveXなどの助けを借りる必要があるけど…。
0881nobodyさん
2005/05/11(水) 00:26:22ID:???・・・・・。
0882872
2005/05/11(水) 09:55:00ID:???こんな感じのスクリプト書いてサーバー時間 2005/05/11 9:28:40 にsubmitボタンを押してみた。
postしたデータは20M程度のpdfファイル
Server.ScriptTimeout = 3600
Response.Write(Now() & "<br>" & vbCrLf)
TotalBytes = Request.TotalBytes
Response.Write(Now() & "<br>" & vbCrLf)
BinRead = Request.BinaryRead(TotalBytes)
Response.Write(Now() & "<br>" & vbCrLf)
その結果がこれ
2005/05/11 9:28:40
2005/05/11 9:28:40
2005/05/11 9:34:49
postした瞬間にスクリプト自体は動いてて Request.BinaryRead で時間食ってるようだけど...
あとFTPとかWebDAVは諸事情で無理なのですわ。
>>881
何が言いたいの?
Serverが抜けてるってこと?
0883nobodyさん
2005/05/11(水) 14:51:24ID:???ASPで作成したホームページのデータを変更し、アップロードを行なったところ
『HTTP 500 - 内部サーバー エラー 』
と表示されました。
試しに変更前のデータから1文字だけ追加しても同じようなエラーが表示されます。
この内部サーバーエラーを表示されないようにするにはどのようにすればいいのでしょうか。
このままでは更新作業が全く進みません。
よろしくお願いします
0884nobodyさん
2005/05/11(水) 14:57:29ID:???ソース内に文字を追加した?
つか、動いているファイルに1文字追加してUPしたら、エラーになったの?
ちゃんとテキストでUPしてる?
0887883
2005/05/11(水) 15:43:00ID:???それを今回選択可能になるように修正したいと考えています。
下が変更前と変更後のプログラムです。
<変更前>
<tr height="25" bgcolor="#F0F0F0">
<td><font color="#A0A0A0">002</font></td>
<td></td>
<td></td>
<td><img src="/sample/Images/Form/Suspend.gif" border="0" align="absmiddle" alt="Suspend" name="02a"></td>
<td></td>
</tr>
==========================================================
<変更後>
<tr height="25">
<td><a href="javascript:detail('Detail/b.asp');">002</a></td>
<td><input type="checkbox" name="02a" id="02a" onfocus="02aA.selected=true" value="002"></td>
<td>
<select name="02b" id="02b">
<option value="" selected>---</option>
<option value="A">A</option>
<option id="01aA" value="B">B</option>
<option value="C">C</option>
</select>
</td>
</tr>
"b.asp"や"/sample/Images/Form/Suspend.gif"などのファイルは既に作成しているファイルです。
0888nobodyさん
2005/05/11(水) 15:48:57ID:???あと、ASPファイルをインクルードしてる箇所はないの?
0889883
2005/05/11(水) 15:59:53ID:???プログラムを変更前に戻しても元に戻りません。
変更前のデータを上書きすればちゃんと動きますが・・・
>あと、ASPファイルをインクルードしてる箇所はないの?
上部に表示させるaspファイルやメニューを表示するaspファイルをインクルードするよう
設定していますが・・・
あとこのファイルは別のファイルにインクルードされているということはありません。
0890nobodyさん
2005/05/11(水) 16:19:56ID:???もしかして、HTMLファイルを保存して、それを変更して
アップしてるっていう話ではないよな?
0891883
2005/05/11(水) 16:39:23ID:???ASPは特別な方法で保存しなければいけないのでしょうか?
基本的に私のやり方は
ホームページのサーバーからffftpを使ってASPファイルをダウンロード
↓
変更前のデータのバックアップを取る
↓
プログラムを修正・保存
↓
ファイルサーバーにダウンロード
という形です。もしかしてこの方法が間違っているとか?
0892nobodyさん
2005/05/11(水) 17:04:12ID:???ちなみにファイルサーバーに「ダウンロード」じゃなくて
「アップロード」だよな?
さらにアップロードする際もテキストモードでしてるよな?
0893883
2005/05/11(水) 17:11:20ID:???>さらにアップロードする際もテキストモードでしてるよな?
自動判別モードでダウンロード及びアップロードを行なっていますが・・・
>ちなみにファイルサーバーに「ダウンロード」じゃなくて
>「アップロード」だよな?
すみません、こちらは私の入力ミスです。
0894nobodyさん
2005/05/11(水) 17:17:29ID:???登録してやる必要があるのだが、そのリストの中に「*.asp」は登録して
あるのかな?
・・・テキストモードじゃなくてアスキーモードだな。
0895883
2005/05/11(水) 17:22:46ID:???0896nobodyさん
2005/05/11(水) 17:27:29ID:???開いて保存して、アップロードした場合は?
これでエラーになるなら、FTPもしくは、エディタを見直す必要あり。
0897883
2005/05/11(水) 17:36:08ID:???>開いて保存して、アップロードした場合は?
>
>これでエラーになるなら、FTPもしくは、エディタを見直す必要あり。
上の通りの作業を行ったら『HTTP 500 - 内部サーバー エラー 』 と表示されました。
ちなみにプログラムの修正は秀丸で行なっています。
0898nobodyさん
2005/05/11(水) 17:47:03ID:???0899883
2005/05/11(水) 17:50:36ID:???もしかしてこれが原因なのでしょうか?
もしよろしければASPファイルに最も適している文字コードを教えていただけませんでしょうか?
0900nobodyさん
2005/05/11(水) 18:04:39ID:???自分で試してみることもできない、とは君には向いてないね。
0901nobodyさん
2005/05/11(水) 18:06:09ID:tydfCjE5wwwwwwwwwwwww
wwwwwwおkwww
おkwwwwwwっうぇwwwwwwwwwwwwっ
っっおkwwwっうぇっうぇおkwwwおkwwwうぇwww
0902883
2005/05/11(水) 18:26:52ID:???修正した部分が正常に起動しました!!
今まで長々と対応していただいた皆様本当にありがとうございました。
>自分で試してみることもできない、とは君には向いてないね。
何分ASPを始めてまだ間がない厨房なものですから。
0903nobodyさん
2005/05/11(水) 18:36:58ID:???0904883
2005/05/11(水) 18:47:52ID:???すみませんでした・・・
ASPファイルをJISファイルとして読み込んでいたため文字コードの違いで
正常に読み取れていなかったことが原因かと思われます。
・・・今まで長々と申し訳ございませんでした。
0905nobodyさん
2005/05/11(水) 19:04:09ID:???ttp://asp.dataweb.ne.jp/
おつ。
ま、このリンク参考にがんばってくれ。
0907初心者
2005/05/13(金) 20:30:32ID:+L6sV6Q8ダイナミックページ(ASP JavaScript)をIISを使ってインターネット上から
見ようとしたのですが、Server Application Error(イベントログを見ろという内容)
が表示され、うまくいきません。WindowsXP Professionalを使ってます。
何かIISの設定が足りないのでしょうか??? この1週間 様々な方法で
原因を調べようとしたのですが、似た質問をされていたかたも全て諦めていました.
皆さんが頼りです。どうか助けてください。お願いします。
0908nobodyさん
2005/05/13(金) 21:29:47ID:???で、イベントログには何と書いてあったのでせう。
0909初心者
2005/05/13(金) 23:08:29ID:+L6sV6Q8サーバーはアプリケーション '/LM/W3SVC/1/Root' の
読み込みに失敗しました。エラーは 'クラスが登録されていません
' でした。 と書いてあります!! 正直さっぱりです・・・・
どうすればいいでしょうか??
0910nobodyさん
2005/05/13(金) 23:46:26ID:???[IIS] ASP ページまたは HTML ページに対するサービスが無効である
http://support.microsoft.com/default.aspx?scid=kb;ja;257267
試してもダメだったん? IISのログには何か出てない?
0911nobodyさん
2005/05/15(日) 16:19:46ID:???大勢が同時アクセスするサーバはマルチスレッドに強いADO.NETを使わんといかん。
0913nobodyさん
2005/05/15(日) 19:06:30ID:???ADO.NET,SQL,VB.NET、HTML辞典とJavaScript辞典を丸暗記してるならメモ帳でアップロダを作れるからASPからASP.NETに移行シル
0915nobodyさん
2005/05/15(日) 19:51:47ID:???どっちかというとVBScriptで出来る事が少なすぎたのが残念だ。
バイナリデータの取り扱いとsocketが使えたら
少なくともPerlよりはいいものだったと思うんだがな。
0917nobodyさん
2005/05/19(木) 16:23:40ID:???MS的には、VBScript/JScriptなんてCOMコンポーネントを呼び出すための
Glueみたいなもんじゃないんでしょうか。
だからそれ単体でたいしたことが出来なくてもしょうがない。
こう考えた場合、スクリプトと言うよりもむしろMSがバイナリやアップロードファイルを扱えるような
標準的なコンポーネントを提供しなかったのがよくなかったのかもしれない。
0918nobodyさん
2005/05/19(木) 22:45:46ID:???禿堂。
まぁMSもIIS3.0だか4.0の頃に、糞みたいなモジュールは提供してたけどな。
最近はアップロード処理のためのコンポーネントをコンパイルするための
VBソース(藁)も公開してたはず。
0919nobodyさん
2005/05/20(金) 07:32:45ID:???最近はVBScriptはレジストリ設定用のツールと化したな。Scriptmaticとか。
つくづくMicrosoftも一枚岩じゃないってこったな
0920nobodyさん
2005/05/20(金) 17:22:12ID:hD9GfVJL以下のASPを実行すると下のエラーがログに出力されます。
何か設定に問題があるのでしょうか?
<%
Dim objss
Set objss = Server.CreateObject("OracleInProcServer.XOraSession")
%>
ASP_0178_:_80070005|Server.CreateObject_アクセス_エラー
0922nobodyさん
2005/05/21(土) 09:30:38ID:???Oracle側ですか。
他のバージョンで試してみます。
状況は書いたこと以外に書けるようなことがありません。
0923920
2005/05/23(月) 11:08:16ID:???0924920
2005/05/23(月) 17:19:49ID:???http://66.102.7.104/search?q=cache:y-zg1-qMJLEJ:pc2.2ch.net/test/read.cgi/db/1056940159/101-200+CreateDatabasePool+%E7%B7%8F%E5%90%88&hl=ja&lr=lang_ja
0926nobodyさん
2005/05/24(火) 00:17:15ID:???なぜ今更こんなズレたドキュメントを更新するのかね?
http://support.microsoft.com/default.aspx?scid=kb;ja;193998
0928nobodyさん
2005/05/24(火) 22:54:01ID:???0930nobodyさん
2005/05/25(水) 00:47:47ID:???> この資料は米国 Microsoft Corporation から提供されている Knowledge Base の Article ID 193998 (最終更新日 2005-03-16) を基に作成したものです。
らしい
0931nobodyさん
2005/05/25(水) 01:06:07ID:???ADO + 「Microsoft OLE DB Provider for Oracle」 (中身は Oracle Provider for OLE DB)
結局はODBCだからoo4oよりは接続に時間がかかるけど、
ADO使っといた方がいいと思うよ。
oo4oはバグってるか使い方が悪いのか分からないけど、
うまくいかないことが多い。
性能求めるなら oo4o で頑張るしかないけど。
0932920
2005/05/25(水) 14:08:08ID:???以下のスクリプトで
if hoge = 1 then
のところで「型が一致しません。 」というエラーが出てしまいます。
hogeカラムはNUMBER型で1桁です。
if hoge = "1" then
とすると正常の動作をします。
なぜNUMBER型の値を文字列として取得してしまうのでしょうか?
<%
dim ss
set ss = server.createobject("ADODB.Connection")
ss.open("dsn=hoge; pwd=hoge")
dim rs
dim hoge
set rs = ss.Execute("select hoge from hoge_table")
do until rs.eof
hoge = rs.fields(0).value
rs.movenext
loop
rs.close
set rs = nothing
if hoge = 1 then
response.write "わーい"
else
response.write "だめじゃん"
end if
%>
0933nobodyさん
2005/05/25(水) 14:50:26ID:???ASPからだいぶスレ違いになってますが、Oracle Provider for OLE DB
はODBCとは異なるのでは。
プログラム → ADO → Oracle Provider for OLE DB → DB
なので、それなりのパフォーマンスは確保できるのではないかと。
(oo4oには劣るかもしれませんが)。
ODBC経由になるのはこの場合でしょう。
プログラム → ADO → Microsoft OLE DB Provider for ODBC → Oracle ODBC Driver → DB
0934nobodyさん
2005/05/25(水) 23:13:12ID:???if hoge=1 then
〜
end if
をとりあえずコメントアウトして
Response.Write TypeName(hoge)
ってやってみて。
0935nobodyさん
2005/05/26(木) 00:56:43ID:???で、NULLの値を取ってきて空文字列として変数に格納されて、それを数値と比較しようとしている・・・とか。
0936nobodyさん
2005/05/26(木) 07:11:37ID:xDfhpseoありえるね。
if IsNull(hoge) then
response.write "逝ってよし"
elseif hoge = 1 then
response.write "わーい"
else
response.write "だめじゃん"
end if
0937920
2005/05/26(木) 07:21:36ID:???なので1が入っているのは確かです。
あとNOT NULL項目です。
Response.Write TypeName(hoge)
これやってみます。
0938920
2005/05/26(木) 08:41:47ID:???VBScript でサポートされていないオートメーションが変数で使用されています。: 'TypeName'
0941nobodyさん
2005/05/27(金) 13:45:36ID:???http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/script56/html/vsconvartype.asp
hoge = CLng(hoge) で変換すればいいんじゃねーの?
0942920
2005/05/27(金) 14:15:01ID:???ありがとうございます。
CIntでできました。
でもこれって普通のことなんでしょうか?
NUMBER型のときは変換しないといけないって
今まで経験がなかったので。
0943nobodyさん
2005/05/31(火) 14:31:22ID:eexfWB3iWindows 2000 Server SP4 + IIS5.0(デフォルト)でASPを動かしてます。
で、ポート80番しか許可していないようなガチガチのLANから
サーバにアクセスすると、どうやら*.aspのページへ飛ぶ際に
サーバ側が80番以外のポートを指定してくる(例:1400)そうなんです。
この場合、サーバ側でASPのポートを80固定にする必要が
あると思うんですが、詳細をご存知の方いらっしゃいますか?
0944nobodyさん
2005/05/31(火) 18:28:37ID:sRxC3mUMWEBフォームのテキストボックスなどに入力した値を
サーバにあるExcelファイルに書き込んで、書き込まれたExcelファイル
をブラウザに表示させたいのですけど、どういった感じでやればいいのでしょうか?
よろしければ、ヒントでも参考になるページでもいいので、教えていただけない
でしょうか。宜しくお願いします。
0945nobodyさん
2005/05/31(火) 20:35:49ID:???サーバからExcelファイルを返す方法として思いつくのは……
1. ODBCでExcelファイルに書き込む。
2. ContentTypeが"application/vnd.ms-excel"のHTMLを作成する。
3. サーバサイドでExcelをオートメーションで使用して書き込む(非推奨)
1.は単にExcelのファイルをテーブルに見立てて読み書き(書けたっけ?)
するだけなので、書式など凝ったことはできないはずです。
2.は単純な表であれば一番現実的だと思います。凝った書式は難しいかもしれません。
(ExcelファイルをHTML形式で保存した時の内容を理解できれば……)
3.は最後の手段で、他の方法では対応できない場合にのみ使います。
2.と3.の非推奨に関する情報は以下にあります。
ttp://support.microsoft.com/default.aspx?scid=kb;ja;257757
他は適当に検索してください。多分サポート技術情報にあります。
0946nobodyさん
2005/05/31(火) 22:17:22ID:???多分、
- DBを扱うスクリプト群はセキュリティとかの観点から別なポートにしたいと思った。
- SSLとかで通信してる
- パッケージ化されているソフトを使用していて、Webサイトを別にする必要があった
あたり?
0947nobodyさん
2005/05/31(火) 22:19:09ID:???> 書き込まれたExcelファイルをブラウザに表示させたい
この辺を詳しく書かないと。
読み書きや計算ができる感じでブラウザから利用したいのか、ただ表を表示できればいいのか。
0949nobodyさん
2005/06/01(水) 12:02:50ID:hA/jbXaaすいません。ありがとうございます。
読み書きや計算ができる感じではなくExcelが立ち上がって
ブラウザに表を表示できればいいだけです。
>>945さんの2の方法でやってみたいと思います。
ありがとうございました。
0950943
2005/06/01(水) 17:27:47ID:???フォローありがとうございます。
調査した結果、閲覧側の許可IP設定に問題があったようです。
IISでポート80を指定しているのであればそれ以外には
飛ばない、というのは正しかったようです。
ありがとうございました。
0951あ
2005/06/07(火) 21:37:19ID:42NMzbaQ2003サーバーでIISを構築しています。
拡張子がhtmlだと表示されますがaspだと表示されません。
2000サーバーで動作していたファイルを、2003サーバに
コピーしたのでプログラムは問題ないと思います。
http://10.1.3.238/test.html
→表示される。
http://10.1.3.238/test.asp
→エラーになる。メッセージは下記参照
--------------------------------------------------------------------------------
ページが見つかりません
検索中のページは、削除されたか、名前が変更されたか、または一時的に利用できない可能性があります。
HTTP エラー 404 - ファイルまたはディレクトリが見つかりません。
--------------------------------------------------------------------------------
色々ネットで調べましたが、回答が見つかりません。
お願い致します。
0952nobodyさん
2005/06/08(水) 09:45:12ID:???IIS構築はデフォルト?
0953nobodyさん
2005/06/09(木) 18:00:16ID:???誘導されたのでここでもう一度、質問させてください。
ASPで資料配信システムを作成しています。
ファイルを指定してアップロードする為の画面で、アップロード時に
指定ファイルに対してのみアンチウィルスを走らせたいのです。
そのような命令をすることはできるのでしょうか?
よろしくお願いいたします。
0954nobodyさん
2005/06/09(木) 19:02:05ID:???ノートンとかだったら、ファイルがアップロードされた時点で
そのファイルだけスキャンするでしょ。
それとも、ウイルス検地して、画面にメッセージ出したいの?
0957953
2005/06/10(金) 09:44:14ID:???そうなんです。ウィルスを検地したら画面にメッセージを出して、
「このファイルはアップロードできません」という
アピールをしたいのです。
>>955
そうなんですか。知りませんでした。
すいません、もっとちゃんと調べてみます。
>>956
いえ、チェックはサーバ側でしようとしています。
0958nobodyさん
2005/06/10(金) 21:36:13ID:???エラーメッセージはクライアント側に出したいんだね?
だったら、
リアルタイムスキャンでのスキャン対象に
アップロードフォルダを登録しておく。
しかも検出すると「文句なしに移動」「文句なしに削除」
にしておく
↓
アップロード後、fsoでFileExists()をやればOK
↓
0959953
2005/06/13(月) 09:37:36ID:???はい。クライアント側にメッセージを出したいです。
アップロード後に「FileExists()」ですね。
環境が整い次第、やってみます。
ありがとうございました。
0960nobodyさん
2005/06/16(木) 17:44:29ID:+b/OtgOxRequest.QueryString (変数名)[(インデックス) | (.Count)]
だと思うんですけど、
↑で言う、変数名を取りたい時はどうしたらいいですか?
0961nobodyさん
2005/06/16(木) 18:14:00ID:???ヒント↓
dim objA
for each objA in Request.Form
Response.Write objForm & "<BR>"
next
0962nobodyさん
2005/06/16(木) 18:15:07ID:???0964nobodyさん
2005/06/16(木) 21:20:40ID:???JScriptの場合
var e = new Enumerator(Request.QueryString);
while (!e.atEnd()) {
Response.Write('<tr><td>'+e.item()+"</td><td>"+Request.QueryString(e.item()).Item()+"</td></tr>\n");
e.moveNext();
}
0965nobodyさん
2005/06/24(金) 21:06:01ID:N9+GYjTJこれでオブジェクト指向を完全にサポートすればVBScriptも長生きできたのに残念です
0966nobodyさん
2005/06/24(金) 21:27:23ID:???惜しむらくはVBScriptにもJScriptにも、ソースコードレベルのインポート機能がないことだなぁ。
Perlのrequire/useとかRubyのload/requireとかみたいな。
沢山クラスを作って、クラスごとにソースファイル分けるとものすごいことになる。
(まぁ、そういうレベルの再利用はCOMコンポーネント作れってのが当時のMSの姿勢だったんだろうけど)
VBScriptで「基底クラス」を書いて、委譲っぽく「派生クラス」を作って
これをASPで使おうとするとSSI includeの羅列で死ねる(てか死にかけた経験有り……)
あとどうでもいいけどPrivateメンバをMe付きで呼べないのはなんかやだと思うなぁ今でも。
0967nobodyさん
2005/06/24(金) 21:28:00ID:vQVz1Tij[ファイルの削除ボタン]→[すべてのオフラインコンテンツの削除]
とやるとキャッシュが削除されますが、これをASP(クライアント処理もVBS)でやりたいのですが可能でしょうか?
「キャッシュの削除」というボタンが表示されるWeb画面を作成し、そのボタンを押すと
キャッシュが全て削除されるということをやりたいのですが可能でしょうか?
0969nobodyさん
2005/06/24(金) 23:47:47ID:???FileSystemObject でテキストファイルから文字列変数に読み込んで
VBScript の Execute か JScript の eval() は?
0971969
2005/06/25(土) 00:56:34ID:???いや、SSIで困る場合もあるんでね。
例えば、
<% If xxxxx Then %>
<!--#include file="aaaaaa.asp" -->
<% Else %>
<!--#include file="bbbbbb.asp" -->
<% End If %>
とかやった場合、aaaaaa.asp と bbbbbb.asp で同じ名前の変数を宣言しているとエラーになる。
0972nobodyさん
2005/06/27(月) 22:29:56ID:???あとはスクリプトコンポーネントとかw
regsvr32が面倒だっつーのに解決になってないんだがなw
あと個人的には.aspファイルをSSIではなく、スクリプトだけの.vbsや.jsを
<script runat=server>で取り込む方が好み。
スクリプトだけのファイルなら.wsfにも流用利くからね。
0973nobodyさん
2005/06/28(火) 00:42:01ID:???例えば aaaaa.asp や bbbbb.asp が HTMLのテンプレートだったと考えてくれ。
その中でテーブルとかリストをForループで作る時に Dim i とかやるだろ。
関数はあまり関係ないのよ。
かといってインクルード元でインクルード先の変数をすべて宣言するのも
ちょっと納得いかない解決方法だしな。
現実はそうすることが多いが。
0974nobodyさん
2005/06/28(火) 14:47:12ID:6ezmeGfPASPでIIS(Aサーバ:Webサーバ専用)→SQLServer(Bサーバ:DBサーバ専用)に
アクセスしたいんだけど、SQLサーバのWindows認証で弾かれてDBアクセスできないという
初歩的なとこでハマってます。
何をどうすればいいのか、ぐぐっても、MSDN見てもさっぱり判らないので
質問するスレや、ググるためのキーワード、バカでもわかりそうなサイトなどを
教えていただければ幸いです。
0975nobodyさん
2005/06/28(火) 15:25:16ID:Shs5qPZNデザイン画面にいけなくなるのですが別の方法があるのでしょうか。
0976nobodyさん
2005/06/28(火) 16:15:05ID:???SQL Server 2000 自習書シリーズ
No.7 ADO/ASP/COM+ による Web アプリケーション開発入門
ttp://www.microsoft.com/japan/SQL/techinfo/selfstudy/Self_doc.asp#17
他も全て読むべし。
0977nobodyさん
2005/06/28(火) 20:40:17ID:???いや、だからそのaspを、大きなfunctionとそれを呼び出す一行、という構造にしてはいかがか?
レガシaspはfunction内で%> <%で挟んでHTML書けるから
そんなに難しくはないと思うのよ。
>>974
Windows認証はドメインでも張ってないと使い勝手悪いよ。
何もない状態でやるとしたら同じユーザを同じパスワードで両方のマシンに作っておく。
それでそのユーザをIISの匿名アクセスアカウントに設定する。
またはいらんアカウント作ったりIISの設定したりが嫌なら
http://support.microsoft.com/default.aspx?scid=kb;ja;248187
これでDBサーバマシンのアカウントを偽装するとか。
0978nobodyさん
2005/06/29(水) 12:31:22ID:YB2R7XZOデータセットまで作成しDataSource,member,Value,Field 等設定したのですが何も読み込まれません。
どうしてなんでしょうか
0981nobodyさん
2005/06/30(木) 18:10:27ID:J5B2JoskstrUrl = "http://hoge.example.jp/%7Ehoge/"
Response.Redirect strUrl
Response.End
とすると、Response.Redirectが勝手にエンコードして、
http://hoge.example.jp/%257Ehoge/
となり、ページが見つかりません、になります。
エンコードしない設定ってあるでしょうか?
チルダにすれば、ってのはなしでお願いします。
0983nobodyさん
2005/07/01(金) 08:49:12ID:NRcRl73Vいやだから、Response.Redirectが勝手にURLエンコードするから
しない設定はありますか?って質問なんですが。
もしかしてServer.URLDecodeのことを暗に言ってるのでしょうか?
ここってASPスレでASP.NETスレではありませんけど。。。
0984nobodyさん
2005/07/01(金) 10:53:56ID:???MSDN LibraryではServer.HTMLEncodeしてるみたいだけど。
ttp://msdn.microsoft.com/library/en-us/iissdk/html/01d1962f-0d45-4a5b-a46c-1b7f38f37ab3.asp
>チルダにすれば、ってのはなしでお願いします。
こういうのは、その理由を説明しておいたほうがよいような気もする。
0985nobodyさん
2005/07/01(金) 11:21:04ID:???「チルダのキー位置がわからない」
・・・すまん
0988nobodyさん
2005/07/02(土) 19:04:20ID:iwokMyPKチルダにすればというのはなしの理由は、
リダイレクトするURLが%7Eだけでなくいろんな%nnがあるからです。
%7Eだけなら、勝手にエンコードされ%257Eにされるのを考慮して、
事前にReplace(strUrl,"%7E","~")にすればいいだけの話です。
現在aspにはURLDecodeというものはありません。
>>987
私の環境では、XP pro(IIS5.1),2000 Server(IIS5.0)ともに
リダイレクトの結果は、HTTPの応答ヘッダとして
Location: http://hoge.example.jp/%257Ehoge/
が返ってきます。
どのような環境でしょうか?
0989nobodyさん
2005/07/02(土) 20:36:03ID:???こいつ何言ってんの?
IIS6.0ならMETA弄ればその現象は起きない。
5.0とか5.1ならURLDecodeくらい自分でdll作るか
そこだけ asp.net でやればいいじゃん。
自分できる知識がないなら
BASPのBASE64メソッドでも使っとけ
0990nobodyさん
2005/07/02(土) 21:44:54ID:iwokMyPKこいつ何言ってんの?はこちらのセリフで、
MSから提供されてるものでどうなのかと聞いてるわけですよ。
環境によって他のObjectを使えない(禁止されてる)など
いろんなサーバ環境があるわけですよ。
もう一度書くと
IIS5.0で
Response.RedirectでURLエンコードされないようにする方法(設定)はありますか?
ですよ。
できるできないの答えだけでいいんですよ。
0991nobodyさん
2005/07/02(土) 23:02:42ID:???0992nobodyさん
2005/07/03(日) 02:43:24ID:???0994nobodyさん
2005/07/03(日) 11:17:43ID:Z+lQ7+TH俺も設定方法知るまで一旦クライアントに吐いて
クライアント側でリダイレクトされる方法取ってたけど、
いまは正常にサーバ側でリダイレクトできるようになった。
6.0みたいに全部xmlに書いてあればわかりやすいけど、5.0は変なところにあるんですよ。
0995nobodyさん
2005/07/03(日) 11:44:56ID:???> MSから提供されてるものでどうなのかと聞いてるわけですよ。
> 方法(設定)はありますか?
> できるできないの答えだけでいいんですよ。
yesかnoかを知りたいのか?
それともあわよくば設定方法まで知ろうとしてるのか?
俺は2000も2003もどちらも設定方法知らないんだけどね。
まぁ、こういう奴はここで設定方法聞き出せなければ
USERS GROUP とかに行くんだろうからいいのかw
0997nobodyさん
2005/07/03(日) 12:20:13ID:???0998nobodyさん
2005/07/03(日) 12:28:43ID:???次スレ立てました。
<%= ASP総合 %> Part.4
http://pc8.2ch.net/test/read.cgi/php/1120361248/
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。