出来るのだASP Q&A掲示板(過去LOG)  訪問数 52046 昨日 889 今日 776
    【PR】 パソコン入門からIT専門書まで幅広く取り揃えています。セブン-イレブン受取り手数料無料のセブンアンドワイ。
Topに戻る 掲示板に戻る 検索 削除 管理者

教えてください。   Trapさん [2001/09/15 19:58:16] [619]
  Re:教えてください。   YasNet(管理人)さん [2001/09/15 21:00:29] [621]
    Re:教えてください。   Trapさん [2001/09/16 11:03:12] [622]
      Re:教えてください。   YasNet(管理人)さん [2001/09/16 23:26:11] [623]
        Re:教えてください。   Trapさん [2001/09/17 11:55:50] [624]
          Re:教えてください。   YasNet(管理人)さん [2001/09/17 14:29:27] [625]

[619] 教えてください。
投稿者:Trapさん 2001/09/15 19:58:16
初めまして、Trapと言います。

asp+JavaScriptで作成をしているのですが、どうしても解らないことが有ります。
ボタンを押された時に、該当するHTMLファイルを別画面で表示をしたいのですが、
JavaScriptに引き渡された時に引数が文字では無く数値で引き渡されてしまいます。
これを文字として送るにはどの様にしたら良いのでしょうか。

<HTML>
<HEAD><TITLE>クエリー検索結果</TITLE>
<SCRIPT language="JavaScript" SRC="./include/common.js"></SCRIPT>
<SCRIPT Language="JavaScript">
<!--
function PF_QA()
{
//alert(document.form1.CNT.value);
document.form1.action = "toiawase.asp?P_FUNC=QA";
document.form1.target = "top";
document.form1.method = "POST";
document.form1.submit();
}

function PF_HP(in_hp)
{
//alert(document.form1.CNT.value);
document.form1.action = "./hp/"+in_hp+".htm";
document.form1.target = "top";
document.form1.method = "POST";
document.form1.submit();
}
// -->
</SCRIPT>
</HEAD>
<BODY BGCOLOR="#FFFFce">
<FORM id="form1" name="form1">
<TABLE BORDER="1" WIDTH="700">
<TR BGCOLOR="#ffffff">
<TD BGCOLOR="#FFE38E"><INPUT TYPE="checkbox" NAME="chk1"></TD>
<TD NOWRAP ALIGN="center">
<INPUT TYPE="button" VALUE="  " NAME="bu1" onclick="JavaScript:PF_HP(08000000000)">
</TD>
</TR>
<TR BGCOLOR="#ffffff">
<TD BGCOLOR="#FFE38E"><INPUT TYPE="checkbox" NAME="chk2"></TD>
<TD NOWRAP ALIGN="center">
<INPUT TYPE="button" VALUE="  " NAME="bu2" onclick="JavaScript:PF_HP(08212100000)">
</TD>
</TR>
</TABLE>
<BR>
<INPUT type="submit" name="hp1" value="問合せ" onclick="JavaScript:PF_QA()"> <INPUT type="reset" name="reset" value="リセット"></CENTER>
</FORM>

また、現時点でこの処理を行うと

「HTTP エラー 405
405 メソッドは許可されていません
Request Line に指定されたメソッドは、要求によって識別されたリソースでは
許可されていません。要求するリソースに適切な MIME タイプが設定されている
ことを確認してください。」

とエラーになってしまいます。このエラーの原因は何でしょうか?。
なにぶんasp歴があさいのでご教授お願いします。

[621] Re:教えてください。
投稿者:YasNet(管理人)さん 2001/09/15 21:00:29
Trap様 こんにちは YasNet です
 
> JavaScriptに引き渡された時に引数が文字では無く数値で引き渡されてしまいます。
> これを文字として送るにはどの様にしたら良いのでしょうか。
> <INPUT TYPE="button" VALUE="  " NAME="bu1" onclick="JavaScript:PF_HP('08000000000')">
これでOKです。' で囲んでやるだけでOKです。
 
> また、現時点でこの処理を行うと
>
> 「HTTP エラー 405
> 405 メソッドは許可されていません
> Request Line に指定されたメソッドは、要求によって識別されたリソースでは
> 許可されていません。要求するリソースに適切な MIME タイプが設定されている
> ことを確認してください。」
aspってここには、aspの記述が記載されていませんが・・・
 
では では

[622] Re:教えてください。
投稿者:Trapさん 2001/09/16 11:03:12
早速の回答ありがとうございました。

> > <INPUT TYPE="button" VALUE="  " NAME="bu1" onclick="JavaScript:PF_HP('08000000000')">
> これでOKです。' で囲んでやるだけでOKです。
こちらは、文字として引き渡しが出来ました。ありがとうございます。

> > 「HTTP エラー 405
> > 405 メソッドは許可されていません
> > Request Line に指定されたメソッドは、要求によって識別されたリソースでは
> > 許可されていません。要求するリソースに適切な MIME タイプが設定されている
> > ことを確認してください。」
> aspってここには、aspの記述が記載されていませんが・・・
すみませんでした、aspの記述してなかったですね。
asp記述はこのようになってます。(見づらいかもしれませんが)
宜しくお願いします。

(asp)
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
<!--#INCLUDE FILE="./include/dbcom.inc"-->
<!--#INCLUDE FILE="./include/Page.inc"-->
<!--#INCLUDE FILE="./include/session.inc"-->
<!--#INCLUDE FILE="./include/query_sub.inc"-->
<%

main

'*************************************************************************************************
' メイン
'*************************************************************************************************
sub main
dim ret
dbopen
P_FUNC = Request("P_FUNC")
select case P_FUNC
case ""
P_FORM = "INIT"
case "FIND"
call set_fses()
P_FORM = "FIND"
case "REFIND"
P_FORM = "FIND"
case else
end select
%>

<HTML>
<HEAD><TITLE>クエリー検索結果</TITLE>
<SCRIPT language="JavaScript" SRC="./include/common.js"></SCRIPT>
<SCRIPT Language="JavaScript">
<!--
function PF_QA()
{
//alert(document.form1.CNT.value);
document.form1.action = "toiawase.asp?P_FUNC=QA";
document.form1.target = "top";
document.form1.method = "POST";
document.form1.submit();
}

function PF_HP(in_hp)
{
//alert(document.form1.CNT.value);
document.form1.action = "./hp/"+in_hp+".htm";
document.form1.target = "top";
document.form1.method = "POST";
document.form1.submit();
}
// -->
</SCRIPT>
</HEAD>
<BODY BGCOLOR="#FFFFce">
<CENTER><BR><BR><BR><BR>
<FORM id="form1" name="form1">
<%
select case P_FORM
case "FIND"
call sub_find(1)
case "INIT"
call sub_init()
case else
end select
%>
<BR>
<INPUT type="submit" name="hp1" value="問合せ" onclick="JavaScript:PF_QA()"> <INPUT type="reset" name="reset" value="リセット"></CENTER>
</FORM>
</BODY>
</HTML>
<% dbClose
end sub
%>
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
(inc)
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
<%
Dim fld_ok
Dim fld_cnt
Dim rec_cnt
Dim in_text()
Dim w_cnt
Dim Dirname,Filename,FileObject,OutStream

'*************************************************************************************************
' 検索結果初期画面テンプレート
'*************************************************************************************************
sub sub_init()
%>
<%call sub_hedder(0)%>
<TR BGCOLOR="#e1f5ff">
<TD COLSPAN="6" NOWRAP>
現在選択データはありません。検索条件を指定して検索ボタンを押してください。
</TD>
</TR>
<%call sub_footer(0)%>
<%
end sub
'*************************************************************************************************
' 検索結果初期画面エラーテンプレート
'*************************************************************************************************
sub sub_error1()
%>
<TR BGCOLOR="#e1f5ff">
<TD COLSPAN="6" nowrap>
検索データはありません。検索条件を再度指定して検索ボタンを押してください。
</TD>
</TR>
<%
end sub
'*************************************************************************************************
' 検索結果テンプレート
'*************************************************************************************************
sub sub_meisai(in_f1,in_f2,in_f3,in_f4,kai_code,internet,in_cnt)
%>
<TR BGCOLOR="#ffffff">
<TD BGCOLOR="#FFE38E"><INPUT TYPE="checkbox" NAME="chk<% = cstr(in_cnt)%>"></TD>
<TD NOWRAP><% = in_f1%></TD>
<TD NOWRAP><% = in_f2%></TD>
<TD NOWRAP><% = in_f3%></TD>
<td NOWRAP><% = S_Get_Bunrui_s("01",in_f4)%></TD>
<TD NOWRAP ALIGN="center">
<INPUT TYPE="button" VALUE="  " NAME="bu<% = cstr(in_cnt)%>" onclick="JavaScript:PF_HP('<% = cstr(kai_code)%>')">
</TD>
</TR>
<%
end sub
'*************************************************************************************************
' 検索結果テーブルヘッダー出力
'*************************************************************************************************
sub sub_hedder(in_cnt)
%>
<TABLE WIDTH="700" BORDER="0">
<TR>
<TD HEIGHT= "20" ALIGN="right"><% = in_cnt%>件選択されました</TD>
</TR>
</TABLE>
<TABLE BORDER="1" WIDTH="700">
<TR BGCOLOR="#ff5500" ALIGN="center">
<TH><FONT color="#ff5500" size="1">■</FONT></TH>
<TH NOWRAP><B><FONT SIZE="-1" COLOR="#ffffff">会員名</FONT></B></TH>
<TH NOWRAP><B><FONT SIZE="-1" COLOR="#ffffff">住所</FONT></B></TH>
<TH NOWRAP><B><FONT SIZE="-1" COLOR="#ffffff">TEL.</FONT></B></TH>
<TH NOWRAP><B><FONT SIZE="-1" COLOR="#ffffff">業種</FONT></B></TH>
<TH NOWRAP><B><FONT SIZE="-1" COLOR="#ffffff">会員HP</FONT></B></TH>
</TR>
<%
end sub
'*************************************************************************************************
' 処理メーター出力
'*************************************************************************************************
sub sub_meter(in_mode,in_per)
if in_mode = 1 then
%>
<TABLE align="left">
<TR>
<TD BGCOLOR="#ffffff"><%=in_per%>%</TD>
</TR>
</TABLE>
<%
else
%>
<TABLE>
<TR>
<TD BGCOLOR="#ffffff"><%=in_per%>%</TD>
</TR>
</TABLE>
<%
end if
end sub
'*************************************************************************************************
' 検索結果テーブルフッター出力
'*************************************************************************************************
sub sub_footer(in_cnt)
%>

</TABLE>
<INPUT TYPE="hidden" VALUE=<%=w_cnt%> NAME="cnt">

<%
end sub

'*************************************************************************************************
' 検索処理
'*************************************************************************************************
sub sub_find(in_flg)
On Error Resume Next

dim str1
dim i
dim w_per
dim w_perflg(10)
dim WW1
dim WW2

fld_ok = 0
'セッションからデータを検索
rec_cnt = 0
w_cnt = 0
SQL = "SELECT * FROM member_tbl"
if session("freeword") <> "" then
SQL = SQL & sub_find_sub() & "free1 = '%" & session("freeword") & "%'"
fld_ok = 1
end if
if session("freeword") <> "" then
SQL = SQL & sub_find_sub() & "free2 = '%" & session("freeword") & "%'"
fld_ok = 1
end if
if session("freeword") <> "" then
SQL = SQL & sub_find_sub() & "free3 = '%" & session("freeword") & "%'"
fld_ok = 1
end if
if session("gyo_code") <> "" then
SQL = SQL & sub_find_sub() & "gyo_code = '" & session("gyo_code") & "'"
fld_ok = 1
end if
if session("kai_name") <> "" then
SQL = SQL & sub_find_sub() & "kai_name LIKE '%" & session("kai_name") & "%'"
fld_ok = 1
end if
if session("kai_kana") <> "" then
SQL = SQL & sub_find_sub() & "kai_kana LIKE '%" & session("kai_kana") & "%'"
fld_ok = 1
end if
if session("prefecture") <> "00" then
SQL = SQL & sub_find_sub() & "ken_code = '" & session("prefecture") & "'"
fld_ok = 1
end if
if session("address1") <> "" then
SQL = SQL & sub_find_sub() & "address LIKE '%" & session("address1") & "%'"
fld_ok = 1
end if
if session("address2") <> "" then
SQL = SQL & " OR address LIKE '%" & session("address2") & "%'"
fld_ok = 1
end if
if session("address3") <> "" then
SQL = SQL & " OR address LIKE '%" & session("address3") & "%'"
fld_ok = 1
end if

if fld_ok = 0 then
P_FUNC2 = Request("P_FUNC")
select case P_FUNC2
case "REFIND"
call sub_init()
exit sub
case else
%>
<SCRIPT LAUNGAGE = "JavaScript">ALERT("検索条件を入力して下さい。")</SCRIPT>
<%
call sub_init()
exit sub
end select
end if
SQL = SQL & " ORDER BY kai_code"
Set TB = objConn.Execute(SQL,clng(0))
if NOT TB.BOF then
w_cnt = TB.recordcount
if in_flg = 1 then
call sub_hedder(w_cnt)
end if
do until TB.EOF
rec_cnt = rec_cnt + 1
if in_flg = 1 then
call sub_meisai(TB("kai_name").value, _
TB("address").value, _
TB("tel").value, _
TB("gyo_code").value, _
TB("kai_code").value, _
TB("internet").value, _
rec_cnt)
str1 = "sCD" & cstr(rec_cnt)
session(str1) = TB("kai_code").value
if rec_cnt >= DISPLAY_MAX then
exit do
end if
else
w_per = int((rec_cnt / w_cnt) * 100)
for i = 10 to 100 step 10
if w_per >= i then
if w_perflg(i/10-1) = 0 then
if i = 100 then
call sub_meter(2,i)
else
call sub_meter(1,i)
end if
w_perflg(i/10-1) = 1
end if
end if
next
end if
TB.MoveNext
loop
if in_flg = 1 then
call sub_footer(w_cnt)
end if
else
if in_flg = 1 then
call sub_hedder(0)
call sub_error1()
call sub_footer(0)
end if
end If
TB.close
Set TB=Nothing
exit sub
err_rtn:

end sub
'*************************************************************************************************
' セキュリティフィールドチェック設定
'*************************************************************************************************
function chk_sec(in_fld,in_val)

if Pickup_Seq(in_fld) = 0 then
chk_sec = ""
else
chk_sec = in_val
end if

end function
'*************************************************************************************************
' WHERE or AND or OR設定
'*************************************************************************************************
function sub_find_sub()

select case fld_ok
case 0
sub_find_sub = " WHERE "
case 1
sub_find_sub = " AND "
case else
end select

end function

%>
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−

[623] Re:教えてください。
投稿者:YasNet(管理人)さん 2001/09/16 23:26:11
こんにちは YasNet です。

<!--#INCLUDE FILE="./include/dbcom.inc"-->
<!--#INCLUDE FILE="./include/Page.inc"-->
<!--#INCLUDE FILE="./include/session.inc"-->
<!--#INCLUDE FILE="./include/query_sub.inc"-->

<HTML>
のタグが上記のサブルーチンに含まれていませんか?
 
もし、含まれているようなら、表示のタイミングをよーく
考えてみてくださいね、
 
逆の事で、上記サブルーチンで、表示処理をしているけど
HTMLのヘッダ情報がないまま、処理を進めている可能性もあります。
 
面倒ですが、どこまで処理が動作しているか、response.write
などを入れてどこでエラーが発生しているか特定した方が良いと思いますよ
 
では では

[624] Re:教えてください。
投稿者:Trapさん 2001/09/17 11:55:50
こんにちはTrapです。
回答ありがとうございました。

最終的に原因がJavaScriptに有った事が判明しました。
思いこみはいけませんね。ご迷惑おかけしました。
また、壁にあたったときはご教授して頂けますか?

[625] Re:教えてください。
投稿者:YasNet(管理人)さん 2001/09/17 14:29:27
Trap様 こんにちは YasNet です
 
> 最終的に原因がJavaScriptに有った事が判明しました。
> 思いこみはいけませんね。ご迷惑おかけしました。
> また、壁にあたったときはご教授して頂けますか?
お気軽にどうぞ
 
では では



TreeBBS For ASP V.0.1.3
Program By YasNet