Не выбрана база данных, ошибка возникает только в отдельном включенном файле конфигурации php, но работает, когда в нужном файле - PullRequest
0 голосов
/ 30 сентября 2011

В основном я пытался создать файл конфигурации, чтобы намного проще редактировать информацию о соединении MYSQL в онлайн-базе данных, когда я заполнил свой текущий веб-сайт. Код подключения, который у меня есть, прекрасно работает, когда в каждом файле, когда это необходимо, но когда я пытаюсь использовать требуемый один раз для того же кода в файле конфигурации, он говорит, что база данных не выбрана. эта ошибка никогда не происходит, когда код подключения предварительно записан в файлы. вот мой код файла конфигурации, а затем рабочий код, который уже находится на рабочей странице.

config php

<?php
//configures connection to the mysql database.
$con = mysql_connect("localhost","james");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}

mysql_select_db("cds", $con);    
?>

и вот код работающего соединения с базой данных

<?php
//configures connection to the mysql database.
$con = mysql_connect("localhost","root");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("cds", $con);

$n = $_SESSION['news'];

// find out how many rows are in the table 
if($n == 1)
{
    echo '<h1>CDSRail News</h1>';
    $sql = 'SELECT COUNT(*) FROM news ORDER BY news_date DESC';
    $query = mysql_query($sql);
    echo "<hr/>Click the links below to view our News<br><br>";
    $result = mysql_query($sql);
    $r = mysql_fetch_row($result);
    $numrows = $r[0];...

пожалуйста, помогите !!!

1 Ответ

0 голосов
/ 30 сентября 2011

Это не правильный подход к тому, что здесь пытаются сделать. Ваш конфигурационный файл не должен делать ничего, кроме определения переменных, и вы должны установить фактическое соединение в основном файле. Поэтому вы должны сделать что-то вроде этого:

config.php:

<?php

  $dbHost = 'localhost';
  $dbUser = 'myuser';
  $dbPass = 'mypass';
  $dbName = 'mydbname';

?>

main.php

<?php

  require('config.php');
  if (!$con = mysql_connect($dbHost, $dbUser, $dbPass)) {
    die('Could not connect: ' . mysql_error());
  }
  if (!mysql_select_db($dbName, $con)) {
    die('Could not select database');
  }

  // Rest of code

?>
...