2012年03月06日
講義025日目
------------------------------1H------------------------------
★職業能力基礎
●履歴書、職務経歴書の書き方
IT関連ならば、データで作成して構わない
・履歴書
ツリー構造のトップの情報が書かれる箇所
「職歴」欄の詳細は職務経歴書に書く
・職務経歴書
まとめられる箇所(グループ企業内での移動など)は一つにまとめる
職を転々としているイメージをなるべく持たれないようにする
転職理由は答えられるようにしておく
より詳細な業務内容、作業
ハードウェア、ソフトウェア情報もここに書く
例:OSはLinaxの仮想環境で、開発ツールxamppのpleiades
webサービスを業務内容としているMis株式会社で
内部アプリケーションの開発を行った
就業していた社名に関しては、ありのまま書く(公開情報に限る)
自分以外の個人情報は書くことは避ける
●「長所」「短所」「成功経験」を元にして記述する
基本、プラスの内容を記述する
マイナスの内容を記述するならそれを補う内容も記述する
自己PRの内容と志望動機はリンクする
自分の意思が大事
自己PR→志望動機という流れで文章を作る
例:自分は~~に興味があり、~~という成功を収めてる
なので、御社の業務を通じて~~を学び、~~になっていきます
・自己PR
自分が何をしてきたか、どういう人間か
自己紹介に近い
職務経歴書に関係ないがアピールしたいこと
例:趣味で作ったサイトの情報、URL
学生時代の体験(実例を出せると良い)
・志望動機
今後の展望、会社でやりたいこと
業務内容に合わせるのではなく、自分の意思に合わせる
例:自分のやりたいことが~~であり、業務内容に即してるので
×:業務内容の~~が自分のできる内容と考えたため
☆自己PR、志望動機は自己分析と密接に関わる
------------------------------2H------------------------------
★掲示板作成
●掲示板の機能追加
・htmlspecialchars();
htmlやjavascriptの記述を無効化する関数
テキストエリアの入力に制限をかける
・nl2br();
改行コード<br>を挿入する関数
例:print nl2br(htmlspecialchars($row_reply["content"]))."<br>";
htmlspecialchars()が先に走ると挿入された<br>が無効化されるので注意する
・関数の入れ子は優先度を考え、テストしながら調整する
------------------------------3H------------------------------
★掲示板作成
●プログラミング言語
・低級言語
マシン語に近い
・高級言語
人間に近い
●掲示板拡張1
・commentテーブルにurlカラムを追加する
ALTER TABLE comment ADD url TEXT AFTER content;
・フォームの追加
url<br>
<input type="text" name="url" size="60"><br>
・submit.phpで受け取る
$url = $_POST["url"];
を追加
・sqlにurlをinsertされるようにする
INSERT文で受ける欄に追加
$url . "','" .
・urlカラムにデータが入っていたら名前にリンクを貼る
if($row["url"]!=""){
print "<a href=\"" . $row["url"] . "\">";
print nl2br(htmlspecialchars($row["nickname"]));
print "</a>";
print "さんの投稿<br>";
}else{
print nl2br(htmlspecialchars($row["nickname"]))."さんの投稿<br>";
}
------------------------------4H------------------------------
★掲示板拡張2
●画像を表示できるようにする
・photoカラムを増やす
ALTER TABLE comment ADD photo TEXT AFTER url;
・フォームタグ改変
<form action= "submit.php" method="post" enctype="multipart/form-data">
画像<br>
<input type="file" name="photo"><br>
・データベースにバイナリのカラムを作って保存
早い
引き出すのが少し面倒
・何かしらファイルを保存するフォルダを作って保存
少し遅い
直リンクできる
・submit.phpを改変
ファイルを受ける
$photo = $_FILES["photo"];
$_FILES→スーパーグローバル変数
Array
(
[name] => Water lilies.jpg
[type] => image/jpeg
[tmp_name] => C:\pleiades\xampp\tmp\php661.tmp←ここに一時的に保存される
[error] => 0
[size] => 83794
)
tmpフォルダに一時的に保存された
・画像をid順に保存する
最後にinsertした行のIDを取得する
$sql = "SELECT id FROM comment ORDER BY id DESC";
$result = mysql_query($sql);
$row = mysql_fetch_row($result);
・画像データを保存する
if (is_uploaded_file($photo["tmp_name"])) {
move_uploaded_file($photo["tmp_name"],"./img/".$row[0].".jpg");
$sql = "UPDATE comment SET photo = \"".$row[0].".jpg\" WHERE id = ".$row[0];
mysql_query($sql);
------------------------------5H------------------------------
★掲示板拡張2
●index.php
・画像を出力する
if($row["photo"] != ""){
print "<img src=\"./img/".$row["photo"]."\" width=\"100\"><br>";
・is_uploaded_file()
アップロードされたファイルがあれば、ture無ければfalseを返す関数
アップロードされたファイルの配列にある[tmp_name]があるか無いか
・move_uploaded_file(移動元,移動先)
移動元に一時的に保存されてるtmpフォルダ
移動先に保存したい場所
uploaded関数はアップロードされてるかを見てる
------------------------------6H------------------------------
★掲示板拡張2
●企画 設計+プログラミング
・設計→データベースの構造、データの受け渡し
●$_FILES
・アップロードされたファイルの情報が配列で格納される
●テーブルのロック
・画像の投稿に際し、insertした行のIDを取得する時に
同じ処理による競合を防ぐため、commentテーブルをロックする。
//commentテーブルをロックする
$sql = "LOCK TABLE comment WRITE";
$result = mysql_query($sql);
・テーブルのロックの解除
//commentテーブルのロックを解除する
$sql = "UNLOCK TABLES";
$result = mysql_query($sql);
"SELECT id FROM comment ORDER BY id DESC"で最後にinsertした行のIDを取得してるから
同時にデータベースにアクセスされた場合に画像データの保存先のパスが被ってしまう
なので、テーブルへのアクセスをロックしてIDの取得と保存先生成のタイミングに隙が無いようにできる
MySQLでユーザ名の権限を変更(root状態にできる)
GRANT ALL *(データベースに対する権限)*(テーブルに対する権限) (ユーザ名)
IDENTIFY (パスワード)
WITH GRANT OPTION
-----------------------------memo------------------------------
だんだん理解しなければならない範囲が増えてきた
0 件のコメント:
コメントを投稿