php

GD Library extension not available with this PHP installation.

phpinfo()を確認 php.iniファイルのextension=gdがコメントアウトされていないか確認 Webサーバーを再起動 Windowsの再起動

PDO のオプション設定

PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_OBJ, PDO::ATTR_EMULATE_PREPARES => false PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION ⇒エラーが起きた時は例外を投げる PDO::ATTR_DEFAULT_FETCH_MODE => PD…

require()とinclude()の違い

php

require()require_once() ↑エラーが起きたら強制終了。 include()include_once() ↑エラーが起きたら警告。処理は続行。

URLマッピング

php

②url_list.php

ログインユーザーのみ閲覧

php

ログアウト処理

php

prepare($…

自動ログイン

php

<手順> ①自動ログイン希望時 ○ログインキー生成 ・クッキーへ登録 ・DBに登録 →メールアドレス&パスワードが合っていればページ遷移②サイト訪問時 ○ログインキーチェック ・クッキーをチェック ・DBで照合 →オーケーならページ遷移 ①

データエクスポート

php

<手順> ①データ一覧画面にボタンを設置 ②DBから全データ取得 ③CSVデータで出力 ② query($sql); foreach ($stmt->fetchAll() as $row) { array_push($items, $row); } ③ $item) { $array = array($item['○○'], $item['○○']); fpu…

データインポート

php

<手順> ①フォームから送られてきたデータ一覧 (CSV形式)を文字列として読み込む ②データを配列に格納 ③その配列をループさせてDBに登録①-1 <form method="POST" enctype="multipart/form-data"> <input type="hidden" name="MAX_FILE_SIZE" value="1048576" /> <input type="file" name="○○" /> <input type="submit" value="アップロード"> </form> (※1)取得時は $_FILE…

DB接続

php

パターン1、パターン2動作は同じ。扱いやすいと思う方を採用する。 パターン1 config.php <feff></feff>

GETパラメーター警告対策

php

あらかじめNULLを設定しておかないと、初回表示時や、検索ボックスが空の場合に警告表示されてしまう。

CSRF対策

php

<手順> ①トークン発行処理、チェック処理(関数化) ②セッションの開始(※1) ③WEB表示時→トークンを発行(※2) フォーム送信時→トークンチェックの処理 ④フォームにhiddenタグを仕込ませ、セッショントークンを格納 ① トークンを発行処理

データ登録

php

<手順> ①DB(データベース)接続②入力データの取得③入力データのチェック④正しく入力されていたらDBへ登録⑤DB切断 ② $〇〇 = $〇〇['〇〇']; ③ $err = array(); if ($〇〇 == '') { $〇〇 ['〇〇'] = '入力がありません。'; } ④ if (empty($err)) { $sql =…

データ一覧表示

php

<手順> ①DB(データベース)に接続②DBからテーブル内容を取得(配列に格納)③DB切断③HTMLに反映 ② prepare($sql); $stmt->execute(); //(※1) //配列にデータを格納(※2) foreach ($stmt->fetchAll() as $row) { array_push($items, $row); } ③