- 締切済み
ASP.NETでファイルをアップロードし、別のWebサイトに結果を表示するやり方
はじめまして、ASP.NET初心者です。 質問させて頂きたいと思います。 今、本を読みながらASP.NETを勉強中ですが、プログラムが初めてなもので、なかなか理解できません。 もちろんこちらでも調べておりますが、もし何か少しでもわかるキッカケがあれば、と思い、こちらで質問させていただきました。 では、本題に入りたいと思います。 実は仕事で、ホームページ制作を頼まれたのですが、そのトップ画面にある新着ニュースを、ASP.NETを使って、表示させるように命じられました。 仕組みですが、クライアントがメモ帳で、更新したいニュース情報を書き、そのメモ帳を、別のWebサイトの画面に表示させたいと思っています。 一応、ファイルを選択する画面はできたのですが、 ※以下タグ <form id="Form1" method="post" runat="server" enctype="multipart/form-data"> <P>送信するファイルを指定して、[送信]ボタンを押してください。</P> <P><INPUT type="file" name="userfile" size="30"> </P> <P> <asp:Button id="Button1" runat="server" Text="送信" /> </P> </form> こちらの参照画面から、送信ボタンを押すと別のWebサイト(サイトのトップ画面)に、メモ帳の結果を表示させるやり方がわかりません。 恐縮ですが、どなたか教えていただけますでしょうか? 使用ツール: OS:WindowsXP メモ帳の結果表示の画面制作ツール:DreamweaverCS3 データベースサーバー:SQL Server2000 開発環境:Web Developer 2005 他に記載すべき項目がありましたら、教えていただきたいと思います。 どうぞ、よろしくお願いいたします
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- naganaga_001
- ベストアンサー率71% (172/242)
お世話になります。 > 別のWebサイトとは、テキストファイルを参照する専用の画面 そうしますと ASP.NET だと一般的には 「サイト」ではなく「ページ」という単位になりますね。 ひょっとして ASP.NET ページではなく、単なる Html? Html とかだと話は変わってきますが、 ASP.NET ページで テキストファイルの読み込みをしたいということであれば [ASP.NET Web上のテキストファイルを自動読み込みする方法について] http://okwave.jp/qa2441852.html が参考になるかと。 自動読み込みについては、 Page_Load のイベント内に上記テキストファイルの読み込み に関する記述 (前回更新した時と内容が変わっているか否かのチェックなどなど。。。)をして、 ・一回だけ読み込みしたい場合 投稿画面からテキストファイル表示画面へ遷移する。 (Response.Redirect を使う) Response.Redirect がわからないなら検索して下さい。 例がたくさん載っていますので。 ・定期的に読み込みしたい場合 JavaScript のタイマーと言われるモノを使って、 定期的にテキストファイルをチェック・更新 (=定期的にテキストファイル表示画面の Page_Load を走らせる) したい場合は、定期的にページをリロードする JavaScript をテキストファイル表示画面へ組み込めばよいかと思います。 http://www.scollabo.com/banban/jsindex/sample/sample_248.html 以下は単純な Html の例ですが、1 秒毎にページのリロードが行われます。 (実際はサーバーに対してリロードを行うのでしょうから サーバーに過多にアクセスしないように設計する必要があります。) <html> <head><title>test</title></head> <body onload="setInterval(myTimer,1000)"> <script type="text/javascript"> function myTimer(){ form1.submit(); } </script> <form id="form1" method="post"> test </form> </body> </html>
- naganaga_001
- ベストアンサー率71% (172/242)
お世話になります。 「別のWebサイト」なるものが何者であるかが解らないと 正確な回答が得られにくいと思われます。 「別のWebサイト」が そのテキストファイル?を参照できるような仕組みが必要かもしれません。 データベースを使っているならデータベースで相互にその情報を共有できるようにするなり、 Web サービスで参照させるなり 色々方法はあるかと思います。
補足
ご回答ありがとう御座いました。 また、わかりにくい表現で申し訳ありません。 別のWebサイトとは、テキストファイルを参照する専用の画面でして、トップページと同じフォルダ内に作る予定です。 この表現で大丈夫でしょうか?
お礼
再度お忙しい中ご回答頂きまして、誠にありがとう御座います。 単位を間違えてしまい、申し訳御座いません。サイトではなく、ASP.NET ページを制作しております。 今、海外のサイトから、FreeTextBoxというツールをダウンロードしております。(http://freetextbox.com/demos/)こちらはワードのような画面に、テキストを書き込み、送信ボタンを押すと、画面下に表示されるものです。 私がやりたいのは、その下に表示される結果を、同じ画面内に表示させるのではなく、まずサーバーにメモ帳なり、テキスト形式(仮に、kuma.txt)で保存したいと思っております。←こちらが第1段階 その保存されたkuma.txtを、新着ニュース(FreeTextBox画面とは別のASP.NETページ)で、自動でkuma.txtの結果が表示されるようにしたいと思っております。←こちらが第2段階 今第一段階をできるようになりたいと思っております。そのようなサイトを探してみたのですが、 http://rararahp.blog69.fc2.com/blog-entry-53.html こちらのサイトの上のC#をVB式でコードを記述すればいいような気がいたします。VB式でのコードを教えて頂ければ幸いです。 using System.IO; using System.Text; ... using (StreamWriter sw = new StreamWriter(@"C:\tmp\test.txt", false, Encoding.GetEncoding("shift_jis"))) { try { sw.WriteLine("abcde"); sw.WriteLine("fghij"); } finally { if (sw != null) { sw.Close(); } } } 度々、お世話になり恐縮では御座いますが、どうぞよろしくお願い致します。
補足
この回答へのお礼欄にある、 >こちらはワードのような画面に、テキストを書き込み、送信ボタンを押すと、画面下に表示されるものです。 ですが、正式には【送信ボタン】ではなく、こちらの画面では【SAVE】ボタンでした。今現在制作している画面と、ごちゃまぜになってしまいました。大変申し訳御座いません。