投稿日時:

不定期掲載「jQuery外部ライブラリ紹介」
第一回目は画像ファイルをポップアップ表示する「Colorbox」を紹介します。

まずはどんなものか見てみましょう。
サンプルはコチラです。
色々なサイトで使用されている外部ライブラリなので、よく見た事があるのではないでしょうか。

Colorboxの使用例を紹介します。

1、Colorboxのサイト、青い太文字の「Download」から「colorbox-master.zip」をダウンロードして解凍します。
2、解凍されたフォルダ内の「jquery.colorbox.js」または「jquery.colorbox-min.js」をWebページに組み込んで使用します。
3、テーマごとに「example1」から「example5」まであり、気に入ったテーマの「colorbox.css」と「images」を使用します。cssは組み込んで、imagesフォルダはcssと同じフォルダ内に配置して下さい。
4、Webページの中に「$(セレクタ).colorbox」で適用します。プロパティの設定は色々ありますが、今回のサンプルではグループ化を指定する「rel」のみを使用しています。

以下のサンプルソースコードを参考にしてください。

	<head>
		<meta charset='utf-8'/>
		<title>Colorboxのサンプル</title>
		
		<!-- 「colorbox.css」「jquery.js」「jquery.colorbox.js」を組み込む -->
		<link rel="stylesheet" href="./colorbox.css" />
		<script src="./jquery.js"></script>
		<script src="./jquery.colorbox-min.js"></script>
		
		<script>
			$(function(){
				
				//group1にcolorboxを適用する
				$(".group1").colorbox({rel:"group1"});	//group1でひとつに括る
			});
		</script>
		
	</head>
	<body>
		<p>
			<a class="group1" href="./files/file1.jpg" title="ネコの画像その1">ネコ1</a><br/>
			<a class="group1" href="./files/file2.jpg" title="ネコの画像その2">ネコ2</a><br/>
			<a class="group1" href="./files/file3.jpg" title="ネコの画像その3">ネコ3</a><br/>
			<a class="group1" href="./files/file4.jpg" title="ネコの画像その4">ネコ4</a><br/>
			<a class="group1" href="./files/file5.jpg" title="ネコの画像その5">ネコ5</a><br/>
		</p>
	</body>

ColorboxはJSONや複雑な設定を使用していないので、比較的簡単に使用できる外部ライブラリです。

(担当:奥田 英太郎

投稿日時:

今回はPHPプログラミングに関するお話です。

・自分のPCで作成したPHPファイルを、Webサーバ(レンタルしているサーバなど)にアップロードして配置する。
・同じファイル、同じソースコードなのに、自分のPCとレンタルサーバでは実行結果が異なる。

実はこれ、良くある話です。
なぜか? 答えは簡単で、自分のPCとレンタルサーバの「環境」が異なるからです。

・WindowsとLinuxでOSの設定が違う。
・IISとApacheでWebサーバの設定が違う。

違いを挙げれば多岐に渡りますが、中でも「PHPの設定が違う」ことによる要因は多く見られます。

PHPの設定には設定ファイル「php.ini」を使用します。
テキストエディタで開いて中を見てみましょう。

error_reporting = 値

error_reportingはエラーメッセージ、警告メッセージの設定です。
警告メッセージが出たり、出なかったりするのはここの設定になります。

参考:PHPマニュアル「定義済み定数」

magic_quotes_gpc = 値

マジッククォートの設定です。
マジッククォートは$_GET、$_POST、$COOKIEで取得する文字列内の’(シングルクオート)、” (ダブルクオート)、\(バックスラッシュ) 、NULLを自動的にエスケープする機能になります。
例を挙げると、入力フォームに「”abc”」と入力して送信し、$_GETや$_POSTで取得すると「\”abc\”」と変換されるような機能になります。
Onであればマジッククォート有効、Offであれば無効となっています。

参考:PHPマニュアル「実行時設定」

エスケープされる事を想定しているソースコードと想定していないソースコードでは、実行結果が異なるのも当たり前ですね。

レンタルサーバではphp.iniが参照できない環境もあります。
その場合はphpinfoを使用する事で確認できます。確認するだけで変更はできませんが、どの様な設定かどうかがわかるだけでも意味がありますね。

今回はerror_reportingとmagic_quotes_gpcの2点をご紹介しました。
PHPプログラミングの学習とは、ソースコードを書くだけでなく、設定を理解する事も含まれると心得ていただければと思います。

(担当:奥田 英太郎

投稿日時:

XMLについて(その1)XMLについて(その2)に続き、今回も「XMLはCSVと比較して何が優れているのだろうか?」をテーマにお話をしたいと思います。

XMLの優れたポイントの一つは、

ルールを強制する事ができる

この点であることを今回はぜひ覚えていただければと思います。

CSVは論理定義=強制力の無い定義です。

id, name
1, A太郎
2, B太郎
3, C太郎

順番はid、name。idは整数型。nameは文字列型。idはユニークで重複してはいけない。
このようなルールを設けても、それは強制力の無い「口約束」的なものになります。
実際、このデータにどのような記述をしても、エラーは発生しません。

一方でXMLでは物理定義=強制力の有る定義を設定することができます。

XMLでは「DTD(Document Type Definition)」か「XML Schema」で定義を設定することができます。
DTDはシンプルで使いやすいのですが、詳細な設定を行うにはXML Schemaの方が適しているため、現在はXML Schemaが主流になっています。

サンプルを提供しますので、ダウンロードはコチラからどうぞ。
XMLはテキストファイルなので、何かしらのテキストエディタを使用してご確認ください。

XML SchemaではXMLファイルと定義を記述したXSDファイル(拡張子がxsdであって中身はXML形式のファイル)の2つのファイルを用意します。
(DTDでもXMLファイルと定義ファイルは分離可能です)

全員がXSDファイルのルールに準拠してXMLファイルを作成すれば、不特定多数でデータファイルを送受信しても、フォーマットが異なることに起因するトラブルを軽減することが可能となります。

XML専用エディタ(VisualStudioやEclipse等開発ツールに付属している事が多い)には検証機能が付いており、ルールに準拠しない場合はエラーを表示させることが可能です。
また、プログラムでXMLを読み込む際も、定義に合致しているかを簡単に検証可能です。

XMLではDTDやXML Schemaによる定義の強制が無いものを「整形式のXML文書」、定義を強制したものを「妥当なXML文書」と称します。
用途に合わせて、使い分ける事ができるのもXMLの特徴です。

(担当:奥田 英太郎

投稿日時:

XMLについて(その1)に続き、XMLについて学習しましょう。

XMLはCSVのように「テキストファイルを使用したデータファイル」です。
良く使用されるのはXMLですが、ではXMLはCSVと比較して何が優れているのでしょうか?

付加情報を追加する事が可能

この点はCSVにはない、XMLの大きなメリットです。

例えば、以下は個人IDと身長と体重を記録したCSVファイルの例です。

id,height,weight
1,172,66
2,168,71

一方で、XMLでは以下のような記述を行うことが可能です。

<personal>
    <id>1</id>
    <height unit=”cm”>172</height>
    <weight unit=”kg”>66</weight>
</personal>
<personal>
    <id>2</id>
    <height unit=”ft”>5.51</height>
    <weight unit=”lb”>156.5</weight>
</personal>

CSVでは単にデータを列挙するだけでしたが、XMLでは身長や体重に単位の指定をしているのです。
(ftはフィート、lbはポンド)

<要素名 属性名=”値”>値</要素名>
XMLは属性を使用する事でデータに付加情報を追加する事が可能です。
ひとつの要素には複数の属性をいくつでも追加する事が可能です。

このようにXMLはCSVよりも応用性に優れています。この特徴はぜひ、覚えておいていただければと思います。

(担当:奥田 英太郎

投稿日時:

XMLという言葉は聞いたことはあるけれど、どのようなものなのか良く解らないという人も多い事でしょう。

XMLとは簡単に言えば、CSVのように「テキストファイルを使用したデータファイル」です。

id,name
1,A太郎
2,B太郎
3,C太郎

CSVではこのようなフォーマットでデータを記録します。
値と値をカンマ(,)で区切ることでデータを作成します。
拡張子には「.csv」が使用される事が多いです。

ちなみに、「拡張子」はOSがファイルの種類を認識するための識別記号で、ファイルとアプリケーションの関連付け等に使用されるものです。
フォーマットがCSV形式であれば、拡張子はcsvでなくても構いません。

<table>
  <row>
    <id>1</id>
    <name>A太郎</name>
  </row>
  <row>
    <id>2</id>
    <name>B太郎</name>
  </row>
  <row>
    <id>3</id>
    <name>C太郎</name>
  </row>
</table>

一方で、XMLでは上記のようなフォーマットでデータを記録します。
XMLは<要素名>値</要素名>と記述してデータを作成します。
拡張子には「.xml」が使用される事が多いですが、フォーマットがXML形式であれば、拡張子はxmlでなくても構いません。

用途はCSVもXMLも同じです。
データの記録は勿論、RDBMSのインポートやエクスポート、データファイルの転送、アプリケーションの設定ファイル等に使用されます。

CSVとXMLはどちらが良く使用されているかと言えば、回答は「XML」となります。
すなわち、XMLを使用する様々なメリットが存在しているのですが、今回からしばらくは、このXMLについて学習してみたいと思います。

(担当:奥田 英太郎