Call to undefined function mysql connect
Call to undefined function mysql connect
Fatal Error: Uncaught error: Call to undefined function mysql_connect()
Uncaught error: Call to undefined function mysql_connect()
In this article, we will learn about the uncaught error “Uncaught error: Call to undefined function mysql_connect()”.
This error is encountered when we try to use “mysql_connect()” functions of php5 in php7.
PHP Fatal error: Uncaught Error: Call to undefined function mysql_connect() error is raised because mysql_* functions are completely removed from PHP 7, it previously got deprecated in PHP 5.5, but now it is completely removed.
The older MySQL function are removed due to the following reasons:
How to fix Undefined Function Mysql_connect() error
There are four methods to fix undefined function Mysql_connect() error:
1. Use MySQLi or PDO
mysqli_connect()
Instead of using “mysql_connect()” we should use “mysqli_connect()” in php7 to avoid this error.
PDO(php database objects):
Example:$pdo = new PDO(‘mysql:host=localhost;dbname=database_name ‘, ‘username’, ‘password’);
//pdo requires a valid database to establish connection. If the database is not specified then it throws an exception.
2. Connecting to Mysql with the Pdo Object Is Pretty Straight Forward
3. Connecting to MySQL with MySqli Connection Object
4. Rollback to Older PHP 5, update your code to mysqli or PDO and then upgrade to PHP7
Best Practice
Use MySQLi wrapper and object mapper with prepared statements.
Example: User PHP-MySQLi-Database-Class https://github.com/ThingEngineer/PHP-MySQLi-Database-Class
By using MySQLi with prepare statement will secure your database connection & in future, if need to upgrade your Database to some other version, you won’t have to update all you mysql connection string in all pages.
This package is free and customizable; you can upgrade by creating your Class & functions.
Перенос сайта
Подскажите пожалуйста как эту ошибку исправить.
]# service mysqld status
mysqld (pid 15488) is running.
Вызов не существующего метода, стало быть версия php скорее всего не подходит(такой синтаксис в 5+ php если не ошибаюсь), не видит этой функции. Не уверен, может быть и в другом проблема. Если бы не мог подключиться к БД, то в теории ошибка была бы «не может подключиться к БД»
ЗЫ настройки ДБ в файле /bitrix/.settings.php
1
В конце файла
\bitrix\php_interface\dbconn.php
перед «?>»
Добавь строку
| define(«BX_USE_MYSQLI», true); |
2
Если есть файл настроек
\bitrix\.settings.php
, проверь, чтоб в массиве
| ‘connections’ => array ( ‘value’ => array ( ‘default’ => array ( ‘className’ => ‘\\Bitrix\\Main\\DB\\MysqliConnection’, ‘host’ => ‘localhost’, ‘database’ => ‘site287’, ‘login’ => ‘root’, ‘password’ => ‘*****’, ), ), ), |
‘className’ => ‘\\Bitrix\\Main\\DB\\MysqliConnection’
Внимательно! не пропусти i
Mysql[[i]]Connection
Да проще всего что бы он показал свой phpinfo() ;
| Цитата |
|---|
| Влад Булгаков написал: Схожая проблема при поиске товаров. В настройках хостинга поменял php 5.6 на php7. Перестал работать поиск. Вручную поправил mysql на mysqli файла search.php. При вводе товара теперь всплывает подсказка и товар можно выбрать, но если перехожу на весь список товаров по запросу, то выдает такую ошибку. define(«BX_USE_MYSQLI», true); и Mysql стоит. В настройках php.ini указал extension = php_mysqli.dll. не помогло. https://intes-pro.ru/phpinfo.php php info |
Форум
Не подключается к базе данных
Не подключается к базе данных
P.S. Приложил к посту архив с формой регистрации, CSS стилями и php файлом работы с БД (будет выглядеть аляповато, так как не приложил папку с картинками Img
По вашему это переводится как «Не могу подключится к БД».
рукалицо.jpg
Драйвер mysql устарел несколько лет назад. Используйте mysqli или pdo.
Ну это так, рекомендация, к проблеме не относится.
У вас же почему-то не подключено расширение mysql. Проверьте в php.ini наличие раскомментированной строки:
Читайте лучше ошибку
Другая инсталляция мускула, теоретически, не должна мешать, тут PHP расширение не подключает. Чтобы убедиться в этом, достаточно попробовать подключится к вашей базе с помощью mysqli или pdo
Вывод phpinfo посмотрите. Какой файл конфигурации используется пыхом, и что в нем реально подключено.
[upd=1424853241][/upd]
А вообще, взяли бы и распаковали дистрибутив OpenServer с нуля. По умолчанию из коробки всё работает.
Блин у меня такая же проблемма.
прошу прощения но я снова туплю возможно но теперь при попытке подключится к базе выдает вот такую ошибку