sql >> Databáze >  >> RDS >> Mysql

Inicializace PHP PDO se nezdařila kvůli dvojitému portu - Nezachycená výjimka PDO:SQLSTATE[HY000] [2002]

Komentář showdev je správný, že PDO DSN neumožňuje syntaxi hostitel:port.

Pokud váš CMS definuje DB_HOST mimo vaši kontrolu, nemůžete tuto konstantu přímo použít. Ale můžete z něj vytáhnout informace.

$host_port = preg_replace('/:(\d+)/', ';port=${1}', DB_HOST);
$db = new PDO("mysql:host={$host_port};dbname=".DB_NAME.";charset=utf8", 
    DB_USER, DB_PW, array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));



  1. Proč nemůže mít sloupec textu výchozí hodnotu v MySQL?

  2. (mysql, php) Jak získat hodnotu pole auto_increment před vložením dat?

  3. Formátování DATE v oracle

  4. mysql vyberte, chcete-li vrátit mezery pro všechny kromě prvního řádku opakujícího se sloupce