目次

若手SE向け研修

データベースへの安全なアクセス

データベースアプリケーションは、外部の攻撃者から狙われている。

SQLインジェクションへの対策が必要。

PDOでの対策方法

プリストアードステートメント

基本的に、MySQLに渡すSQL文と、その中で与える引数(データ)をと分離する方式。

こうすることで、データに対して自動的にエスケープ処理や引用符処理が施されるので、SQLインジェクションは原則的に発生しない。

もう一つの利用法として、同じSQL文を何度も使う場合、最初に1回だけ準備して、データを変えつつ繰り返すことで利用効率を高めるという利点もある。

画面の見た目をつかさどるCSS

HTMLとJavascriptとCSSとの役割をうまく説明しているページが以下にある。

これを読むとわかるが、CSSを使うには画面の見た目を制御するためである。

HTML5のアプリケーションはブラウザの画面を1画面として、HTTPによる画面遷移を行わず、Ajaxだけで画面を更新する形で作られることが多い。

そのためにも、画面構成はCSSで指定しておくことが求められる。

CSSセレクタ

セレクタとは、画面を構成している要素を限定するものである。

jQueryでもセレクタを使用するが、これはもともとCSSのセレクタがベースになっている。

例えば、

p { color:red; }

と書くと、文書中のすべての<p>...</p>で囲まれた文字が赤色になる。

p#aaa { color:red; }

と書くと、<p id="aaa">...</p>で囲まれた文字は赤くなるが、その他の<p>...</p>の文字は変化しない。

p.aaa { color:red; }

と書くと、<p class="aaa">...</p>で囲まれた文字は赤くなるが、その他の<p>...</p>の文字は変化しない。

これらの例の中で、最初に書かれている文字はセレクタ、中カッコ { } の間の文字は属性と呼ばれる。

属性は、

属性名:属性値;

の形で表され、複数の属性をつなげて指定することができる。例えば、

p {
   color:red;
   background-color:blue;
   margin:10px;
   padding:5px;
}

のように書くことができる。改行は任意だが、見やすいようにした方が良い。

jQuery

DOM要素とjQuery要素

jQueryのセレクタで得られる要素は「jQuery要素」と呼ばれる。この要素に対して、jQueryの強力な機能が使用できる。

一方、jQuery関数で取り出される要素は、一般にはDOM要素である。DOM要素とはHTMLの文書を構成している要素のことである。

これら2つの要素は、それぞれ以下のようにして相互に変換できる。

$(DOM要素) -> jQueury要素
jQuery要素[0] -> DOM要素

jQueryが持つ機能は強力なものが多いが、その分、無駄なことをしている場合もある。 その点、DOMの機能は(それでも十分に強力なのだが)シンプルな場合が多い。

使用する状況や目的に応じて使い分けるのが良いと思う。


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS