ASPは全く初心者です。これから始めようと思っています。
初歩的な質問で申し訳ないのですが、テキスト本に載っているサンプルコードの内、ブラウザで表示されるものとされないものがあり、原因がよくわかりません。IISの設定なのかと思い、色々と調べていましたが全くわかりません。原因を教えてください!
【表示されるコード例】
<%@ Language=VBScript %>
<html>
<head>
<title>Hello</title>
</head>
<body>
<%
'文字列を表示します。
Response.Write "Hello"
%>
文字列を表示します。
<% = "Hello" %>
</body>
</html>
【表示されない(エラー)コード例】
<%
StrText=Request.Form("text1")
%>
<html>
<head>
<title>フォームの入力値を受け取る</title>
</head>
<body>
<%
Response.Write "入力された値:" & StrText
%>
<form method="post" action="form.asp">
<input type="text" name="text1" >
<input type="submit" value="送信" >
</form>
</body>
</html>
A 回答 (9件)
- 最新から表示
- 回答順に表示
No.8
- 回答日時:
しばらく、来れなくてすみません。
その後どうでしょうか?
私の方は、特に新しい情報の無かったのです。申し訳ない。
とりあえず、エラーを切り分けてみませんか?
2つのコードを比較して、NGの方だけで使われている機能として、
(1)Request.Formを使用している。
(2)変数を使用している。
(3)変数の内容をResponse.Writeしている。
ただ、#3の補足から判断すると、(3)は問題無さそうなので、
(1)と(2)を切り分けるために、(1)の記述をやめて、
単純に変数に文字定数を代入する分を書いて少し絞りませんか?
No.7
- 回答日時:
確認ですがASPがエラーになると行番号が表示されたと思いますが表示されていませんか?
単に「表示されません」と出る場合、入力されたアドレスが間違っている様な気がします。確認してみて下さい。
あと、関係ないかもしれませんがPROXYを使用している環境でアドレスに「localhost」を指定するとPROXYサーバーへアクセスし同じ様な症状になった記憶があります。でも表示できるページもあるとの事なのでこの可能性は低そうですね。
早く解決できればいいですね。
この回答への補足
ご回答ありがとうございます。
エラー発生時にVS.netでデバッグしてみると、
If Response.Buffer Then
Response.Clear
Response.Status = "500 Internal Server Error"
Response.ContentType = "text/html"
Response.Expires = 0
End If
という箇所で、「不明な例外」と表示されています。
ちなみに、proxyは使用していないので問題なさそうです。
会社のマシンなので、他の開発環境も色々と入っている為に
悪さをしているような気がしてきました。
No.6
- 回答日時:
ん~?????
まだ、エラーに成るんですよね?
今、自分のマシンにIISインストールして試したけど、
「入力された値:」の後は表示されないけど、
エラーには成らないんですよ。
ちなみに、下のコードでは、上手く出ました。
<%@ Language=VBScript %>
<%
StrText=Request("text1")
%>
<html>
<head>
<title>フォームの入力値を受け取る</title>
</head>
<body>
<%
Response.Write "入力された値:" & StrText
%>
<form method="get" action="form.asp">
<input type="text" name="text1" >
<input type="submit" value="送信" >
</form>
</body>
</html>
このコードも動かないとすると、どこを疑えば良いのか?
ちなみに、試した環境は、
WinXP Pro sp2 + IIS5.1
です。
IISの設定は、インストールしたそのままです。
今日は、この後出かけるので、ここまでです。
環境など書いておいていただければ、明日以降もう一度調べてみますよ。
この回答への補足
色々とありがとうございます。
ryoukunさんのコードで再度試して見ましたが
やはりダメです。。。
環境ですが、ryoukunさんと同じWinXP Pro sp2 + IIS5.1
です。
No.5
- 回答日時:
参りましたね。
まさかと思うけど、
<%
Dim StrText
StrText=Request.Form("text1")
%>
にしたらどう?
この回答への補足
ありがとうございます。
うーん。。。試してみたけどやっぱ駄目ですね。
会社のマシンで試しているんですが、他の開発環境も入っているので
それが影響しているのかもしれません。
ロジック上の問題ではないとしたらIISの設定など、
どこを疑えばいいのでしょうか。
No.4
- 回答日時:
そうですか。
そこを疑うとしたら、
StrText=Request.Form("text1")
を
StrText=Request("text1")
もしくは
StrText=Request.QueryString("text1")
に変えてみてください。
どちらか上手くいったら、解説しますので、
質問を閉じずに、補足で結果教えてください。
この回答への補足
度々、ありがとうございます。
教えて頂いた2パターンとも試してみましたが
両方とも同じ内部エラー(500)が発生してしまいます。
この部分が原因ではないのでしょうか。
No.3
- 回答日時:
#1の者です。
その次元では無かったですか。
失礼しました。
【表示されるコード例】の一行目の内容
<%@ Language=VBScript %>
を、
【表示されない(エラー)コード例】の一行目に追加してみてください。
これが無いと、スクリプトの種類が、IIS側でデフォルトに設定されている言語に成ってしまうので、正しく解釈されていないかもしれません。
この回答への補足
御回答ありがとうございます。
ですが、<%@ Language=VBScript %>を1行目に追加しただけでは
駄目なようです。
ためしに、<%@ Language=VBScript %>を1行目に追加し
<%
StrText=Request.Form("text1")
%>
の記述を削除すると、画面には表示されるようになりました。
でも、これでよいのでしょうか?「送信」ボタンを押すとクリアされてしまいます。
No.1
- 回答日時:
【表示されるコード例】は、単純に文字列を表示しているコードなので、ページを表示すれば、"Hello"が表示されると思いますが、
【表示されない(エラー)コード例】は、先頭にある「Request.Form~」で受け取った文字列を表示するコードなので、初めてページを表示したときは、何も表示されないと思います。
TextBoxに文字列を入力して、[送信]ボタンを押せば、ページが更新され、入力した文字が表示されると思います。
この回答への補足
ご回答ありがとうございます。
少し言葉足らずでした、申し訳ありません。
何も表示されないというのは、「ページを表示できません。」と
HTTP 500 内部エラーになってしまうということなのです。
解決方法を御教授頂けないでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS 私の能力からして間違っていないような気がします。 4 2022/09/30 13:24
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- PHP php ログイン 1 2022/11/01 00:24
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- PHP PHPのエラーの解消法について教えて下さい。 1 2023/02/06 10:48
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
実行時エラー 438になった時の...
-
エクセルエラー13型が一致しま...
-
なぜこんな初歩的なVBAのIf文で...
-
VBSで変数の宣言はできないので...
-
実行時エラー48発生時のDLL特定...
-
VBS実行時エラー オブジェクト...
-
EXCEL/VBAで、自分のPCだけエラ...
-
マクロについて教えてください...
-
DataGridView からの値取得に関...
-
実行時エラー3001「引数が間違...
-
OLEDB.NETで接続できない
-
AccessVBAでExcelを起動し、罫...
-
Application.ActiveInspectorで...
-
VBAで入力規則の設定がうまくい...
-
VB6 エラー「プロシージャの呼...
-
実行時エラー 1004 の解決方法...
-
プロシージャ名の取得
-
[Delphi] データセットは閉じて...
-
VBAでのMATCH関数の使用
-
1列目の何行目に検索文字がある...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
実行時エラー 438になった時の...
-
エクセルエラー13型が一致しま...
-
【Excel VBA】マクロをボタンに...
-
なぜこんな初歩的なVBAのIf文で...
-
VBAでのエラー
-
マクロについて教えてください...
-
ExcelVBA Range クラスの Page...
-
実行時エラー3001「引数が間違...
-
VBS実行時エラー オブジェクト...
-
VBAがブレークモードになっ...
-
OLEDB.NETで接続できない
-
プロシージャ名の取得
-
EXCEL VBAマクロ中断でデバッグ...
-
VBSで変数の宣言はできないので...
-
ADODB.Streamを使用してUTF-8を...
-
実行時エラー -'-2147417848
-
AccessVBAでExcelを起動し、罫...
-
VB6+SQL サーバー 2000 で 実行...
-
Outlook.ApplicationをCreateOb...
-
Application.ActiveInspectorで...
おすすめ情報