• ベストアンサー

アドレス欄のurlをファイルに書き出したい

<script type="text/javascript" language="javascript"> <!-- document.write (location.href); // --> </script> 上記の方法でブラウザのアドレス欄のurlがページに表示されています。 現在表示されているurlを同じフォルダ内のurl.txtに書き出したいのです。 javascriptは余り詳しくないので、できればコピペできる形で ご教示して頂けるとありがたいです・・・(^^ゞ 宜しくお願いします・・・m(_ _)m

質問者が選んだベストアンサー

  • ベストアンサー
  • yuji
  • ベストアンサー率37% (64/169)
回答No.4

>えっ!「javascript」ってファイルの書き込みはできないのですか? 出来たら、非常に危険です。 JavaScriptで、サーバ側にファイル書き込みができたら、 サーバをダウンさせるような攻撃が可能になりますよ。 (ディスクをあふれさせるような大量のデータを書き込みするような リクエストを送信するなど。)

good148
質問者

お礼

回答して頂いた皆様有り難うございます。 javascriptでは、書き込めないことがわかりまし・・・(;_;) 他の方法を考えてみます。

その他の回答 (3)

  • wp_
  • ベストアンサー率54% (132/242)
回答No.3

>えっ!「javascript」ってファイルの書き込みはできないのですか? 無理です。 クライアントとサーバの境界線をキッチリ認識しましょう。 クライアント側のjavascriptはクライアント側でしか動きません。 perlをゴリゴリ書けるのであれば以下の手法があります。 ・昔ながらの手法で、1x1ピクセルのの空イメージ吐くcgi(実体は受け取ったパラメタをファイルに吐くCGI)を<img>で呼び出し、パラメタはGETで渡す  →アクセスカウンタでよくやる手法 ・xmlhttprequestを用いてurl文字列を保存するためのcgiを明示的に呼び出す  →いわゆるajaxもどき ・サーバ側のhttpdの設定で拡張子htmlをperlで動かす  →現実的ではないけど一応。レンタルサーバだと不可能ですね。 多分<img>を使う手法が一番手軽でしょうね。 パラメタをPOSTで送らねば駄目、と言うのであればxmlhttprequestの出番ですが。

good148
質問者

補足

>クライアントとサーバの境界線をキッチリ認識しましょう。 今ひとつ理解できていないのかも・・・(^^ゞ http://****.sakura.ne.jp/****/test.html これは、私のページです。 さくらのレンタルサーバー上にあります。 自分のページのurlを取得して/test.htmlと同じフォルダ内の url.txtに書き込みたいのです。上書きモードで書き込みたいです。 詳しく説明すると小一時間くらいかかりそうです・・・(^^ゞ 理由があって自分のページのurlをクリックするたびに微妙に変化させています。 その変化するurlを自動で取得したいということです。

  • wp_
  • ベストアンサー率54% (132/242)
回答No.2

>現在表示されているurlを同じフォルダ内のurl.txtに書き出したいのです。 「同じフォルダ」とはどこを指すのでしょう。 クライアント側?サーバ側? おそらくサーバ側に保存したいのだろうと思いますが、その場合はajaxを使いstring(この場合はurl)を送信するしかないですね。 送信した先のcgiなり何なりでファイルを出力せねばなりません。 むしろそんなことをするよりも、ページ表示の際にREQUEST_URIをhttpdから引っ張ってきてphpなりperlなりでファイルに書き溜めた方がよい気がします。 それ以前にapacheのログとして保存したり生ログ解析したりとかいろいろ方法はあります。 クライアント側(キャッシュ?)に残したい場合は・・・ 何故そんなことをするのか小一時間問い詰めたい気分になります^^;;

good148
質問者

補足

>「同じフォルダ」とはどこを指すのでしょう。 http://****.sakura.ne.jp/****/test.html ブラウザのアドレス欄に上記のurlが表示されていて、 ページにも同じurlが表示されています。 このtest.htmlと同じフォルダ内という意味です。 サクラのサーバー側に保存したいのです。 perlで以下のような方法を使うと http://****.sakura.ne.jp/****/test.cgi のように最後の拡張子がcgiになってしまいます。 use CGI; my $q = CGI->new(); my $url = $q->url; 保存できればどのような方法でも構わないのですが、 当方が理解できるかが問題です・・・(^^ゞ

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

javascriptの範疇ではありませんね できないものと考えたほうがよいでしょう

good148
質問者

補足

えっ!「javascript」ってファイルの書き込みはできないのですか?

関連するQ&A

  • javascriptで取得したurlの情報をGETで送る方法がわかりません。

    現在のURLをjavascriptで取得し、その取得した情報を送る方法を教えてください。 以下のソースでURLを取得しgetで送るにはどのようにすればよいのでしょうか? <scripttype="text/javascript"language="javascript"> var url = document.write(document.URL); </script> <a href="./submit.php?document.write(url)">新規登録</a> 以上よろしくお願いします。

  • <a href>~</A>間へスクリプト結果の表示

    下記のスクリプト(現在のURL表示)を<a href>~</A>の間に表示させることは可能でしょうか。 <スクリプト> <SCRIPT LANGUAGE=javascript> <!-- document.write( location.href ); // --> </script> <a href="───ここに───;sort=up1">▼</A> <a href="───ここに───;sort=down1">▲</A>

  • location.hrefが動かない・・・

    F5が押された場合に指定したURLに飛ばすようにしたいのですがなかなかうまくいきません・・・ ブラウザはFirefox 2.0.0.7を使用しています コードは以下の様にしております <script type="text/javascript"><!-- function key(keyCode){ if (keyCode == 116){ location.href = "http://www.google.co.jp/"; } } --></script> <body onKeyDown="key(event.keyCode)"> </body> 指定URLはGoogleにしています これ状態でF5を押してもなにも起こらず普通に更新されるだけです location.href = "http://www.google.co.jp/";の部分をdocument.write('TEST');などのようにdocumet.writeに書き換えると普通に指定した文字列が表示させます location.hrefと同様にwindow.location.hrefやlocation.replaceでも指定URLに飛ばされません documet.writeは動くのでF5が押されたかどうか判断するコードは間違っていないと思うのですが・・・ ちなみにIEでもダメでした 誰か原因がわかる方が居られましたら教えてください よろしくお願いします

  • javascriptの動作について

    こんばんは。 直接アドレス指定などしてきたものについては、 トップページへ飛ばすことをしようと思ったのですが、 以下の記述だと、IE8では動作しましたが、GoogleCrome(11.0.696.77)、firefox(3.6.0)、safari では動作しませんでした。(location.hrefがダメなんでしょうか?) 解決策・回避策などあれば教えてください。 よろしくお願いします。 <script language="JavaScript" type="text/JavaScript"> <!-- var url; url = document.referrer; if(url != 'http://xxxxxxxxx'/){ location.href('http://xxxxxxxxxxxxx'); } // --> </script>

  • location.hrefを使用したFRAME表示

    location.hrefを使ったjavascriptを作ろうとしています。 <script type="text/javascript"><!-- location.href = "http://www.yahoo.co.jp/"; // --></script> の改良版として、http://www.yahoo.co.jp/をフレームの右側に 表示させたいと考えています。 (src使用ではなくjavascriptのlocation.hrefを使うことがMUSTです) <head> <script type="text/javascript"><!-- right.location.href = "http://www.yahoo.co.jp/"; // --></script> </head> <body> <FRAMESET cols="50%,50%"> <FRAME name="left" src="left.html"> <FRAME name="right" src="right.html"> </FRAMESET> </body> としてみましたがうまくいきません。 location.hrefはmetaタグ内でしか有効ではないにも関わらず right.の指示をメタタグ内部で指定していないことが原因かも しれません。 javascriptのlocation.hrefを使ってフレームの右側に 表示させる方法をご教授願います。

  • リンク先のアドレス欄のURLの表示について

    もともと諸事情により、社員のIEのデフォルトページに  http://hoge.co.jp/a.html を設定し、実際にはこのa.htmlにはJavaScriptで  <script language="JavaScript">  <you=navigator.appName;  if(navigator.appName.indexOf("Internet Explorer")==-1)   location.href="http://www.***.co.jp/index.html";  //--></script> として別ページに飛ばしています。 ところが飛ばした先のページは開くのですが、IEのアドレス欄が「http://hoge.co.jp/a.html」の ままになっています。これを正規の「http://www.***.co.jp/index.html」と表示したいのですが どうしたらいいでしょうか? IEのデフォルトページの設定を替えればいいのですが、端末も多く、他にも事情があり、 直ぐにできそうもありません。ご存知の方ご教示下さい。

    • ベストアンサー
    • HTML
  • ウインドウ元のURLをフレームごとかえる

    小ウインドウを開いて、URLをクリックすると元のページのURLがかわるという方法を教えてください! 下記の書き方だと、フレームの中に新しいページが表示されてしまいます。 フレームごと書き換えるには、どうやって書けばよいのでしょう? <script language="javascript"> <!--// function ctrlwin() { window.opener.location.href="http://www.××.html"; window.close(); } //--> </script>

  • URLの取得

    こんにちは。 JavaScriptでは、 document.URL もしくは、 document.location.href にてURLの取得が出来ますが、 ASPで取得って出来ないんでしょうか? どなたか教えてください。

  • (CGI)お気に入り登録やアドレス直打ちを防ぐには?

    フレームページ等を使用していてフレーム内のアドレス直打ち、それによるお気に入り登録を防ぐには以下のタグが有効ですよね?↓↓ <SCRIPT language="javascript"> <!-- if (!document.referrer){top.location.href="http://************";} //--> </SCRIPT> または、 <script language="JavaScript"> <!-- if(self ==top){location.href = "http://*****";} // --> </script> この「アドレス直打ち、お気に入り登録を防ぐ機能」をCGIで表す事は可能ですか? 可能ならば、とどのようになりますでしょうか? CGIで作成した掲示板の中に挿入して防ぎたいのですが・・ 宜しくお願いしますm(_ _)m

    • ベストアンサー
    • CGI
  • 外部javascriptファイルをjavascriptから動的に呼び出したい

    呼び出し元のURLによって動作を変えたいJAVASCRIPTがあります。 普段外部のJAVASCRIPTを呼び出すときはよくこうするのですが <script type="text/javascript" src="js.php?key=url"></script> これでは「key=url」が固定になってしまいます。そこで下記のように <script> var commentname=document.URL; var str=encodeURIComponent(commentname); document.write('<script type="text/javascript" src="read.php?key=',str,'"><\/script>'); </script> document.writeを使って無理やり外部Javascriptファイルの呼び出しスクリプトを書いているのですが、この書き方はどうもエレガントさにかけるというか、いまいち気に入りません。 もっとほかに良い方法がある気がするのですが、調べてもわかりませんでした。おわかりになる方がいらっしゃったらご教示頂けないでしょうか。

専門家に質問してみよう