- ベストアンサー
cgi上のhtmlをrubyのifで条件分岐
rubyでcgiをつくっています。 htmlのinputとruybの絡めかたがわかりません教えてください。 まず下記のようにボタンを設置して、 <form> <input type="button" value="新規登録"> </form> ↑ ボタンを押したら、LoginとIDの登録フォームがでてきて、 それ以外なら変化なし のようなものをつくりたいのですが、どのようにifで書けばよいのかが分かりませんでした。教えてくださいよろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
No1です。 登録画面の方は出来ているのなら、新規登録ボタンの部分はJavaScriptがいいんじゃないでしょうか。 <html> <head><title>実験</title></head> <script> function regist(){ document.getElementById("regist").setAttribute("style","display: block"); document.getElementById("new").setAttribute("style","display: none"); } </script> <body> <input id="new" type="button" value="新規登録" onclick="regist()"> <div id="regist" style="display: none"> <form action="test.cgi" method="post"> Username: <input type="text" name="login"><br> Password: <input type="password" name="password"><br> <input type="submit" value="login"> </form> </div> </body></html>
その他の回答 (1)
- notnot
- ベストアンサー率47% (4900/10359)
とりあえず出来てるところまで書いてください。
補足
返信ありがとうございます。何しろ素人なもので、調べながら作っていますが上手くいきません。 txtファイルにidとpasswordを書き込んで管理するログインフォームを参考書をみながら作りましたが、それだけの機能なので、簡易な新規登録の画面を作りたいとおもい、投稿するに至りました。 アバウトな順序はなんとなくイメージがつくのですが、書き方などで苦戦しております。もし、ヒント又は、解決の糸口をお持ちでしたら、よろしくお願いいたします。 test.cgi ----------------------------------------------- #! /usr/bin/ruby puts <<HTML Content-type: text/html <html> <head><title>実験</title></head> <body> <form> <input type="button" value="新規登録"> </form> HTML if (ボタンを押したなら) then puts <<HTML <form action="test.cgi" method="post"> Username: <input type="text" name="login"><br> Password: <input type="password" name="password"><br> <input type="submit" value="login"> </form> HTML if (ボタンをおしたなら) then フォームに入力した内容idとpasswrdを テキストファイルへ書き込み。 puts "登録完了" else end else end puts "</body></html>" ------------------------------------------------ txtファイルには :で区切ってidとpasswordを書きこんでいくようにしようと思います。 例↓ hideki:noooo home:99999 king:000001
お礼
ありがとうござまいす。とても参考になります。 感謝します。