基本的なことと思いますが、JavaScriptのみを使って、(ローカルでなく)サイト上に置いた任意のテキストファイルを読み出し、処理(カウントアップなど)をした後で書き戻したいと思っています。PerlやPHPなどを使わないでJavaScriptだけで行う良い方法はないでしょうか。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2006/05/16 12:04:48
  • 終了:2006/05/16 12:51:03

回答(4件)

id:kazu1107 No.1

kazu1107回答回数199ベストアンサー獲得回数142006/05/16 12:23:41

ポイント20pt

読み出しまでは出来ますけど、JavaScriptでは書き出すことが出来ないかと思います。

データベースを用いたら出来るのかもしれませんが・・・(ハッキリと覚えてません)

ただ、JavaScriptはその性質上、ソースが丸見えなので、もし書き出すことができてもセキュリティ上好ましくないかと思います。

URLはダミー

http://www.yahoo.co.jp/

id:mouitchou

ありがとうございます。たしかにそうですね。

2006/05/16 12:37:24
id:villain No.2

villain回答回数174ベストアンサー獲得回数122006/05/16 12:23:58

ポイント20pt

JavaScriptはセキュリティの関係でファイルのアクセスは

できない仕様になっています。

唯一、JavaScriptで使用できるのはローカルのcookieのみで

それ以外のファイルの入出力はできません。


id:mouitchou

有り難うございました。

2006/05/16 12:37:48
id:yoneto164 No.3

ヨネちゃん回答回数813ベストアンサー獲得回数942006/05/16 12:29:22

ポイント20pt

JavaScriptはローカルでしか走りませんので、サーバー上のファイルを更新することは基本的に不可能かと思われます。

http://e-words.jp/w/JavaScript.html

id:mouitchou

ここがセキュリティのポイントでしたね。有り難うございました。

2006/05/16 12:39:25
id:yuuboku No.4

yuuboku回答回数19ベストアンサー獲得回数22006/05/16 12:33:52

ポイント40pt

基本的に、JavaScriptでは、クライアントサイドやサーバサイドにあるファイル等について書き換えなどを行うことはできません。ただし、クライアントのCookieを読み書きすることと、サーバからドキュメントを取得することはできます。

ご質問で実現したい内容については、

  • サイト上の任意のテキストファイルをクライアントが読み出す。
  • 何らかの処理を行う。
  • サイト上のファイルに書き戻す。

これらのうち上記二件まではさほど難しくありませんが、三件目についてはどうしてもCGIなどのサーバ側の処理が必要になります。具体的に必要なのは、「クライアントから送られてきたデータをサーバのファイルに記録する」スクリプトです。

JavaScriptをご利用になれるのであれば、Perl等の言語仕様やCGIの仕様についてはそれほど難しくなく習得できるものと思います。まずは次のようなサイトをご利用になってみてはいかがでしょうか。

http://perl.misty.ne.jp/

なお、もし案件の都合等でCGIを利用できない場合には、案件を見直す必要があるかもしれません。

id:mouitchou

明解な説明をありがとうございました。設置簡便性と汎用性を求めたのですが、やはり無理と言うことがはっきりしました。ご紹介いただいたサイトも明解です。おおいに参考にさせていただきます。

2006/05/16 12:46:16
  • id:lains_you
     mouitchouさんのご希望とは異なると思いますが、IISならASP+サーバサイドJavaScriptでJavaScriptの文法でファイルアクセスまで行けるかもしれません。
     実際に試したわけではないので、コメントだけ。

    ASPスクリプトのサンプル
    http://133.53.64.43/tonoike/computer/asp/description.asp
  • id:villain
    lains_youさんへ。

    IISサーバのASPで対応しているのはJavaScriptではありませんよ。
    JavaScript互換のJScriptというMS独自のスクリプト言語です。
    (実際にはIEで動作しているのはJavaScriptではなくJScriptの
    サブセットみたいなものですが)

    JScriptはWSHなどでCOM経由で操作のできるスクリプティング技術
    です。

    これをそのままASPのスクリプトとして埋め込めますが
    JavaScriptとはまったくの別物です。

    あと、ASPではVBScriptの方がよく利用されています。
    (PerlScriptなどCOM経由でWSHで動作可能なスクリプト言語は
    インストールされていればすべて使用可能なようです)

    http://www.imasy.or.jp/~hir/hir/tech/js_general.html
    http://kakuda.ed.niigata-u.ac.jp/semi/unix/personal/asp.htm
    http://ja.wikipedia.org/wiki/Active_Server_Pages
    http://ja.wikipedia.org/wiki/JScript

    因みにASPはCGIと見た目はよく似ていますがまったく別の技術
    です。
    むしろ近いのはPHPやJSPなどです。
  • id:mouitchou
    詳しいご説明ありがとうございます。
    ちょっと拝見しましたが、いろいろ可能性が大きそうですね。今回は無理ですが、いずれ自由にさわれる様になりたいと思います。

この質問への反応(ブックマークコメント)

トラックバック

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません