Переменная PHP - умножение страниц - PullRequest
0 голосов
/ 09 августа 2011

У меня есть страница functions.php, я включил во ВСЕ мои другие страницы php. Мне нужна функция на моей странице functions.php, которую я могу использовать на всех других страницах.

Я пробовал это:

    function getSetting()
    {
        $r=mysql_query("SELECT * FROM settings");
        if(mysql_num_rows($r) == 0)
            return false;
        else
            $sdata=mysql_fetch_assoc($r);

        return $sdata;
    }

То, что я хочу, я хочу получить данные из строки рядом с именем на следующем рисунке: http://awesomescreenshot.com/0bci8x472

Пример:

Если я напишу $ sdata ['sitename'], я хочу, чтобы он вывел «ptcify»

Спасибо!

Ответы [ 2 ]

1 голос
/ 09 августа 2011

Попробуйте использовать mysql_fetch_array () с MYSQL_ASSOC, как описано по этой ссылке http://www.php.net/manual/en/function.mysql-fetch-array.php.

Есть много вещей, которые вы могли бы сделать, чтобы еще больше улучшить реализацию своего кода, т.е. ООП, используя более совершенные библиотеки абстракции базы данных (даже переход на PDO, основанный на PHP_MYSQL, является улучшением), но это должно работать без проблем.

1 голос
/ 09 августа 2011

У большинства вопросов обычно есть где-то ?, что указывает на фактический вопрос.Я не уверен, в чем проблема с вашим кодом, но я предполагаю, что вы получаете только один «установочный» результат - если этот запрос возвращает несколько строк, вы должны перебрать набор результатов и получить каждую строку,ТО возврат:

$r = mysql_query(...) or die(mysql_error());
$sdata = array()
while ($row = mysql_fetch_assoc($r)) {
   $sdata[] = $row;
}
return $sdata

редактировать

$sql = "SELECT setting_name, setting_value FROM settings"
$result = mysql_query($sql) or die(mysql_error());
$sdata = array();
while($row = mysql_fetch_assoc($result)) {
    $sdata[$row['setting_name']] = $row['setting_value'];
}

return $sdata;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...