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

Форум PHP

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Fatal error: Cannot redeclare is_admin() (previously declared in

Сообщения:  [1-5] 

 
 автор: cheops   (04.03.2007 в 00:21)   письмо автору
 
   для: acdcee   (03.03.2007 в 13:32)
 

if(!query) die("Ошибка при обращении к блоку");

Вместо query следует писать $query
Выведите количество блонов из базы данных - сколько их?
echo "Количество".mysql_num_rows($query)."<br>"

PS Под новые вопросы лучше заводить новые темы.

   
 
 автор: acdcee   (03.03.2007 в 13:32)   письмо автору
 
   для: acdcee   (01.03.2007 в 16:25)
 

Ну кто нить может помочь с блоками, я уже второй день сижу и ничего не получается, просто вообще кошмар какой-то!!!!


Переделал кое что и тоже не работает не пойму в чем косяк:


<?php
function blocks($view=0){
global 
$theme_path,$block_side;
$block_side=$side;
if(
$side="l"){
$position "l";
}
if(
$side="c"){
$position "c";
}
if(
$side="r"){
$position "r";
}
$sql="SELECT `b_id`,`title`,`content`,`active`,`blockfile`,`view`,`bposition` FROM blocks WHERE `active`='show' AND `bposition`='$position' DESC LIMIT 1";
$query=mysql_query($sql);
if(!
query) die("Ошибка при обращении к блоку");
if(
mysql_num_rows($query)){
while(
$row=mysql_fetch_array($query)){
$title=$row['title'];
$content=$row['content'];
$view=$row['view'];
if(!
$tfile){
$tfile=file("".$theme_path."blocks/".$row['blockfile']."");
if(
file_exists($tfile)){
include(
$tfile);
                 }
           }
     }
}
if(
$view=0){
$content.="В блоке ничего нет";
themecenterbox($title,$content);
$themesidebox($title,$content);//это функции оформления блоков
}elseif($view=1){
themecenterbox($title,$content);
themecenterbox($title,$content);
}
?>


Вроде в синтаксисе нет ошибок по крайней мере не выбевает....

Но в тоже время ничего не появляется :( :( :( :( :( :(

   
 
 автор: acdcee   (01.03.2007 в 16:25)   письмо автору
 
   для: cheops   (01.03.2007 в 13:23)
 

Спасибо огромное.... писал все время знал и все равно допустил такой косяк.... надо будет внимательней мануалы, книги и справочники читать!

а вот с блоками таже беда не выводятся, по синтаксису нет ошибок перепроверил тысчю раз

и не выводятся :( помогите если кто нить сможет и объесните как лучше сделать и что я не так сделал????????

Таблица с базы на блоки вот :


CREATE TABLE `blocks` (
  `b_id` int(11) NOT NULL auto_increment,
  `title` varchar(30) NOT NULL default '0',
  `content` text NOT NULL,
  `active` enum('show','hide') NOT NULL default 'show',
  `bposition` varchar(1) NOT NULL default '0',
  `view` tinyint(1) NOT NULL default '0',
  `blockfile` varchar(255) NOT NULL default '0',
  PRIMARY KEY  (`b_id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=1 ;

   
 
 автор: cheops   (01.03.2007 в 13:23)   письмо автору
 
   для: acdcee   (28.02.2007 в 17:45)
 

У вас файл где-то два раза включается и происходит попытка повторного объявления функции, чтобы избежать этого используйте конструкцию require_once() вместо include().

   
 
 автор: acdcee   (28.02.2007 в 17:45)   письмо автору
 
 



function render_blocks($side,$blockfile,$title,$content,$bid){
if($blockfile=""){
if($side="c"){
themecenterbox($title,$content);
            } elseif ($side == "l") {
                themecenterbox($title, $content);
            } else {
                themesidebox($title, $content);
            }
        } else {
            if ($side == "l") {
                blockfileinc($title, $blockfile, 1);
            } elseif ($side == "r") {
                blockfileinc($title, $blockfile, 1);
            } else {
                blockfileinc($title, $blockfile);
            }
 }
 
function blocks(){
global $side;
    $side = strtolower($side);
    $block_side = $side;
    if ($position = "l") {
        $position = "l";
    } elseif ($position = "r") {
        $position = "r";
    }  elseif ($position = "c") {
        $position = "c";
        }
    $side=$position;
$sql="SELECT bid,title,content,active,blockfile,bposition FROM block WHERE active='show' AND bposition='$position'";
$query=mysql_query($sql);
while($row=mysql_fetch_array($query)){
$blockfile=$row['blockfile'];
$active=$row['active'];
$bid = $row['bid'];
$bid = intval($bid);
$title = $row['title'];
$content = $row['content'];
$view=$row['view'];
if ($view == 0) {
                render_blocks($side, $blockfile, $title, $content, $bid);
            } elseif ($view == 1 AND is_user($user) || is_admin($admin)) {
                render_blocks($side, $blockfile, $title, $content, $bid);
            } elseif ($view == 2 AND is_admin($admin)) {
                render_blocks($side, $blockfile, $title, $content, $bid);
            } elseif ($view == 3 AND !is_user($user) || is_admin($admin)) {
                render_blocks($side, $blockfile, $title, $content, $bid);
            }
        }
    }
}

function blockfileinc($title,$blockfile,$side=0){
global $theme_path;
    $file = file("".$theme_path."block/$blockfile");
    if (!$file) {
        } else {
        include("".$theme_path."block/$blockfile");
    if ($side == 1) {
        themecenterbox($title, $content);
    } elseif ($side == 1) {
        themecenterbox($title, $content);
    } else {
        themesidebox($title, $content);
              }
        }
}


Пишет следуйщее

Fatal error: Cannot redeclare is_admin() (previously declared in T:\home\virtual\second\mainfile.php:10) in T:\home\virtual\second\mainfile.php on line 31

is_admin Функция такая есть в этом же файле....

Не пойму в чем ошибка, что не так по синтаксису все нормально, если поменять не которые пораметры то он просто скажет что не существует файлов и дериктории


$file = file("".$theme_path."block/$blockfile");


помогите разобратся два дня голову ломаю не могу до переть

И еще такой вопрос

Почему когда пишешь модуль на главную страницу по умолчанию, в таблице модулес ставишь не видимый а он все равно видит его и показывает???

   

Сообщения:  [1-5] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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