Myślę, że nazwa bazy danych nie odzwierciedla twojego kodu. Czy możesz spróbować zmienić kod jak poniżej,
$dbname = "my_db";
$dsn = "mysql:host=localhost;dbname="+$dbname+";
lub
$dsn = "mysql:host=localhost;dbname=my_db;
Myślę, że nazwa bazy danych nie odzwierciedla twojego kodu. Czy możesz spróbować zmienić kod jak poniżej,
$dbname = "my_db";
$dsn = "mysql:host=localhost;dbname="+$dbname+";
lub
$dsn = "mysql:host=localhost;dbname=my_db;