Forum. MyNuke.ru

Forum. MyNuke.ru (http://forum.mynuke.ru/index.php)
-   Установка Модулей (http://forum.mynuke.ru/forumdisplay.php?f=10)
-   -   журнал... (http://forum.mynuke.ru/showthread.php?t=2858)

Freikorpse 10.06.2007 03:09

журнал...
 
Дело было так. Поствил нюку на локальный сервер Денвер. Всё настроил. Начал проверять Зарегистрировался сам как рядовой пользователь. Подключил модуль журнала. Написал в этом журнале что-то типа "Проба пера". После этого не могу открыть и прочитать то, что написал, хотя в виде ссылки это и отображается...
Выдаёт браузер что-то вроде

Fatal error: Cannot redeclare opentable() (previously declared in z:\home\localhost\www\themes\DeepBlue\theme.php:11 ) in z:\home\localhost\www\themes\DeepBlue\theme.php on line 10

Нашёл десятую строку...

с десятой...
function OpenTable() {
global $bgcolor1, $bgcolor2;
echo "<table width=\"100%\" border=\"0\" cellspacing=\"1\" cellpadding=\"0\" bgcolor=\"$bgcolor2\"><tr><td>\n";
echo "<table width=\"100%\" border=\"0\" cellspacing=\"1\" cellpadding=\"8\" bgcolor=\"$bgcolor1\"><tr><td>\n";
}

И как жить дальше?

Astrix 10.06.2007 12:20

перед ней напишите:

PHP код:
 if (!function_exists("OpenTable")) { 


после нее:

PHP код:
 


скорее всего там будет еще функция CloseTable ()

для нее проделайте то же самое:
перед ней напишите:

PHP код:
 if (!function_exists("CloseTable")) { 


после нее:

PHP код:
 

Freikorpse 13.06.2007 11:21

То есть, если я правильно понял алгоритм действий такой:
Нюка ищет функцию OpenTable и не находит, поэтомувпадает в состояние фрустрации.
Чтобы этого не произошло вписываешь условие, что функцию следует выполнить только в случае её существования

if (!function_exists("***")) ...

ну так вот:
вставил я это условие для функций OpenTable и CloseTable, а потом по аналогии и для всех остальных функций, потому что ошибка поехала вниз по всему файлу theme.php

То есть сначала ошибка на линии 10, потом на линии 15, потом на линиии 20 и так до конца по всем началам функций

И как следовало ожидать это привело к тому, что:

Warning: head(includes/my_header.php) [function.head]: failed to open stream: No such file or directory in z:\home\localhost\www\modules\Journal\header.php on line 45
Warning: head() [function.include]: Failed opening 'includes/my_header.php' for inclusion (include_path='.;/usr/local/php/PEAR') in z:\home\localhost\www\modules\Journal\header.php on line 45

+

Fatal error: Call to undefined function: themesidebox() in z:\home\localhost\www\mainfile.php on line 571

У меня две версии: это контроль ошибок или что-то другое.

Так чё делать?...
:oooo:

Soniks 13.06.2007 12:55

Freikorpse не верно, читайте доки php
где то в теме встречается дважды определений функция, и данное условие if как раз смотрит, определина ли уже функци такая компилятором или нет, если нет то выводит из условия


Часовой пояс GMT +4, время: 22:53.

Copyright © 2005 by Soniks