Перейти к публикации

Возникает ошибка Fatal error: Cannot redeclare takeHref() ....


Рекомендованные сообщения

Написал небольшой модуль, все работает, но периодически выдает ошибку. Ошибка возникает рандомно, без каких либо закономерностей. Подскажите пожалуйста, в чем может быть проблема?

Полный текст ошибки.

Fatal error: Cannot redeclare takeHref() (previously declared in /home/users2/i/ЛОГИН/engine/modules/catsort.php:11) in /home/users2/i/ЛОГИН/engine/modules/catsort.php on line 13

Урл сайта http://filmi-onlain.net/

Ошибка возникает при переходе по страницам /trillery.html , /boeviki.html и тд.

Изменено пользователем yazzu
Ссылка на сообщение
Поделиться на других сайтах

когда нет кэша такое и возникает

надо исправить так


function [color=#000000]takeHref(...)[/color] {

...

}

заменить на

if(!function_exists('[color=#000000]takeHref'[/color]) {

function [color=#000000]takeHref(...)[/color] {

...

}}

Ссылка на сообщение
Поделиться на других сайтах

Т.е. если добавить кеширование данных то ошибка исчезнет?

Добавляя проверку функцией function_exists, проблему не решить, тут дело в другом. Поделитесь пожалуйста своими соображениями по этому поводу.

Изменено пользователем yazzu
Ссылка на сообщение
Поделиться на других сайтах

ошибка возникает когда функция с таким именем определена и её пытаются опледелить ещё раз.

к примеру в modules/cache вставляют include modules/catsort.php и в другом файле также includк вместо include_once

Ссылка на сообщение
Поделиться на других сайтах

Не совсем понял. Я Весь код храню в одном файле и ничего кроме include('engine/api/api.class.php'); не инклудю в него. Я так понял modules/catsort.php вызывается где то еще? Почему тогда он не каждый раз вызывается а как то рандомно?

Ссылка на сообщение
Поделиться на других сайтах

Поиском прошелся, ничего интересного, видимо не судьба.

P.S. Вопрос все еще актуален, может кто то уже сталкивался с этой проблемой. У меня есть предчувствие что это из за того что я подключаю множество раз один и тот же файл таким образом :

[static=multfillmy]

{include file="engine/modules/catsort.php?cat=1"}

[/static]

[static=detektivi]

{include file="engine/modules/catsort.php?cat=2"}

[/static]

Может баг в самом движке?

Ссылка на сообщение
Поделиться на других сайтах

Я не исправил а переделал. Раньше я вызывал файл примерно так

[static=multfillmy]

{include file="engine/modules/catsort.php?cat=1"}

[/static]

[static=detektivi]

{include file="engine/modules/catsort.php?cat=2"}

[/static]

Т.е. находясь на странице с названием, например, detektivi то должен вызываться только один файл {include file="engine/modules/catsort.php?cat=2"} Оно в принципе так и было, но иногда возникала ошибка. Так что глюк скорее всего таки где то в движке.

Изменено пользователем yazzu
Ссылка на сообщение
Поделиться на других сайтах
  • 3 недели спустя...

Я не крутой спец конечно, но логически если подумать, то если тебе одно временно будут в два уха жужать, что бы ты сделал два разных дела одновременно, ты бы тоже выпал бы с ошибкой :) Это если я правильно понял твой кусок кода.

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...