今回はPHPのソースコードからデータベースに接続するときに簡単なミスで生じる内容を報告します。
入力してもエラー表示がされずに、データベースに反映しないという内容です。
PHP version 7.4
10.4.22-MariaDB(phpmyAdimin)を使用。
(ケース)データベースに接続文字列
$dsn = "mysql:dbname = php_work;host = localhost;charset = utf8";
// エラー表示はされないが、接続はされない
【原因】イコール(=)の間にスペースが入っている。
この部分を見やすくしたいがために、改行やスペースを入れてしまうと結果的に、接続が出来なくなる
正しくは、
mysql:dbname=test;host=localhost;charset=utf8mb4(スペースを入れない)
$dsn ="mysql:dbname=test;host=localhost;charset=utf8mb4";
// すべてを隙間を入れずに入力すること。
簡単なところだが、意外にエラー表示されずに、うまくいかないときは歯がゆくなります。
まぁおそらく、ほとんどの人が、コピペで対応するからトラブることはないかもしれませんが、
トラブった代表として、ここに報告いたしますね。