Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: неправильно работает функция
 
 автор: Bvz   (02.02.2010 в 12:13)   письмо автору
 
 

сделал функцию для подключения модулей, но она почему-то выводит только один модуль


<?php
// функция загрузки модулей
function LoadModules$position )
    {
    
// выбираем модули
        
$sql "SELECT * FROM `module` WHERE position='{$position}' AND published = 1 ORDER BY id";
        
$mod mysql_query($sql);
        if (
mysql_num_rows($mod) > 0)
            {
                while (
$query_mod mysql_fetch_assoc($mod))
                    {
                        
$file "module/".trim($query_mod['module']).".php";
                        
$menu =trim($query_mod['module']);

                        
// если полученный модуль существует, подключаем его
                        
if (is_readable($file)) {
                            include(
$file);
                        } else {
                            echo 
$GLOBALS["error"];
                        }
                    }
            }
        else
            {
                echo 
$GLOBALS["null"];
            }
    };
?>


вызывается соответственно
<?php LoadModules("left"); ?>


в позиции left в БД есть несколько модулей, в соответствующей папке тоже они есть, но публикуется только один модуль, подскажите, где я не доглядел!

  Ответить  
 
 автор: Trianon   (02.02.2010 в 12:22)   письмо автору
 
   для: Bvz   (02.02.2010 в 12:13)
 

AND published = 1

но публикуется только один модуль

  Ответить  
 
 автор: Bvz   (02.02.2010 в 12:27)   письмо автору
 
   для: Trianon   (02.02.2010 в 12:22)
 

нет это условие опубликован модуль или нет, убрал но все равно не работает

вот дамп таблицы

CREATE TABLE IF NOT EXISTS `module` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `title` varchar(255) NOT NULL,
  `module` varchar(255) NOT NULL,
  `position` varchar(10) NOT NULL DEFAULT 'left',
  `published` tinyint(1) unsigned NOT NULL DEFAULT '1',
  PRIMARY KEY (`id`)
)  ;

INSERT INTO `module` (`id`, `title`, `module`, `position`, `published`) VALUES
(5, 'Стили мебели', 'style', 'header', 1),
(3, 'Статьи', 'article', 'content', 1),
(4, 'Блог', 'blog', 'content', 1),
(1, 'Меню', 'menu', 'left', 1),
(8, 'Все фабрики', 'all', 'content', 1),
(7, 'Каталог', 'catalogue', 'content', 1),
(2, 'Тип мебели', 'type', 'left', 1),
(6, 'Фабрики', 'factory', 'right', 1);

  Ответить  
 
 автор: Bvz   (02.02.2010 в 12:28)   письмо автору
 
   для: Trianon   (02.02.2010 в 12:22)
 

нет это условие опубликован модуль или нет, убрал но все равно не работает

  Ответить  
 
 автор: Trianon   (02.02.2010 в 12:38)   письмо автору
 
   для: Bvz   (02.02.2010 в 12:13)
 

наверняка модуль , исполняясь, разрушает конткест перечислителя.
Гробит переменную $mod, например.
А поскольку диагностика ошибок у Вас подавлена - всё происходит тихо.

Сколько раз еще сказать нужно, чтобы народ включал диагностику на development -серверах...

  Ответить  
 
 автор: Bvz   (02.02.2010 в 12:42)   письмо автору
 
   для: Trianon   (02.02.2010 в 12:38)
 

а как это сделать, я на дэнвере работаю!
у меня так стоит error_reporting = E_ALL & ~E_NOTICE
а как надо?

кстати спасибо, я нашел ошибку, вы были правы!

  Ответить  
 
 автор: Trianon   (02.02.2010 в 12:57)   письмо автору
 
   для: Bvz   (02.02.2010 в 12:42)
 

.htaccess
php_value error_reporting  -1

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования