• 締切済み

ブラウザで入力したデータをPCで利用したい

初心者です。よろしくお願いします。 html/javascriptの<form action ・・・・>で、ブラウザから入力したデータを「サーバを介さずに」同じPC上のフォルダに保存する方法はありますか?あれば教えてください。 やりたいことは、自作のhtmlを入力画面にして、出力先をPC上の任意の.txt、(できれば.xls)に保存したいのです。 見よう見まねで、WEB上にあったサンプルコード、<form action="cgi-bin/aaa.cgi" method="post">に目をつけて、前もってaaa.txtというファイルをPC上に作成し、"file://C:\Users\・・・aaa.txt"とやってみましたが、案の定、目的は達成できませんでした。(所詮素人の浅知恵か・・・笑)。 どうぞ、よろしくお願いします。

みんなの回答

  • Ogre7077
  • ベストアンサー率65% (170/258)
回答No.3

必要なときにだけローカルでWebサーバーを立ち上げ、 送信されたフォーム内容をExcelファイルに保存するスクリプトを動かす 例) Java + POI 例) IIS + ASP.NET + OpenXML ブラウザを HTML Application にして、 フォーム内容を送信せずにExcelファイルに保存するスクリプトを動かす 参考) http://gallery.technet.microsoft.com/office/248be0cc-e2ce-45ce-ae01-ec1b0f95f05b 少々方向性が異なりますが、 HTML5 の新機能 WebStorage とか File API:Writer を使う 参考) https://developer.mozilla.org/ja/docs/DOM/Storage#localStorage 参考) http://www.w3.org/TR/file-writer-api/

回答No.2

> 自作のhtmlを入力画面にして、出力先をPC上の任意の.txt、 >(できれば.xls)に保存したいのです。 上記のことは、技術的にはできるようです。 今回のご質問に対して、私には実際のコードを提示できるほどの 能力はないので、以下の情報をご参考下さい。 http://itpro.nikkeibp.co.jp/article/COLUMN/20100218/344797/ 以前、以下の情報を参考にして、JavaScriptから直接エクセル ファイルに書き込むことはやったことがあります。 http://pc.nikkeibp.co.jp/article/column/20110127/1029852/?P=1  →こちらにアクセスするには登録が必要

  • shockatz
  • ベストアンサー率80% (153/191)
回答No.1

<form action="...">の遷移先を"file:///C:\Users\・・・aaa.txt"とか! おおそれは上手く行けば素晴らしいですが、百発百中駄目、浅知恵です。 <form>からsubmitされてきた値を取得するには、perlやphpなどの「サーバサイドスクリプト」や、javaやC#で作られた「Webアプリケーション」が必要です。 そして、こいつらはWebサーバの上で動くプログラムです。つまり「サーバ」が必要です。 ただ、「サーバ」というのは単なるプログラムで、Excelなんかに比べたら比較にならない小さなプログラムで、自分のマシンでも簡単に動かすことができます。 Windowsならば一定バージョン以上のライセンスなら最初からWebサーバは付属しています。 こういうものを使って、マシンを一時的に「個人用の」サーバに仕立て、そのうえでphpなりを動かして、フォームの値を受け、テキストファイルに保存すればいいです。 <form action="http://localhost/hoge.php">とかいうふうに指定します。

関連するQ&A

  • ActivePerlでのCGI設定

    Active Perl と AnHttpd を使ってCGIを作っているのですが、別ディレクトリにあるCGIを呼び出せなくて困っています。 F:\Dataドライブ配下に 以下のようなディレクトリ・ファイル構成で /public_html  index.html  /html   /AAA    AAA.html  /cgi-bin   aaa.cgi ルートディレクトリ/public_htmlの中に htmlファイル index.htmlと ディレクトリ /html /cgi-bin があり、 /html配下/AAAディレクトリにあるAAA.htmlから aaa.cgiを呼び出したいのですが、 「ページが見つかりません」というメッセージがでて、aaa.cgiを呼び出すことができません。 AAA.htmlには <form name="form" method="post" action='../../cgi-bin/aaa.cgi'> ・・・・・・ </form> というように設定しているのですがaaa.cgiがよびだせません。 WinNT環境でActivePerlとAnHttpdを使ったCGIの設定をご存知の方がいらっしゃいましたら、すみませんが教えて下さい。 よろしくお願いします。

    • ベストアンサー
    • Perl
  • ローカル環境でのCGI

    社内アンケートとして、 CGIをもちいた、アンケートを制作しております。 <FORM ACTION="http://hogehoge.local/cgi-bin/aaa.cgi" METHOD="POST" onSubmit="return form_check(this)" name=""> なまえ:<INPUT TYPE="radio" NAME="name" VALUE="OK"> ~~~~~~ ~~~~~~ <INPUT TYPE="hidden" NAME="number" VALUE=""> <INPUT TYPE="submit" NAME="answer" VALUE="送信する"> <INPUT TYPE="reset" NAME="reset" VALUE="リセット"> </FORM> </form> でhoge.cgiを動かしたいと思っております。 サーバーへアップし、cgi-bin配下でパーミッションを設定した場合はきちんと動きます。 当たり前ですが、ローカル上では動かなかったです。 社内ネットワーク上 \\hogehoge\cgi-bin\aaa.cgi ⇒ http://hogehoge.local/cgi-bin/aaa.cgi 【動かず】 hogehogeというディレクトリのcgi-binディレクトリのaaa.cgiを修正しますと そのままcgiが動くようにしたいのです。 htmlはもちろんのこと動きます。 サーバーアップ http://hogehoge.local/cgi-bin/aaa.cgi 【動作確認OK】 という状態で困っております。

    • 締切済み
    • CGI
  • FormのonsubmitでJavaスクリプトを複数使えますか

    こんにちは。 いまフォームページで送信前に記入漏れがないかチェックするのに、スクリプトを使っています。 <form action="../cgi-bin/form.cgi" method="post" name="bkform" onSubmit="return Check()"> このほかに、スパム防止のためJcapというスクリプト(画像で出てくる文字を入力させる)を使うことにしました。 画面上に表示はできるようになったのですが、こちらのスクリプトも <form method="post" action="/cgi-bin/form.cgi" onSubmit="return jcap();" name="xfrm"> というようにonsubmitが必要です。 この二つのスクリプトを1つのページで動かすことは可能なのでしょうか? ご教授お願いいたします・・・。

  • 標準入力からデータが読込めない

    現在perlにてcgiを作成しています。 以下のようなcgiを作成したのですが、POSTで受取ったデータが 標準入力より取得できません。 解決策、又は、調査方法等ご存知の方いらっしゃいましたら教えてください。 --------- a.cgi -------- #!/usr/bin/perl print "Content-type: text/html\n\n"; if( $ENV{'REQUEST_METHOD'} eq "POST" ){ read( STDIN, $buffer, $ENV{'CONTENT_LENGTH'} ); }else{ $buffer = $ENV{'QUERY_STRING' }; } print <<"HTML"; <HTML><HEAD><TITLE>テスト</TITLE> <META http-equiv=Content-Type content="text/html;"> </HEAD> <BODY> <FORM id=Form1 name=Form1 action=a.cgi method=post> HTML print <<"HTML"; <INPUT type=hidden value=aaa name=text1> <INPUT onclick="return confirm('送信します。よろしいですか?');" type=submit value=送信 name=Button1> </FORM> </BODY> </HTML> HTML exit; -------------------------------------------------- $ENV{'REQUEST_METHOD'} は POST を取得できていますし、 $ENV{'CONTENT_LENGTH'} も文字数は取得できています。 どうか宜しくお願い致します。

    • ベストアンサー
    • Perl
  • phpについて 入力ホーム

    ホームページ php 入力ホームについて 初心者です。 HTML内に入力ホームに関するphpページを指定したいのですが <form action="form1.php" method="post">は指定できましたが、もう一つ<form action="form3.php" method="post">も指定したいくて、下のコードを書き込んだのですが、 <form action="form1.php" method="post"> <form action="form3.php" method="post"> 以下のようなエラーメッセージが出ます タグ<form>内に< form>を含むことができません。 どうしたら良いでしょうか?

    • 締切済み
    • PHP
  • DIONのHPで提供しているメール送信CGIのタグについて

    DIONのHPスペースで新しくHPを設置している途中なのですが、メール送信CGIを使用したいと思っております。 <form action="/cgi-bin/mail2.cgi" method="post">のタグについての質問なのですが、「/cgi-bin」部のスラッシュの前には何か入力する必要があるんですか? どなたか詳しい方、ご教授宜しくお願い致します。

  • PHPの入力チェック

    PHPの初心者です。初歩的な質問ですみません。 以下の機能を実現したいと考えています。 ・会員情報を入力する画面(aaa.php)で、各入力項目のチェックを行い、  正常なら確認画面(bbb.php)へ  異常値なら画面や入力内容はそのままの画面(aaa.php)でエラーメッセージを表示 ※チェックはaaa.php内で行う 「aaa.php」内でチェックするには、以下のように「form action="/aaa.php" 」と記載しないといけないと思いますが、 <form action="/aaa.php" method="post"> 氏名<input type="text" name="name" value="<?= $name ?>"><br> <input type="submit" name="action" value="登録"><br> </form> ↓ validateMaxLength などでチェック このチェック後にaaaから、bbb.phpに入力値を渡してコールする方法が分からないのです。

    • ベストアンサー
    • PHP
  • 1つのフォームで2つのcgiにデータを送るには

    どうぞよろしくお願いします。 テキストエリアにデータ入力して送信ボタンを押すと、 入力した内容が2つのcgiに送られるというようにしたいのですが、こういったことは可能でしょうか? イメージとしては下記のような感じです。 <form action="CGI名1" action="CGI名2" method="POST"> <inpu type="text" name="text1" size="32"> <input type="submit" value="送信"> </form> 両方の送信結果を別々のウインドウで表示します。 もしformタグでは不可能な場合、何か代換法がありましたらよろしくお願いいたします。

    • 締切済み
    • CGI
  • open.window(javascript) を使わないで、新規windowを3つ開く方法

    JavaScpript の open.window を使うと、値がGET で渡ってしまいます。 POST でデータを渡したいので、FORM で window を 3つ開く方法って ないでしょうか? <FORM method=POST name=form1 target="window1" ACTION="/cgi-bin/search1.pl"> <input type="text" name="searchword1"> </form> <FORM method=POST name=form1 target="window2" ACTION="/cgi-bin/search2.pl"> <input type="text" name="searchword2"> </form> <FORM method=POST name=form1 target="window3" ACTION="/cgi-bin/search3.pl"> <input type="text" name="searchword3"> </form> の 3 つのフォームを 1 つの <input type="submit" name="Search" value=" 検索 "> で起動させるってことです。 (または、open.windows で値を渡すとき、POST で渡したい) よろしくお願いします。

    • ベストアンサー
    • CGI
  • javaからcgiの呼び出し

    htmlタグで <form method="post" action="/cgi-bin/gogo.cgi"> とすると、formボタンでcgiが実行されますが、これと同じことを下記のjavaで実行する方法を教えてください。 <script type="text/javascript" language="javascript"> <!-- function gogo(){ cgi呼び出し } //--> </script> <body> <form method="post" action="javascript:gogo()"> ・・・ <input type="submit" value="送信">

専門家に質問してみよう