FuelPHP復習 その5

ここからは躓いたポイントになるなあ…

・DBの接続設定
phpMyAdminでユーザーを作る
app/config/db.phpに共通設定を書く

return array(
    'default' => array(
        'type'           => 'mysqli',
        'connection'     => array(
            'persistent'     => false,
        ),
        'identifier'   => '`',
        'table_prefix'   => '',
        'charset'        => 'utf8',
        'collation'      => false,
        'enable_cache'   => true,
        'profiling'      => false,
        'readonly'       => false,
    ),
);

app/config/development/db.phpに開発環境用の接続設定を書く

return array(
    'default' => array(
        'connection' => array(
            'hostname' => 'localhost',
            'port' => '3306',
            'database' => '【作ったDB名】',
            'username' => '【作ったユーザー名】',
            'password' => '【ユーザーに設定したパスワード】',
        ),
        'profiling' => true,
    ),
);


sql実行するとDBにつながらない
phpMyAdminでユーザ作成時にホストがデフォルトだと%なので
ちゃんとホストをlocalhostに指定して作り直す


・INSERTクエリがエラーになる
さっきの設定にあった「identifier」がクオート文字列らしく、
「`」を使う必要があったのに「'」を使っていたので
正常に認識されていなかった。
(例) ( 'column_name' ) みたいなやつ


MariaDBに登録した全角文字が「?????」とか化ける
phpMyAdminのテーブルとDBの両方の照合順序を、utf8_general_ciにする
デフォルトだとlatin1とか。テーブルだけじゃなく、DBも設定を直す必要あり


・DBから結果の取得方法がバラバラ
selectだと
$result = $query->execute()->as_array();
insertだと
$result = $query->execute();
(as_array()が付いてるとエラーになる)
update,deleteは未確認