В настоящее время я переписываю один из моих старых сценариев PHP, чтобы код был хорошо структурирован для будущих обновлений.
Одна вещь, которую я пытаюсь сделать, - это создать файл конфигурации, чтобы можно было легко изменить настройки, отредактировав один файл.
исходный код файла: functions.php
function ConnectToDB() {
//database configurations...
$host = "localhost";
$dbuser = "root";
$dbpass = "";
$tblname = "parents";
$connection = mysql_connect($host,$dbuser,$dbpass);
if (!$connection) {
echo 'Could not connect to the database. Please contact the administrator for more information.';
}
// select the db
$db_selected = mysql_select_db($tblname, $connection);
if (!$db_selected) {
echo 'Could not select the parents evening table. Please contact the administrator for more information.';
return false;
}else{
return true;
}
}
файл: config.php
<?php
//database configurations...
$host = "localhost";
$dbuser = "root";
$dbpass = "";
$tblname = "parents";
?>
Это мой новый код:
файл: functions.php
function ConnectToDB() {
include('inc/config.php');
global $host; //needed becuase the scope of the variable throws an error otherwise.
global $dbuser; //needed becuase the scope of the variable throws an error otherwise.
global $dbpass; //needed becuase the scope of the variable throws an error otherwise.
global $tblname; //needed becuase the scope of the variable throws an error otherwise.
$connection = mysql_connect($host,$dbuser,$dbpass);
if (!$connection) {
echo 'Could not connect to the database. Please contact the administrator for more information.';
}
// select the db
$db_selected = mysql_select_db($tblname, $connection);
if (!$db_selected) {
echo 'Could not select the parents evening table. Please contact the administrator for more information.';
return false;
}else{
return true;
}
}
Мой старый код раньше работал отлично, однако теперь я изменил переменные на разные файлы, мое приложение продолжает выводить: «Не удалось выбрать родительский вечерний стол. Пожалуйста, свяжитесь с администратором для получения дополнительной информации». - это означает, что мое приложение не подключается к базе данных должным образом.
У кого-нибудь есть идеи, что не так с моим кодом? Сначала я думал, что это проблема масштаба, но я просто не могу понять, что я здесь сделал неправильно.
Заранее спасибо за любые ответы.