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

新規登録と編集登録を切り替えたい。   みるさん [2002/09/30 12:06:57] [2734]
  Re:新規登録と編集登録を切り替えたい。   かずみさん [2002/09/30 13:22:50] [2735]
    Re:新規登録と編集登録を切り替えたい。   みるさん [2002/09/30 14:42:24] [2736]
      Re:新規登録と編集登録を切り替えたい。   かずみさん [2002/09/30 16:24:35] [2738]

[2734] 新規登録と編集登録を切り替えたい。
投稿者:みるさん 2002/09/30 12:06:57
はじめまして!ASPをはじめてわからないところがあって、
質問させてください。

今、アドレス帳をASPで作っています。

登録用のHTMLファイルを新規登録と編集登録で使いたいと
思っています。

そこで、登録用のHTMLのテキストボックスに何も記述されていなければ、
新規登録。
テキストボックスに入力されていたら編集登録みたいな感じに
したいと思いますが、よくわかりません。

Simei=Request.QueryString("SIMEI")

If UpFlg=1 Then
Response.Write "<form method = 'post' action ='t_kakunin.asp?UpFlg=1'>"
Else
Response.Write "<form method = 'post' action ='t_kakunin.asp?UpFlg=0'>"
End If

If Len("Sime") <> 0 Then
 Response.Write "<input type='text' name='SIMEI'" & "value=" & "'" & Simei & "'" & ">"
UpFlg=1
Else
Response.Write "<input type='text' name='SIMEI'" & ">"
End If

Response.Write "<input type='submit' name='sousin' value='登録'>

こんな感じでUpFlgの値を変えてactionを送ったりできるのですか?

次の画面でUpFlgが1の場合は、SQLのUPDATE構文、
0の場合は、INSERT構文を使って処理させたいと思うのですが。

長々と申し訳ありませんでした。
本当に困っています。よろしくお願いします。

[2735] Re:新規登録と編集登録を切り替えたい。
投稿者:かずみさん 2002/09/30 13:22:50
> こんな感じでUpFlgの値を変えてactionを送ったりできるのですか?

私はフラグなどを送信する場合は"hidden"属性の項目を利用します。

If Len("Sime") <> 0 Then
 Response.Write "<input type='text' name='SIMEI'" & "value=" & "'" & Simei & "'" & ">"
Response.Write "<input type="hidden" name="UpFlg" value="1">"
Else
Response.Write "<input type='text' name='SIMEI'" & ">"
Response.Write "<input type="hidden" name="UpFlg" value="0">"
End If

ってな感じですかねぇ。
そうすれば、次画面にPOSTで送信されるので、Request.form("UpFlg")で判別できると思います。

ということで
>Response.Write "<form method = 'post' action ='t_kakunin.asp?UpFlg=0'>"
というような書き方はしません。
できると思いますけどね。

[2736] Re:新規登録と編集登録を切り替えたい。
投稿者:みるさん 2002/09/30 14:42:24
>私はフラグなどを送信する場合は"hidden"属性の項目を利用します。

ありがとうございます。この方法でできそうです。

もう一つ質問なのですが。。。
項目が二つ以上あった場合はどのようにすればよいのですか?

If Len("Sime") <> 0 Then
 Response.Write "<input type='text' name='SIMEI'" & "value=" & "'" & Simei & "'" & ">"
Response.Write "<input type="hidden" name="UpFlg" value="1">"
Else
Response.Write "<input type='text' name='SIMEI'" & ">"
Response.Write "<input type="hidden" name="UpFlg" value="0">"
End If
If Len("KAISYAMEI") <> 0 Then
 Response.Write "<input type='text' name='KAISYAMEI'" & "value=" & "'" & Simei & "'" & ">"
Response.Write "<input type="hidden" name="UpFlg" value="1">"
Else
Response.Write "<input type='text' name='KAISYAMEI'" & ">"
Response.Write "<input type="hidden" name="UpFlg" value="0">"
End If

と二つ項目があった場合で、片方が入力されていて1でもう一つの
項目が0の場合は、編集登録をしたいのですが、
初めの方を見て判断してしまいます。なので、
はじめの項目が0の場合は、他に1があっても新規登録を
してしまいます。
どのように対処すればよいでしょうか?お願いします。

[2738] Re:新規登録と編集登録を切り替えたい。
投稿者:かずみさん 2002/09/30 16:24:35
> もう一つ質問なのですが。。。
> 項目が二つ以上あった場合はどのようにすればよいのですか?

単純にフラグを2つにしてみては?

If Len("Sime") <> 0 Then
 Response.Write "<input type='text' name='SIMEI'" & "value=" & "'" & Simei & "'" & ">"
Response.Write "<input type="hidden" name="UpFlg1" value="1">"
Else
Response.Write "<input type='text' name='SIMEI'" & ">"
Response.Write "<input type="hidden" name="UpFlg1" value="0">"
End If
If Len("KAISYAMEI") <> 0 Then
 Response.Write "<input type='text' name='KAISYAMEI'" & "value=" & "'" & Simei & "'" & ">"
Response.Write "<input type="hidden" name="UpFlg2" value="1">"
Else
Response.Write "<input type='text' name='KAISYAMEI'" & ">"
Response.Write "<input type="hidden" name="UpFlg2" value="0">"
End If

> と二つ項目があった場合で、片方が入力されていて1でもう一つの
> 項目が0の場合は、編集登録をしたいのですが、
> 初めの方を見て判断してしまいます。なので、
> はじめの項目が0の場合は、他に1があっても新規登録を
> してしまいます。
> どのように対処すればよいでしょうか?お願いします。

この"UpFlg1""UpFlg2"をつかって、IF文なりCASE文なりで
自由に判断すればいいとおもいますよ。

#こういうことじゃないです?



TreeBBS For ASP V.0.1.3
Program By YasNet