2010年8月10日火曜日

JSON(JavaScript Object Notation)

JSON (JavaScript Object Notation)は、人間にとって読み書きが容易で、プログラムで簡単にパースや生成を行うことができる軽量のデータ交換フォーマット。JavaScriptプログラミング言語 (ECMA-262標準第3版 1999年12月)の一部をベースに作られている。

JSONは、名前/値のペアの集まり(オブジェクト、連想配列、ディクショナリ、ハッシュテーブルなど)と値の順序付きリスト(配列)の2つの構造を基にしている。

オブジェクトは、順序付けされない名前/値のペアのセットで、{(左の中括弧)で始まり、} (右の中括弧)で終わる。各名前の後ろには、:(コロン)が付き、名前/値のペアは、,(コンマ)で区切られる。

配列は、順序付けされた値の集まりで、[(左の大括弧)で始まり、](右の大括弧)で終わる。値は、,(コンマ)で区切られる。

JSON の紹介(日本語)
JSON(英語)
JavaScriptプログラミング言語

JavaScript

JavaScript(ジャバスクリプト)とは、Netscape Communications 社が開発したオブジェクト指向のクライアントサイドで動作するスクリプト言語で、Javaとは名前や記述が似ているが別の言語である。

JavaScript関連サイト

独学 JavaScript
JavaScriptのチュートリアル。

JavaScript小技集
そのままコピー&ペーストして使えるJavaScript/DHTMLのサンプルなど。

JavaScript basic samples
JavaScriptのサンプル集、リファレンス、リンク集など。

MTQ | Movable Type 5 ユーザーコミュニティ

MTQは、MT5(Movable Type 5)について情報交換するためのコミュニティサイト。日本国内のMovable Type(MT) ユーザー同士の交流を支援することを目的にシックス・アパート株式会社が管理・運営している。

MTQ | Movable Type 5 ユーザーコミュニティ

Ruby on Rails

Ruby on Rails」は、オブジェクト指向スクリプト言語「Ruby」向けのオープンソース(MIT license)のWebアプリケーション開発フレームワーク。

10000以上のアプリケーションが既にRuby on Railsで開発されるなど、多くのユーザーによって利用されている。

Rails was created in 2003 by David Heinemeier Hansson and has since been extended by the Rails core team, more than 1,400 contributors, and supported by a vibrant ecosystem.

Ruby on Rails

2010年8月9日月曜日

[Perl][MySQL]INSERT文でシングルクオートを含んだレコードを追加するには

PerlからDBIモジュールを使ってMySQLのテーブルにINSERT文でシングルクオートの含んだレコードを追加するには、次のようにprepare メソッドでプレースホルダを使ったステートメントハンドルを取得して、execute メソッドで値を渡してやれば良い。

my $sth = $dbh->prepare("insert into mytable(foo,bar,baz) VALUES(?,?,?)"); $sth->execute($foo, $bar, $baz);

INSERT文に限らずSQL文で変数値を渡す場合は、プレースホルダを使うのがいいようです。

mysqlデータベースにinsertできない
DBI/DBDの使い方
Perl で、バイナリデータを MySQL に登録する

SQLインジェクション(SQL Injection)

SQLインジェクション(SQL Injection)とは、Webアプリケーション開発者の意図しない悪意のあるSQL文やその一部を入力して、不正にデータベースを操作することを目的とした攻撃のことで、多くの場合データベースを不正に書き換えてコンテンツを改ざんし、ウェブ閲覧者にマルウエアの侵入を試みるプログラム (スクリプト)を実行させようとする。

SQLインジェクションの対策としては、入力値には半角英数字のみを許可するよう制限する方法や、SQLで使える特殊文字をエスケープして対処するという方法が一般的。

SQL インジェクション攻撃とその対策
今夜分かるSQLインジェクション対策

Catalyst

Catalystは、Perlで実装されたWebアプリケーションフレームワーク。

Catalyst - The Elegant MVC Web Application Framework
Catalystのドキュメント。

use Catalyst qw(初挑戦);
MVCウェブフレームワーク Catalyst の使い方の解説。

Perl.com: Catalyst の翻訳