PDO error: Can't initialize character set utf8_general_ci
The error message is clear: there is no such charset. And never has been.
utf8_general_ci
is a collation, while you need a character set here, which is called as just or, rather, nowadays it should be utf8
utf8mb4
.
Let me recommend you my PDO tutorial which will help you to avoid a lot of confusions like this.