Поэтому у меня есть база данных Amazon Web Service, настроенная
Я работаю над старым учебным пособием для приложения, которое я планирую использовать с ним.
Я заметил, что mysql_connect был неутешителен, когда я это просмотрел.
Что я могу использовать в качестве альтернативы? Как я могу подключиться к моей базе данных amazon?
<? mysql_connect("localhost", "username", "password") or die ("Can't connect to database server"); mysql_select_db("videoRecorderDemo") or die ("Can't select database"); mysql_query("SET NAMES 'utf8'"); ?>
Я получаю эту ошибку:
Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'username'@'192.168.1.1' (using password: YES) in /www/zxq.net/r/e/d/red5vptest/htdocs/utility/db.php on line 2 Can't connect to database server
Независимо от того, какие учетные данные я использую. Это также не помогает, что образцы кода Amazon показывают, что вы подключаетесь совершенно по-другому.
Документация для PHP говорит
Это расширение устарело с PHP 5.5.0 и будет удалено в будущем. Вместо этого следует использовать расширение MySQLi или PDO_MySQL .
$mysqli = new mysqli('localhost', 'my_user', 'my_password', 'my_db'); /* * This is the "official" OO way to do it, * BUT $connect_error was broken until PHP 5.2.9 and 5.3.0. */ if ($mysqli->connect_error) { die('Connect Error (' . $mysqli->connect_errno . ') ' . $mysqli->connect_error); }
Сообщение об ошибке, которое вы получаете, не связано с устаревшим mysql_connect
. Имя пользователя и пароль MySQL, которые вы используете («имя пользователя» и «пароль» в вашем коде) неверны – если вы не знаете правильных значений, проверьте документацию на версию MySQL, которую вы установили. (Возможно, вам потребуется создать пользователя и / или базу данных.)
Как уже отмечалось несколькими другими, поддерживаемыми альтернативами расширения mysql являются mysqli и PDO MySQL .
MysqlI (mysql улучшен) является преемником для mysql.
$Link = new mysqli($Hostname, $Username, $Password, $Database); $Result = $Link->query('SELECT ...'); $Rows = $Result->fetch_array(MYSQLI_NUM);
В пособии предлагается mysqli в качестве альтернативы http://php.net/manual/en/book.mysqli.php
Одной из простых альтернатив MySQL является MySQLi. Вместо
mysql_connect("host", "username", "password")
… вы можете подключиться, например,
$db = mysqli_connect("host", "username", "password");
Вероятно, стоит прочитать этот полезный учебник: http://phpmaster.com/avoid-the-original-mysql-extension-1/