Я хочу создать файл с подключением к базе данных и вернуть его функцией, чтобы можно было вызывать его в других файлах, но я получаю неопределенную функцию или неопределенную переменную … это мой код
function db()
{
$host = "text";
$user = "text";
$password = "text";
$database = "text";
$db = mysqli_connect($host, $user, $password, $database);
if(!$db)
{
die('OOOPS'.mysql_errno());
}
else{
return $db;
}
}
все, что я делаю в других файлах
потребовать это, а затем, используя затем $ дБ
выполнять запросы
Я использую последнюю версию xaamp с php 5.6
Сначала я начну с ошибок. Вы смешиваете библиотеки, mysql_
а также mysqli_
не может и не будет работать друг с другом. Вам нужно выбрать один и пойти с ним. Теперь вы должны выбрать mysqli_*
вариант, потому что mysql_
устарела:
Начиная с PHP 5.5.0 это расширение устарело и будет удалено в
будущее. Вместо этого следует использовать расширение MySQLi или PDO_MySQL.
Теперь то, что ты делаешь, крайне плохо. Вы открываете так много связей. Возьмите это из функции и сделайте так:
$host = "text";
$user = "text";
$password = "text";
$database = "text";
$db = mysqli_connect($host, $user, $password, $database);
if(!$db) {
die('OOOPS'.mysqli_error());
}
Теперь вам просто нужно включить вышеуказанный файл (называется как угодно, как db.php
или что-то) на каждой странице вы собираетесь использовать базу данных.
Это избавляет вас от необходимости делать это каждый раз, когда вы хотите использовать базу данных:
$db = db();
mysqli_query($db, $query);
Что довольно избыточно.
Эта ошибка, потому что вы не запустили функцию db (), поэтому $ db var еще не определена.
Если вы будете использовать этот файл в качестве файла подключения, вам не нужна функция.