<%= ASP総合 %> Par ..
[2ch|▼Menu]
446:nobodyさん
06/04/21 12:15:40
>>445
ここのアプリケーション開発基礎が詳しい
URLリンク(www.microsoft.com)

まぁ、いまであれば、Visual Web Developer 2005 Express Editionと
SQLServer2005ExpressEdition with Advanced Servicesで無料で開発できる

447:nobodyさん
06/04/22 05:00:11 KZQOiwti
ツールを使わないで作るASPでsendmailみたいなプログラム作れないでしょうか?
cgiでSMTPを使って出来たのだからありそうだけどなかなか見つかりません。
よろしくお願いします。

448:447
06/04/22 05:11:37 KZQOiwti
SMTP鯖を直接叩いてメールを送るソースお願いします。

449:447
06/04/22 07:52:46 IlbM7gzP
URLリンク(homepage2.nifty.com)
今これ試してみたけど
こんなエラーになりました。
どこを直せばよいでしょうか、お願いします。

-----
サーバーによって 1 つまたは複数の受信者アドレスが拒否されました。サーバーからの応答は次のとおりです。550 5.7.1 Unable to relay for
-----


450:nobodyさん
06/04/22 11:28:12
>>449
試してみたがソースに問題はなさそう
鯖がそのメアドに送れないって言ってるんでそちらを調べてみて
URLリンク(www.google.co.jp)

451:nobodyさん
06/04/22 12:30:44
>>449
こんなのMSであるんだな。初めて知った。
でもこれみると、POP Before SMTPやSMTP Authには対応してない気がするのは、
漏れだけかな・・・

となると、まず認証関係を確かめる必要がある。
次はスパムされちゃう恐れがあるので、そのSmtpを運営してるプロバイダを使用してる
ユーザだけとか、企業だとIPアドレス等とか、いろいろ制限されててメール送信して
くれない可能性があるね。

452:447
06/04/22 13:47:10 IlbM7gzP
ちなみにこれがCGIでSMTPを叩いてメール送信するソースですが
これをASP用に変えられないでしょうか。
お願いします。

use Net::SMTP;
$smtp = Net::SMTP->new($domain); #SMTPサーバ

$smtp->mail($mail); #送信元の指定
$smtp->to($to); #宛先の指定

# データ部の組み立て
$smtp->data();
$smtp->datasend("To:$to<$to>\n"); #Toヘッダ
$smtp->datasend("Subject:$kenmei\n"); #件名
$smtp->datasend("\n");
$smtp->datasend("テスト\n");
$smtp->dataend();
$smtp->quit;


453:nobodyさん
06/04/22 16:06:29
ツール使わないっていってんのに、おもいっきりモジュールつかってるんですが。
use Net::SMTP;

これが許されるならBASP21を素直に使えよ。

454:nobodyさん
06/04/23 01:14:01
ラジオボックスを複数個用意して、いずれかが選択された時に出力する部分を入れ替える、というのは可能でしょうか。

たとえば、

<form name="sample">
<input type="radio" name="test" value="1" checked>
<input type="radio" name="test" value="2">
<input type="radio" name="test" value="3">
</form>
<%@ Language=VBScript %>
<% If document.sample.test(1).checked = true Then %>
ラジオボタンの1が選択された時に表示される内容<br>
<% Else If document.sample.test(2).checked = true Then %>
ラジオボタンの2が選択された時に表示される内容<br>
〜〜

こういった感じのものを作りたいと思っていますが、どうも上手くいきません。
よろしくお願いします。

455:nobodyさん
06/04/23 02:19:41
>>454
可能

普通にクラスのメソッドで、ポストされたラジオボタンの値に従って
処理をわければいいだけだと思われ。

456:454
06/04/23 03:41:00
 POSTで同ページにアクションを送る、という方法ではなく、ラジオボタンを
押された時に表示を切り替えれたら、と思っています。
 ラジオボックスのonClickプロパティでどうのこうの…という方法を試して
みましたが、どうもエラーが出てしまいます。
 ソースのサンプルみたいなものがあれば嬉しいのですが、見つからず…。

457:nobodyさん
06/04/23 06:58:29
>>454
たぶんASPとクライアントサイドのVBを混同してると思われ
こういうことやるなら鯖負担軽減のためにクライアントサイドでjavascriptとかで処理した方がいいと思うけど
どうしてもASPでって言うなら↓みたいにすればできるけど
---------------------------
<%
Dim CHK,URL,MSG
URL= Request.ServerVariables("SCRIPT_NAME")
CHK=Array("","","")
If Request.QueryString("test")<>"" Then CHK(Request.QueryString("test")-1)=" checked"
%>
<html>
<body>
<form name="sample">
<input type="radio" name="test" value="1" onclick="self.location.href='<%=URL%>?test=1'"<%=CHK(0)%>>
<input type="radio" name="test" value="2" onclick="self.location.href='<%=URL%>?test=2'"<%=CHK(1)%>>
<input type="radio" name="test" value="3" onclick="self.location.href='<%=URL%>?test=3'"<%=CHK(2)%>>
</form>
<%
Select Case Request.QueryString("test")
Case 1
Response.Write "1つ目が押されました"
Case 2
Response.Write "2つ目が押されたようです"
Case 3
Response.Write "3つ目が押されたかも…"
Case Else
End Select
%>
</body>
</html>

458:nobodyさん
06/04/23 14:40:54
>>456
それを実現するならAjaxだな
URLリンク(www.atmarkit.co.jp)

だけど、めんどくさそうで、おれならやりたくないな


459:nobodyさん
06/04/23 16:27:40
表示だけの問題なら全部ソースに書いといて1つだけ表示させればいい
<html>
<head>
<script>
function disp(targetID){
document.getElementById("Disp1").style.display="none";
document.getElementById("Disp2").style.display="none";
document.getElementById("Disp3").style.display="none";
document.getElementById(targetID).style.display="inline";
}
</script>
</head>
<body>
<form name="sample">
<input type="radio" name="test" value="1" onclick="disp('Disp1');">
<input type="radio" name="test" value="2" onclick="disp('Disp2');">
<input type="radio" name="test" value="3" onclick="disp('Disp3');">
</form>
<div id="Disp1" style="display:none;">ラジオボタンの1が選択された時に表示される内容</div>
<div id="Disp2" style="display:none;">ラジオボタンの2が選択された時に表示される内容</div>
<div id="Disp3" style="display:none;">ラジオボタンの3が選択された時に表示される内容</div>
</body>
</html>

まぁ既にスレ違いだが

460:454
06/04/24 02:09:47
ソースを元に作成してみます。
手短ですが、返答ありがとうございました。

461:nobodyさん
06/04/24 11:16:04 gF03A8tY
今さらかもしれないのですが、ISAPIについて教えてください。
ISAPIFilterからApplication変数を読む事ってできないでしょうか。


462:nobodyさん
06/04/25 10:04:51
文字列の比較について聞きたいのですが、分かる方がいればお願いします。
ドメインのカントリーコードを抜き出して比較するためのコードとして、以下のように書きました。

Dim country1
Dim country2
country1 = Session("domain")
If country1 = "" then
err = 1
Else
country2 = Split(country1,".")(UBound(Split(country1,".")))
If country2 = "com" or "net" or "jp" then
err = 1
End If
End If

Session("domain")には、フォームから送信されたドメイン名(www.hogehoge.orgなど)が入っています。
しかし、これだとエラーが出てしまいます。
何度か試してみましたが、If country2 = "com" then のように、一種類だけなら問題なく動きました。
原因が分かる方いませんか?

463:462
06/04/25 11:20:35
先ほど書き込みした者です。
昨日から悩んだ末の書き込みでしたが、先ほど演算子の優先度の関係に気づき、自己解決しました。
板汚し失礼しました。

464:nobodyさん
06/04/28 01:48:17 TXbB+xqv
ASPをこれから始めようと思ってます。
で、IISをインストールして、IEからURLリンク(127.0.0.1)にアクセスしたところ、
ユーザー名とパスワードの入力ウィンドウが表示されました。
ユーザー登録した覚えはないのですが、どうしたらいいですか?

465:nobodyさん
06/04/28 07:06:59
>>464
IISの設定で「既定のWebサイト」のプロパティから
ディレクトリセキュリティ→匿名アクセスおよび認証コントロールの「編集...」
のダイアログの「匿名アクセス」に
チェックついとるか?

466:nobodyさん
06/04/28 22:49:06
>>464
それってルーターかモデムにアクセスしようとしてるんだよ
試しにルーターかモデムにログインするIDとパス入れてご覧

467:nobodyさん
06/04/29 00:22:32
>466
それはひょっとしてギャグで(ry

468:464
06/04/29 12:17:28 5l2q50I6
>>465
IISの設定の方法がわかりません。

469:nobodyさん
06/04/29 13:29:04 xQDtvren
携帯サイトを作ろうとしてますが、キャリアによって移動するページを仕分けたいのですが
どのような判別ソースを書けばよいでしょうか?
キャリアはEZ、Docomo、Vodafoneですが、画像を表示できるタイプとできないものの
全部で6パターンを仕分けたいです。
よろしくお願いします。

470:nobodyさん
06/04/29 17:09:41 xQDtvren
これをASP風に変更すればどんな感じになるでしょうか?
お願いします。

sub User_Agent {
my($user_agent) = @_;

# exp. DoCoMo/1.0/P209is/c10
if (user_agent =~ /DoCoMo/i) then
platform = "DoCoMo"
agetPart = split(/\//, user_agent);
browser = "DoCoMo"
if agetPart[1] =~ /\(/) { # FOMA
$agetPart[1] =~ /([0-9]\.[0-9])\s([^\(]*)(.*)/ ;
$browser_v = $1;
$platform_v = $2;
} else { # i-mode
$browser_v = $agetPart[1];
$platform_v = $agetPart[2];
}
if($platform_v eq '') {
$platform_v = '';
}
return ($platform, $platform_v, $browser, $browser_v);
}


471:nobodyさん
06/04/29 17:12:39 xQDtvren
しくじりました。こっちです。

sub User_Agent {
my($user_agent) = @_;

# exp. DoCoMo/1.0/P209is/c10
if ($user_agent =~ /DoCoMo/i) {
$platform = 'DoCoMo';
@agetPart = split(/\//, $user_agent);
$browser = 'DoCoMo';
if ($agetPart[1] =~ /\(/) { # FOMA
$agetPart[1] =~ /([0-9]\.[0-9])\s([^\(]*)(.*)/ ;
$browser_v = $1;
$platform_v = $2;
} else { # i-mode
$browser_v = $agetPart[1];
$platform_v = $agetPart[2];
}
if($platform_v eq '') {
$platform_v = '';
}
return ($platform, $platform_v, $browser, $browser_v);
}


472:nobodyさん
06/04/29 18:22:50
>>468
ふーんそっか大変だね

473:466
06/04/30 00:30:55
>>467
すまん。実際俺はそうだったよ
串指してないし

474:nobodyさん
06/04/30 12:32:07
今すぐループバックアドレスでぐぐれ。

475:464
06/04/30 15:56:09 BgW+gShw
えー色々と問題を解決していきました。
とりあえずお礼と結果
>>465
チェック入ってました。結局アクセスできませんでしたが、
他のファイルはアクセスできることがわかりました。
多分、最初のファイル自体の問題なんじゃないかと思います。
有難うございました。
>>466
違いました。
有難うございました。

で、ASPをやってみて、JScriptとVBScriptは上手くいくんですが、
ASP.NETのC#ができません。MMCで使用する言語をC#にしたんですが
どうやら実行が許可されていないようです。
どうすればいいでしょうか。

476:nobodyさん
06/04/30 16:52:26
ASP.netはスレ違いなんだが…
とりあえずやってみようとしてるファイルの
ファイル名と内容とブラウザに出てきたエラーの詳細を晒してみ。

477:464
06/04/30 17:14:27 BgW+gShw
>>476
わかりました。以後、ASP.NETの質問はASP.NETスレでやります。

URLリンク(127.0.0.1)

ファイル名:index.aspx ←IISのドキュメントのところで設定した。
カレントディレクトリはwwwroot

HTTP 403.1 アクセスは許可されていません:
実行アクセスは許可されていません。
・背景
プログラムの実行が許可されていないディレクトリから、CGI、ISAPI、
またその他の実行可能プログラムを実行しようとしました。

<%@ Page language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"URLリンク(www.w3.org)">
<html xmlns="URLリンク(www.w3.org)" xml:lang="ja"><head>
<title>Test</title></head><body>
<h1>Test</h1>
<p><%= "test" %></p>
</body></html>

478:nobodyさん
06/04/30 20:32:41
wwwrootのフォルダのアクセス権だな。
Everyoneに読み取りと実行の権限がいるはず。
あと既定のwebサイトのプロパティでアプリケーション設定の実行アクセス権を
「スクリプトのみ」か「スクリプトおよび実行可能ファイル」にしてあるか確認。

479:464
06/05/01 01:40:32
>>478
動きました。(少し感動)
有難うございます。

480:nobodyさん
06/05/01 21:20:33 G9IWAFk4
>>470-471についてお願いします。

481:nobodyさん
06/05/01 22:42:43
>>480


function User_Agent (var1,var2) {

var user_agent = Request.ServerVariables("HTTP_USER_AGENT").Item();

// ex. DoCoMo/1.0/P209is/c10
if (user_agent.match(/DoCoMo/i)) {
platform = "DoCoMo";
agetPart = user_agent.split("/");
browser = "DoCoMo";
if (agetPart[1].match("(")) {// FOMA
// $agetPart[1] =~ /([0-9]\.[0-9])\s([^\(]*)(.*)/ ;←ここ意味不明?代入?正規表現?
browser_v = var1;
platform_v = var2;
} else {
browser_v = $agetPart[1];
platform_v = $agetPart[2];
}
if (platform_v=="") { platform_v = ""; }// ここ意味あるの?
}

return (platform, platform_v, browser, browser_v);
}



482:nobodyさん
06/05/01 22:53:52
こうか?適当。ノーチェック。

function UserAgent(userAgent)
dim platform,agetPart,browser,regex,omatches,omatch
dim browserV,platformV
if instr(Ucase(userAgent),"DOCOMO") > 0 then
platform = "DoCoMo"
agetPart = split(userAgent,"/")
browser = "DoCoMo"
if instr(agetPart(0),"(") > 0 then
set regex = new RegExp
regex.pattern = "([0-9]\.[0-9])\s([^\(]*)(.*)"
set omatches = regex.execute(agetPart(0))
set omatch = omatches(0)
browserV = omatch.submatches(0)
platformV = omatch.submatches(1)
else
browserV = agetPart(0)
platformV = agetPart(1)
end if
end if
UserAgent = array(platform, platformV, browser, browserV)
end function


483:nobodyさん
06/05/02 14:14:00
hoge1.aspにて

dim hoge
set hoge = new clsHoge

set session("sshoge") = hoge

hoge2.aspにて

dim hoge
set hoge = session("sshoge")
response.write hoge.hello()

というようにhoge2.aspでオブジェクトを取り出して
使いたいのですがhogeのhello()メソッドにアクセスできません。
どこに問題があるか分かる方がおられましたら
教えていただけないでしょうか?

484:nobodyさん
06/05/02 15:34:41
>>483
hello()メソッドはどこで定義したの?

485:nobodyさん
06/05/02 20:53:58
>>482
ありがとうござあいます
今日は酔ってるんで明日やってみます

486:nobodyさん
06/05/03 00:24:06
>>483
超残念。
SessionにはVBScriptのオブジェクトは格納できない。
(厳密に言えば格納は出来るけど、それを取り出して使う事が出来ない)
SessionはIISのオブジェクトであって、VBScriptとは次元が違うから。

自力でserialize的な仕掛けでも作るしかないね。

487:nobodyさん
06/05/17 17:39:34
Microsoft JScript 実行時エラー エラー '800a138f'

分かる人、助けてくらはい

488:nobodyさん
06/05/17 20:24:32
せめてそのエラーを吐くソースを晒せ

489:nobodyさん
06/05/17 23:51:46
>>487
ランタイムエラーを起こすJScriptコードがあるってことだな。

490:nobodyさん
06/05/18 06:23:27
ちらっとぐぐってみたら
WindowsUpdateが絡んでいるようなのがちらほら。
だとしたらちょっと厄介な話かもね

491:nobodyさん
06/05/26 09:32:16
引越ししたんだが、webサーバーに使ってたマシン(Win2000server)でaspを実行すると、
response.redirectで引っかかるようになってしまった。
別PCで動かした場合は今までどおり動くんだが、、、
IISとか設定いじった覚えもないし。

何か疑うような所ってあります??


492:nobodyさん
06/05/26 16:10:20
IISの設定で親のパスを有効になってますか?

493:nobodyさん
06/05/29 11:55:41
>>492
なってます。
ナンデダロ。。。。

response.redirectで別aspに飛ばすと、
内部エラー500で止まってしまう。

494:nobodyさん
06/05/29 23:41:30
>>493
まずこれを試せ
URLリンク(support.microsoft.com)

495:491
06/05/30 09:33:53
「ISAPIアプリケーションをキャッシュする」のチェックが抜けてますた。。。
外した覚えもないんだけどな。。。

>>492,>>494様、サンクスです。



496:nobodyさん
06/06/08 21:56:07 Ak1nru4j
初歩的なんですが、テキストの色を変えるために
Response.Write "<FONT color"red">hoge</FONT>"
ってやるとエラーになるんですが、どうすればいいんでしょうか?


497:nobodyさん
06/06/08 23:44:25
>496
redの前後の"を""と二つ続ける

ウマー

498:nobodyさん
06/06/09 00:24:28 ziVzofuc
>>497
サンクスです!
そっか、単純に"だと閉じちゃうのか。

499:nobodyさん
06/06/09 02:24:04 ziVzofuc
また詰まってしましまいました。
Response.Write "<input type=""submit"" value=""hoge"">"
とすると「オブジェクトがありません」て言われました。
何がまずいんでしょうか?

500:499
06/06/09 02:35:40
自己解決です。
ただのタイプミスでした。スイマセン。

501:nobodyさん
06/06/09 09:32:31 1vEHWatH
>>500
つか、TYPOくらい
ここにPOSTする前に
見直して確認しろよ。www


502:nobodyさん
06/06/22 22:11:24 EZKQQCl5
URLリンク(www.itmedia.co.jp)

↑にページに

> Response.Redirectメソッドを呼び出しても,即座に引数に指定されたURLに飛ぶというわけではなく,
> ASPファイルに記載された処理はすべて実行されるので,十分に注意したい。

て書いてあるんだが、Response.Redirect以降の処理は実行されないんじゃなかったっけ?


503:nobodyさん
06/06/22 23:46:17
そのはず

504:nobodyさん
06/06/22 23:47:07 EZKQQCl5
>>503
「そのはず」 ってどっち?

505:nobodyさん
06/06/22 23:52:08 EZKQQCl5
URLリンク(hp.vector.co.jp)

こっちには 「以降に記述された処理は無意味」 って書いてあるな。


506:nobodyさん
06/06/23 00:08:48
>>505
URLリンク(support.microsoft.com)
URLリンク(support.microsoft.com)

ここら辺に書いてあるけど、

Buffer=Trueの場合はサーバ内のバッファに溜めるから
サーバ側で以降のコードは実行されるけど、クライアント側では実行されない。

Buffer=Falseの場合はサーバ内でバッファリングしないから
サーバもクライアントも以降のコードは実行されない。

まぁ、結局は Server.Transfer にするか Response.End をつけろってことだな

507:nobodyさん
06/06/23 01:55:36
>505
そこ「Response.End : スクリプトの実行を中止します」って何をデタラメ書いてんだ

508:nobodyさん
06/06/23 19:40:18
---red1.asp---
<%
Session("HOGE") = "HOGE"
Response.Redirect "red2.asp"
Session("HOGE") = "HAGE"
%>

---red2.asp---
<%=Session("HOGE")%>

結果は各々の目で確かめましょう


509:nobodyさん
06/06/24 16:27:07 NUoL74NB
ファイルのアップロードについてですが、BASP21を使わずにやれる方法ありませんでしょうか?
サンプルURLなどお願いします。

510:nobodyさん
06/06/24 17:38:14
>>509
まずググれ。

511:nobodyさん
06/06/24 23:19:08
>>509
BASP使わないとしてもADOの比較的新しいバージョンが必要。
あとはググれ

512:nobodyさん
06/06/24 23:58:07
別解として自分で一からファイルアップロードコンポーネントを書いてしまうというのもあるな。

513:nobodyさん
06/06/25 15:19:55 HTU8DLsE
ADO.Stream を使ってファイルをアップロードしたいのですが
どのように記述すればよいでしょうか?
お願いします。

鯖は2003です。


514:nobodyさん
06/06/25 16:24:25
>>513
このスレを読み直せ

515:nobodyさん
06/06/25 17:26:55
>>513
>>364-368

516:nobodyさん
06/07/06 14:06:24 /8ybWcGq
textboxに数字以外の文字を入れた場合エラーを返すにはどうしたらいいですか?
VBSでお願いします。

517:nobodyさん
06/07/06 21:31:04
>>516
正規表現
[0-9]*

518:892
06/07/07 14:18:20 SQksCJlc
使い方としてはこんな感じでよいですか?

chk = ○ '← なんか入れる。
if chk = [0-9] then
  ok
else
  error
end if




519:nobodyさん
06/07/07 21:51:25
>>518
URLリンク(www.microsoft.com)

520:nobodyさん
06/07/09 07:12:27
お手軽にIsNumeric関数じゃダメかな?
判定基準に気をつける必要はあるけど

521:nobodyさん
06/07/09 17:13:49
>>520
数値判定ならIsNumeric
数字判定なら正規表現

522:518
06/07/09 22:47:13 X7Dt+q6q
できました。ありがとうございます。

523:518
06/07/09 22:55:02 X7Dt+q6q
続けて質問で申し訳ないのですが、
ページをPDFで表示する場合ってどうやってやればいいでしょうか?
エクセル表示とかはわかるんですが・・・

524:nobodyさん
06/07/09 22:57:13 DTwv2VIN
>>523

もうちょっと詳しく

525:518
06/07/09 23:20:58 X7Dt+q6q
説明が適当ですいません。

表を表示しているページをボタンを押下した時、そのページごとPDF出力して
印刷をかけたいのですがどうしたらよろしいでしょうか?

526:nobodyさん
06/07/10 00:45:49
>>525
適当なOCX探してこいwww


527:nobodyさん
06/07/10 06:40:20
>>518
事実上無理だから諦めなさい。

多分その調子でやっていたら実現するまでに
30スレ分くらいお前の質問で消費されるわ

528:nobodyさん
06/07/10 23:11:34 iQivVhLt
>>525
AcrobatインストールすればIEのツールバーにAcrobatのアイコンができる。
そのボタンを押せば現在表示されているページがPDFで表示されるよん

529:nobodyさん
06/07/11 15:37:13
>>525
翼システムのSVFとかは?

530:525
06/07/12 11:50:39 MVSuxQrd
ありがとうございます。色々試してみます。

531:nobodyさん
06/08/06 17:19:21
レガシASPの開発環境でお勧めは何ですか?

Visual Studio .Net(2002/2003/2005)かVisual InterDev 6.0
を検討していますが、.Netでも補完機能やデバッガ
の使い勝手は良いですか?

Visual InterDev 6.0はデバッグがなかなか動かなくて…

532:nobodyさん
06/08/06 18:29:19
>501
開発環境が.NetだとレガシASPなんてサポートしてないはず。
「いいじゃん、一緒にASPも.Netにシチャイナ? 」ってなもんで。
# VS.net入れたらレガシASPが動かなくなるってことではないので念のため。

533:nobodyさん
06/08/06 22:33:54
デバッグはResponse.Writeデバッグで十分だと思う…。

534:531
06/08/07 22:55:50
>>532,, 533
回答ありがとうございます。

.Net2005のExpressEditionでごく単純なASPで試してみましたが、
Option Explicitが動かないほか、include先で定義している関数が
未定義扱いになってうまくいきませんでした。
ASP3.0用のbuildProviderがあればうまくいくのかもしれませんが。

Visual InterDev 6.0でなんとかやろうと思います。
新規開発ではないので、.Netにしちゃうと、全コード移行しないといけないので。

535:533
06/08/08 20:22:28
ちなみに俺はVisual InterDevのレスポンスの悪さに業を煮やし
程なくしてサクラエディタに乗り換えました。
たかがVBScript、MSDN Libraryさえ引ければ補完のメリットなんて
あってないようなもんだしw

フォルダ内全ファイル対象の置換は便利だけどねw>InterDev

536:nobodyさん
06/08/11 21:57:33 yHgdeCQU
Windows2003Server、IIS6.0、SQLServer2003でメルマガ読者の管理を行う
プログラムを作っています。
上司に、メールアドレス入力欄にDOSコマンド?を入れると、
サーバ側で起動するから、それができないような処理を入れろ、
と言われたのですが、現象が再現できません。
(上司も誰かに突っ込まれたらしく、どうすれば実行できるのかわからないようです)

入力チェックは、一旦変数に格納した後、
正規表現でメールアドレス書式をチェックしており、
DB登録、検索時にはメールアドレスは暗号化しています。

現象が再現できれば、対応策も考えられると思うのですが、
どなたか、こういった問題をご存知の方、アドバイスいただけないでしょうか。

537:nobodyさん
06/08/11 23:21:32
>>536
無視していいんじゃね?
多分セキュリティゴロの商売トークを真に受けてるだけだろ。

チェックするとしたらDB登録時のSQLインジェクションぐらいか。
commandオブジェクト使うとか、ちゃんとシングルクォートのエスケープをしていれば無問題。

538:nobodyさん
06/08/12 02:29:08 xBjeg5WF
>>536
IISにおいて、フォームから適当なDOSコマンドを入れると
サーバ側で動き出すなんてありえない。

BASP21のExecとか、cgiがexeファイルとか、自作ISAPI使ってるっていうなら
ありえなくないが。

539:536
06/08/12 12:28:22
>>537,538
レスありがとうございます。
自分もずっと調べていたのですが、やはりソレらしい情報はないですね。
(Jetエンジンを使った問題がヒットしましたが、そもそもJet使ってないし
チェックで弾かれています)
とりあえず、SQL文をしっかり洗い出して、エスケープなどの抜けを
しっかり調べてみます。
お騒がせしました。

540:nobodyさん
06/08/18 11:37:56
Dim hoge
Set hoge = Application("hoge")

とするとApplication("hoge")にまだ値が入っていないとき
オブジェクトがありません。というエラーになってしまいます。
事前に値が入っていないかチェックする方法はありますでしょうか?

よろしくお願いします。

541:nobodyさん
06/08/18 21:23:55
isEmpty(Application("hoge"))

しかしApplicationにオブジェクトを格納するのは大抵ビミョウじゃぞ

542:nobodyさん
06/08/18 21:32:54
>540
確かエラートラップするしかなかったと思う。
DictionaryみたくExistsメソッドとかありゃ便利なんだが……そう思った頃が俺にもありました。確かにorz
(関数一個書けばいい話ではあるが)

つーかApplicationやSessionにオブジェクト突っ込むのは基本的に禁じ手ですよ?
URLリンク(www.microsoft.com)
(世の中にMTAなCOMコンポーネントなんてそうそうありませんorz)

543:542
06/08/18 21:33:47
……前半は忘れてくりゃれorz

544:nobodyさん
06/08/18 23:42:54 FoNP/zJS
>>540
Stringに強制変換させたりね

545:nobodyさん
06/08/19 21:26:33
>>540
TypeName

546:nobodyさん
06/08/24 15:03:40 aU8FJkVc
質問です。
Response.ContentType = "application/pdf"で
ページをPDF出力することってできないんですか?


547:nobodyさん
06/08/24 21:34:05
>>546
それを送った後で、PDFのデータ実体を
ブラウザに送り出してやればOK

548:546
06/08/25 09:47:25 NQK5sUA1
>547
それってResponse.ContentType = "application/pdf"が書いてある
コードのページ自体をプラウザで表示してやれば、PDFに変換されたものが
でてくるって事ですよね?
できないんですが・・・

549:nobodyさん
06/08/25 16:00:43
html→PDFの変換を自動でやらせるって事?

550:546
06/08/25 17:19:37 NQK5sUA1
そのとうりです!

551:nobodyさん
06/08/25 18:38:37
できるよ

552:nobodyさん
06/08/25 18:49:31
Response.ContentType = "application/pdf"って書いてpdfになると思ってる奴は
Response.ContentType = "audio/mpeg"って書いたら何が出ると思ってるんだろう

ちょっと考えれば出来るか出来ないか分かるだろうにな

553:546
06/08/25 19:44:31 NQK5sUA1
何をどう考えたらいいかわかりませーん。
もうすこしヒントを

554:nobodyさん
06/08/25 21:32:10
>>553
単純には出来ません。
真っ当なやり方をするとしたらPDFlibとかの外部コンポーネントでも使って
頑張ってコツコツ作っていくしかない。

555:nobodyさん
06/08/26 03:07:21
>>549-550
その発想はなかったわ・・・

556:nobodyさん
06/08/26 15:16:53
>>548
PDFのデータ実体って、
バイナリデータだぞwww

誰がプレーンテキスト吐き出せって言ったよwww

久しぶりに超うけた。

557:nobodyさん
06/08/26 15:18:28
>>556
脳みそかわいそうな子なのカナ?

558:nobodyさん
06/08/27 01:50:09
>556
まぁスレともレスともあまり関係ないが
後学のためにテキストエディタで何か一つPDFファイルを開いて見てみることを勧める

559:nobodyさん
06/08/28 01:03:57 7CABj+h0
>>553
リクエストがある度にPDF化するのは
サーバに負荷がかかるし、実際レスポンスも悪くなる。

事前にPDFに変換しとくか、
クライアントPCにAcrobatとかインストールして
IEのツールバーに表示されるPDF変換アイコンを押してもらうといいよ

560:nobodyさん
06/08/28 02:39:29
PDFはバイナリーデータもサポートしてるけどな

まぁ>>556はそんな事どうでもいいくらいおバカだが…

561:nobodyさん
06/08/29 12:02:00
Nowから秒より下の値を取得したいのですが
やりかたがわかりません。
たとえば
Year(Now)とすれば年が取れるのですが
yyyy/mm/dd hh:mm:ss.fff
のfffの部分を取得したいのですが
やり方があったら教えてください。よろしくお願いします。

562:nobodyさん
06/08/29 19:12:23
>>561
Now()ってss以下、
1000分の1秒単位の精度の
戻り値があったっけ?

たしか
yyyy/mm/dd hh:mi:ss
までじゃなかったか?

100分の1秒で求めるなら、
Timer()使って.(ピリオド)から右側の値だけ
取得することは可能だと思うけど、
1000分の1秒ってのが厳しいな。


563:nobodyさん
06/08/30 00:14:06
そもそもPCのタイマってそんなに精度ないよ

564:nobodyさん
06/08/30 00:19:03
ネタ元がアレゲなんだが
「分解能の高いタイマ関数ほど実行に時間がかかる傾向がある」
と聞いたことがある。

565:nobodyさん
06/08/30 01:05:53 F1Hs7Aoq
>>564
いや、普通に正しいだろ。


566:546
06/08/30 09:26:55 7QXl0OJH
やっぱりコツコツ作っていくしか無いんですね。
ありがとうございました。

567:nobodyさん
06/08/31 16:00:10
java開発からASP開発に周り、ASP開発は初めてですが、
javaのstrutsのようなフレームワークみたいなコンポーネントってあるのでしょうか。
MVCになってなくても良いのですが、htmlの部品の表示などをもっと簡単にしたいです。

568:nobodyさん
06/08/31 19:26:54
>>567
一つ確認。ASP?ASP.net?

569:nobodyさん
06/09/01 10:34:28
>>568
ASPです。古いパッケージのカスタマイズ案件なので・・・

570:nobodyさん
06/09/01 22:30:45
>>567
気の利いたフレームワークとかは無い。
自分でfunction作るしかないね。
不幸中の幸いとして

function hoge()
%>
<DIV>ほげほげ</DIV>
<%
end function

っていう書き方が出来るので
それを利用したりするとちょっとは楽できるかも。

571:nobodyさん
06/09/04 11:45:39
URLリンク(www.aspin.com)のサイトにフリーなコンポーネントがあるそうですが、
よく使用するものや、お勧めとかはあるでしょうか?

572:nobodyさん
06/09/04 11:55:36
XMLDOMってやつを見つけました。
数が少ないですが、探せば使えそうなものがいくつか出てきそうです。

573:nobodyさん
06/10/04 00:11:43 SPPmb2Gu
ついに一ヶ月書き込みがない。。。

574:nobodyさん
06/10/05 18:58:59
さすがに全ての面で枯れたな。

ASPとりあえず何でも出来てよく動くんだけどね。
VBScriptがあまりに非力過ぎるんだよなー。

575:nobodyさん
06/10/05 22:06:52
ウチの社内じゃまだまだ現役だよ。
……はやいとこ.NETに移行したいんだけど、他にメンテできる人がいないから……

576:nobodyさん
06/10/05 23:04:36
>>575
社外向けでも現役でつよ・・・

577:574
06/10/06 00:15:23
む、「枯れてる」と言ったのはテクニックとかそういった意味の話で。
今更スレの話題になるようなトピックは無いと言いたかっただけ。

ちなみに俺も今は昔売ったASPのシステムの保守で飯食ってます。
あと5年は無くならないだろうな…。

578:nobodyさん
06/10/06 08:08:21
たしかに、技術的なモノは出尽くした感があるね。
新機能もないし・・・。

579:nobodyさん
06/10/06 18:49:31
>>577
「保守」って言葉は、システム屋には実に都合のいい考え方だよね。

実際には日常的にはほとんど何もやらないのに(っていうか日常的に何かやらなきゃいけないシステムは糞だ)、
「保守作業」と称して、コンピュータに疎いヤツらから金を巻き上げられる魔法の杖。

580:nobodyさん
06/10/06 19:15:33
>>579
そんな保守だったらSAIKOだなー。
そう甘くねんだよ。
公僕相手だと担当者が代わる度にそいつの趣味で下らん直しを入れさせられる…
全く相手してらんねー。
そんなに金使いたかったらもらってやるから金だけよこせ。金だけ。

581:nobodyさん
06/10/06 22:06:34 G5aLUCYG
>>575
社内レベルで .NET にする必要はないと思う

582:nobodyさん
06/10/06 23:43:25 gk7iZtFm
ASPってフレームワークなんてないよね?
やっぱりC++とかVBとかでdllを作ってそれをASPで使う感じなのでしょうか?

ASPとASP.NETではどちらが生産性が高い?

583:nobodyさん
06/10/07 10:08:57
>>582
まずあなたが「フレームワーク」をどういう意味で言ってるかを明らかにしましょう。
生産性についても同様。

584:バッカーです ◆KeuXjwWDdE
06/10/07 13:19:21
雛形的な意味かな?
何をやりたくて何を探してるのか具体的にかけば
レスもあると思う。

585:nobodyさん
06/10/08 17:14:44
>>580
担当者が変わるたびに直すとしても、いったん直したらまたしばらくは
特に何もすることないだろう。担当者が毎月変わるわけじゃあるまいし。
それで毎月保守代をもらえれば楽な仕事だ。

586:nobodyさん
06/10/08 18:55:36
>>585
よほど「保守担当」にネガティブイメージ持ってるらしいな。

世の中には面子とか根性論とかによってそういう「まともな理屈」が追い出された
異世界も存在するのさ。

587:nobodyさん
06/10/08 23:53:54
>>586
そうなのか。。。 大変だな。
そういう異世界を経験しないで済む俺はラッキーなのかな?

588:nobodyさん
06/10/09 00:00:59
>587
苦労はしてみてもいいかもしれないが
地獄まで見ることはないさ……

589:nobodyさん
06/10/09 00:59:35
>>588
俺は公的な組織が大嫌いなのでそもそも付き合うことは一生ないと思うが、
そちらはどうしても付き合わなきゃならないのなら、頑張ってくれ。

おまいがシステム業界の「小泉純一郎」となって、バカを駆逐・啓蒙してくれることを祈る。

590:nobodyさん
06/10/11 16:28:51 o9Xn/RpH
ASPで入力欄(INPUTタグ)に""と入力してDBに登録します。
これを再度編集しようとINPUTタグで表示すると、
value=""""となり、何も表示されません。
なにか、良い方法というのはあるのでしょうか?


591:nobodyさん
06/10/11 19:12:14 WiH1H+/l
>>590
DBに保存したデータ「""」が
表示されなくて困ってます、ってこと?

そうなら、DBに保存する辞典で、
エスケープシーケンスをくっつければいいんじゃね?ね?

592:nobodyさん
06/10/11 20:09:36 o9Xn/RpH
>>591
Response.Writeによる表示はされます。
しかし、INPUTタグの中に表示しようとすると出来ません。
Server.HTMLEncode()を使ってみましたが、
データが変わってしまうので・・・使い方がよろしくないのでしょうか?



593:nobodyさん
06/10/11 20:37:26
>>592
>>Server.HTMLEncode()を使ってみましたが、
>>データが変わってしまうので・・・使い方がよろしくないのでしょうか?
変わらないよ。ためしに
<input type="text" name="test" value="""">
ってというのフォームに加えてsubmitしてみ。

594:593
06/10/11 20:38:48
うげ。変わった。
value="&quot;&quot;"
ね。中身は半角にしてちょんまげ。

595:nobodyさん
06/10/11 20:47:13
一番カンタンな解決方法はaaaが""として

<input value='<%=aaa %>'>

とすることだな。逆にシングルクォーテーションがいれらんなくなるけどw
おいらならこうするな

<input value="<%=Replace(aaa,"""",""")%>">

596:nobodyさん
06/10/11 20:50:36
あ、試してる間に先越されたうえに>>593氏と同じミスを・・・

<input value="<%=Replace(aaa,"""","&quot;")%>">

&を半角に・・・

597:nobodyさん
06/10/11 21:55:56
>592
ASPというよりHTMLの問題だね。
HTML エスケープ でググってみ。

598:nobodyさん
06/10/12 02:03:13
XSSの巣はここですか?

599:nobodyさん
06/10/12 20:00:56
ダセェ煽りだな

600:nobodyさん
06/10/12 23:47:22
お前がな

601:nobodyさん
06/10/13 21:22:57
>>600
ダセェ脊髄反射だな

602:nobodyさん
06/10/14 12:56:06
お前がな

603:nobodyさん
06/10/14 22:17:52
ばーか、俺だよ

604:nobodyさん
06/10/15 01:32:07
オレ、オレ!

605:nobodyさん
06/10/15 09:14:52
ASP、っていうとまずApplication Service Providerかと思われてしまうご時世になってしまったな

606:nobodyさん
06/10/17 19:38:53
Application.Lockのタイムアウト時間を設定するやりかたを
教えてください。
よろしくお願いします。

607:nobodyさん
06/10/17 19:45:13
>>606
多分設計が間違っているんじゃないかなあ。
Lockをどういう目的で使ってる?

608:nobodyさん
06/10/17 23:56:36 pxOS6RG8
>>606
自分でLockをタイマー解除するスクリプトを作るしかない

609:nobodyさん
06/10/18 23:09:12
ASPでクッキーを削除するにはどうしたらよいでしょうか?

Response.Cookie("cookie") = "1"

で書き出せることはわかりました。


610:nobodyさん
06/10/19 19:22:23
ブラウザ閉じたら消えるが

611:nobodyさん
06/10/19 22:03:30 x3Bmvwr5
>>610
それはセッションじゃね?

612:nobodyさん
06/10/19 22:37:39
>>609
ブラウザ側で持ってる物だからサーバーから消せるわけないじゃない
空文字列をセットするか消されるタイミングを指定するか
Response.Cookies("cookie").Expires = 有効期限

613:nobodyさん
06/10/20 20:58:22
日本の罫線文化に適合しているのは、ASP.NETよりもASPなのかな?
本で解説されているような、ASP.NETの便利なコントロールよりも、
Repeater使ってセル結合しているような複雑な表をつくるほうが多いし。

ASP.NETと違った、タグライブラリを活用するような、独自の進化版ASPを誰か作ってくれないかな。

614:nobodyさん
06/10/20 22:49:18
>>611
有効期限を指定していないクッキーは普通ブラウザを終了させると消えるよ

615:nobodyさん
06/10/20 23:07:04
>>613
うむ
ASP.netのwebコントロールっていう奴らは
何かイマイチ日本人の感覚では使いづらいわな。

616:nobodyさん
06/10/21 08:21:59
>>613
どっちかというと.net系言語を使ってASP的な書き方をするやり方、がいいな。
ASPをC#.netで書ければなあとか思ったりする。

そこでActivePythonか?
でもそこまでしてでもある…。

617:616
06/10/21 08:22:50
× でもそこまでしてでもある…。
○ でもそこまでしてまだまだASPか?って感じでもある…。

618:nobodyさん
06/10/21 21:45:20 vl2bs6UL
ASPのSessionオブジェクトについて質問です。
全く異なる二つのWebアプリケーション test1.asp と test2.asp を同時に開き、それぞれ Session.SessionID を出力したところ全く同じものが入っていました。
これを、別々の Session を持たせたいのですが可能なのでしょうか?
また、一つのWebアプリケーション test.asp 上で、このプログラムが呼ばれる度に新しい Session を作ることは可能なのでしょうか?
ブラウザのウインドウを二つ立ち上げて両方 test.asp にアクセスした時に、別の Session を作りたいと思っています。
もちろん、二つのブラウザがそれぞれページ遷移してもそれぞれのセッションを保持したままをイメージしているのですが…

本やサイトを調べましたが詳しく解説されているところが見あたらず、質問させていただいております。
よろしくお願いします

619:nobodyさん
06/10/21 23:26:58
IEに関して言うと、同じプロセスだとSessionIDがかぶる。
つまり<A TARGET="BLANK">とか、Ctrl-Nとかで新規ウィンドウを開く、とかして複数のIEのウィンドウを開いた場合は
同じSessionIDを持つ事になる。


620:nobodyさん
06/10/21 23:51:05
っていうか、IISの仮想ディレクトリのプロパティで
アプリケーションを分ければいいだろ

621:618
06/10/22 09:04:54
>>619
ありがとうございます。
やはりウインドウ毎に意図的にSessionを発行し直すというのは無理なんですね

>>620
レンタルサーバなので、サーバ側はいじれないんです…

622:nobodyさん
06/10/31 21:52:10 4zgJkeOl
ページに3つのメニューリストを配置して、
MenuList1の選択値によってMenuList2の内容が決定し、
MenuList2の選択値によってMenuList3の内容が決定するといった処理を行いたい場合、
どのようにしたらよいのでしょうか?

623:nobodyさん
06/10/31 23:05:27
>>622
リストを変更するたびにPOSTして
サーバサイドで次のリストを変更して戻すのが
このスレとしては正しいwww


624:nobodyさん
06/11/01 00:17:54 ASDxYcPa
>>622
まぁ、今時ならAjaxだろうな

625:nobodyさん
06/11/01 04:33:10
>リストを変更するたびにPOST

ここをもう少し詳しく教えてもらえませんか

626:nobodyさん
06/11/01 10:03:30
>>625
それはJavaScriptとかの
クライアントサイドスクリプトの話だから
スレ違いwww


627:nobodyさん
06/11/01 12:26:02
>>625
selectのonchangeでサブミットするようにすればいいんだけど、
わからなければjavascriptの勉強してください

628:nobodyさん
06/11/01 16:14:02
毎回ボタンを押させる方式にすればjavascriptじゃなくてもできるけどね。
こんな感じ。

[      ▼][送信]

  ↓

[      ]
[      ▼][送信]

  ↓

[      ]
[      ]
[      ▼][送信]

629:nobodyさん
06/11/01 17:33:45
onchangeでsubmitできるのはjavascriptでしたか。
vbscriptで実現は無理でしょうか?

だとしたら>>628の案が現実的ですね。

630:nobodyさん
06/11/01 20:18:43
>>629
クライアントサイドスクリプトもVBScriptで書けるよ、IE専用なら。
でもそういう事じゃないだろうな〜。

631:nobodyさん
06/11/01 22:55:33
そうなんですよねサーバサイドでなんとかしたいんですよ。

どうしてもonchangeイベントでpostする為には、JavaScriptの選択なんでしょうね。
これまでVBScriptメインで作ってきているのですが、VBScriptのページと
JavaScriptのページが混在したシステムは問題ないのでしょうか?

632:nobodyさん
06/11/02 00:22:53
>631
クライアント側(というか、ブラウザに送り込まれてブラウザで動作するコード)はJavaScript、
サーバ側で動作する(クライアント側には送られない)コードはVBScriptで書くのがASPのたしなみ。

と昔聞いた。……ごめん聞いたのは嘘だが現実問題、JavaScriptのコード内に<%〜%>入れて制御するなんてのすら
実務ではよくあること。

633:nobodyさん
06/11/02 02:36:08
>>631
混在って言うのは、サーバサイドかクライアントサイドのどちらか片方で両方の言語を使う場合。
サーバサイドとクライアントサイドで別々の言語を使うのは、普通、混在とは言わないよ。
ソース上では混ざって見えるかもしれないけどね。

634:nobodyさん
06/11/02 23:56:26
極端な話、ブラウザからすればサーバサイドで何してようがどうでもいいわけで。
ASPが最終的にはHTMLに則った文字列を吐き出せればOKだと思ってる。

csvとかpdfとかはまた別の話ね(´・ω・`)

635:nobodyさん
06/11/12 07:55:38 m+ZTUqAd
FileSystemObject.CopyFileでコピーしようとしましたが
こんなエラーが出ました。どうすればよいでしょうか?
お願いします。

Microsoft VBScript 実行時エラー (0x800A01A8)
オブジェクトがありません。: 'FileSystemObject'


636:nobodyさん
06/11/12 12:15:17
>>635
オブジェクトはキチンと定義しろ

637:nobodyさん
06/11/12 19:31:42
エラーが出るコードを予想
Set fso = CreateObject("FileSystemObject")
ネットでサンプル探せばわかると思うけどこんな定義してるコードはないよ


638:nobodyさん
06/11/12 22:57:11
>>637
見当違いもいいとこだな

639:nobodyさん
06/11/13 07:55:59
>>638
いや、正解だろ

640:nobodyさん
06/11/13 19:11:33
>>639
100%外してるよ

641:nobodyさん
06/11/13 21:04:34
ここで重要なのは637があってるかどうかではなくて
635が問題になっているソースも出さずに解決策をクレクレしているところだよ。
だれかエスパーよんでこい


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

4886日前に更新/289 KB
担当:undef