Подключение к базе данных mysql: PDO Преждевременное завершение данных

У меня проблема, когда я хотел разместить сайт на хостинге. Я использую Nette, и когда я хочу подключиться, я получаю сообщение об ошибке

PDO::__construct(): преждевременное завершение данных (mysqlnd_wireprotocol.c:553)

Я использую Nette Framework с этим конфигом БД:

dsn: 'mysql:host=dbhost;dbname=dbtable'
user: dbuser
password: dbpass

Когда я попробовал классическое соединение, оно работает правильно. Я не уверен, что делать и как это решить.

if($myslConnection = mysql_connect("dbhost", "dbuser", "dbpass")){
  echo("connected");
    mysql_select_db("dbtable",$myslConnection);
    $result = mysql_query("SELECT * FROM news", $myslConnection);

    while($resultItem = MySQL_Fetch_Row($result)){
         echo $resultItem[1]."<br>";
    }
}
else{
  exit("not connected");
}

редактировать: ошибка, что я получил

Warning: PDO::__construct() [pdo.--construct]: Premature end of data (mysqlnd_wireprotocol.c:553) in /var/www/html/unix/i/y/domainname.noveranet.cz/www/info.php on line 5

Warning: PDO::__construct() [pdo.--construct]: OK packet 1 bytes shorter than expected in /var/www/html/unix/i/y/domainname.noveranet.cz/www/info.php on line 5

Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000] [2000] mysqlnd cannot connect to MySQL 4.1+ using the old insecure authentication. Please use an administration tool to reset your password with the command SET PASSWORD = PASSWORD('your_existing_password'). This will store a new, and more secure, hash value in mysql.user. If this user is used in other scripts executed by PHP 5.2 or earlier you might need to remove the old-passwords flag from your my.cnf file' in /var/www/html/unix/i/y/domainname.noveranet.cz/www/info.php:5 Stack trace: #0 /var/www/html/unix/i/y/domainname.noveranet.cz/www/info.php(5): PDO->__construct('mysql:host=tran...', 'user', 'pass') #1 {main} thrown in /var/www/html/unix/i/y/domainname.noveranet.cz/www/info.php on line 5

0 ответов

Другие вопросы по тегам