2009年11月7日土曜日

今日作成したサイト(フォトアルバム)、ソースコードはそれぞれ、

http://www.mkamimura.com/Chap4/album.aspx

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.IO;

public partial class Chap4_album : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void Button_Add_Click(object sender, EventArgs e)
    {
        string UpFolder_URL = "-/Chap4/Upload_data/";
        string UpFolder = Server.MapPath(UpFolder_URL);
        string DBFile = UpFolder + "DB.xml";
        string password = "パスワードは秘密";

        if (Password.Text != password)
        {
            Label_Error.Text = "パスワードが違います。";
            return;
        }

        if (FileUpload1.HasFile)
        {
            string ImageFile = UpFolder + FileUpload1.FileName;
            if (File.Exists(ImageFile))
            {
                Label_Error.Text = "同じファイル名が既に存在します。";
                return;
            }
            if (FileUpload1.PostedFile.ContentLength > 100000)
            {
                Label_Error.Text = "ファイルが大きすぎます。";
                return;
            }
            FileUpload1.SaveAs(ImageFile);

            DataSet albumDS = new DataSet();
            albumDS.ReadXml(DBFile);
            DataTable table = albumDS.Tables["データ項目"];

            DataRow newRow = table.NewRow();
            newRow["日付"] = DateTime.Today.ToLongDateString();
            newRow["写真"] = UpFolder_URL + FileUpload1.FileName;
            newRow["コメント"] = Comment.Text;
            table.Rows.Add(newRow);

            albumDS.WriteXml(DBFile);

            GridView1.DataBind();

            Label_Error.Text = "";
        }
        else
        {
            Label_Error.Text = "ファイルを指定してください。";
        }
    }
}

です。パスワードの部分は伏せて(パスワードは秘密)おきます。

今日は、プログラミング学習の記録 プログラミング チャレンジ スクエア 3より少し時間がかかった、というか上記のページは完全には仕上がっていません。新しい写真をパスワードを入力して登録しようとしても、エラーがでてしまいます。エラーメッセージを読んでみたり、プログラミング チャレンジ スクエアをもう一度読み返ししみたのですが、なかなか解決方法が分かりませんでした。

結局今のところはそのままにしておくことにしました。わくわく楽しみにプログラミング学習を取り組むことを一番重要なプログラミングの学習指針(プログラミングの学習に限らず)にしているので、あまりスムーズに行かないときはその日はすぐにやめ、他の事をして気分転換をすることにしたりしています。

しかし、とりあえずは見た目的にはまあまあできあがったので、達成感を味わうことができて満足しています。なのでこれでこの章は終了として、次の章に進みたいと思います。いずれ、エラーメッセージに意味を簡単に理解でき、すぐ修正し問題が解決できる日が来るといいなあと思う今日この頃です。

0 コメント:

コメントを投稿