m6uのエンジニアっぽい日記

PHP利用開発やFuelPHP利用開発、PostgreSQL利用開発、Androidアプリ開発、CentOS7サーバー構築など、テクニカルでエンジニアっぽい内容の日記

こんなPHP入門書はダメだ(ライトニングトーク風にまとめる)

NG: PHP7以降に対応していない(出版年度が古い本にありがち&改定されていても昔の書き方が残置されていることもあり)

NG: デバッグの仕方について言及がない(リモートデバッグとかXDebugの説明がない)

NG: 自分の開発環境(WindowsとかMacとか)と本の開発環境が合ってない(そんな画面はありませんけど、的な)

NG: データベースにmysql_*関数を使って接続している(改良されたmysqli_*〈マイエスキューエルアイ〉関数ならまだいいけど、やっぱりpdo接続で説明されているものが望ましい)

NG: php(やapache httpd)での、デバッグしやすくする設定事項の言及がない(display_errorsディレクティブとかerror_logディレクティブとか、デバッグ向けの設定があるのです)

NG: SQL文が文字列と変数の連結で準備されている(POSTやGETで受信したデータを検証せずSQL文に連結してしまうと、SQLインジェクション攻撃されてしまい危険です)

NG: アクセス頻度が多そうなデータファイルを、file_get_contents()とfile_put_contents()で読み書きしている(同時アクセスが有ったときに排他ロックをかけないと、ファイルが壊れちゃうよ)

NG: BOMなしUTF-8でコーディングしていない(SJIS-winでもないSJISとか、そもそも言及していないとか)

NG: やたら<?php ~ ?>ブロックが多く、htmlとの分離が悪い(読みにくいということはデバッグしづらい、理解しづらいことにもつながり)

入門書を買う前にやっとくべきこと

  • ネット上の書評を確認しておく。
  • 出版元のページを確認して正誤表の存在を確認する。

Amazonのレビューも、話半分に読んでおくといいかも。

  • 出版年度は必ず確認。5年以上も古いのは避ける。PHP7対応が怪しいものは避ける。

これから学習をはじめて習得するのに、今ではほとんど通用しない古いやり方を学んでも無駄になってしまうので。
PHP7(できればPHP7.1以降)対応が明記されていれば、読む価値はありそう。

さくらのレンタルサーバーのmysqlデータベースに、A5:SQL mk-2から接続する方法

※注意※ さくらインターネットさん公式情報ではないので、いつ使えなくなるかわかりませんし、アクセス方法によっては強制切断されることもあるらしいので、自己責任のもとにお試しください。 ここに示した方法で接続できて、テーブルの一覧を表示し、あるテーブルの中身を取得するところまで確認できたので「接続できた」として掲載しております。

用意したもの

さくらのレンタルサーバー、スタンダードプラン

WordPress用に確保したmysqlデータベースに接続してみます。

Windows 7 Professional 64-bit

仕事用パソコン。

A5:SQL mk-2 2.12.3 x64

普段はPostgreSQL開発に使用中。

接続設定

データベース→データベースの追加と削除、からどうぞ。

全般

コントロールパネルでデータベースの新規作成したときのアカウント情報を使います。

f:id:m6u:20190110120853p:plain
全般設定

SSH2トンネル

telnet接続するときのアカウント情報を使います。

f:id:m6u:20190110120917p:plain
SSH2トンネル設定

以上