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

Модуль выдает ошибку.


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

Привет всем!

У меня вылезла вот такая проблема.

 

Нужно зайти на сайт http://iisusse-news.com/ справа расположены блоки.

Если найти блок с надписью - онлайн отчет и щелкнуть по ней блок раскроется. 

Модуль называется - сегодня нас посетили.

 

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

 

Раньше все работало, а теперь трындец, наступил.

 

Читал     https://epsiloncool.ru/programmirovanie/php/strict-standards-only-variables-should-be-passed-by-reference-kak-ispravit     что, подобная ошибка начала появляться при переходе на версию PHP 5.3, в которой запрещён вызов функции с параметром — константой, если функция ожидает на этом месте ссылки на переменную.

 

Проблема  выглядит сейчас следующим образом:

Strict Standards: Only variables should be passed by reference in /var/www/html/iisusse-news.com/engine/modules/SiteVisited/run.php on line 22

Модуль сам по себе похоже работает, так как надпись Нет данных :(   об этом свидетельствует, но вот эта безобразная строка с предупреждением

Строгие стандарты: только переменные должны передаваться по ссылке в /var/www/html/iisusse-news.com/engine/modules/SiteVisited/run.php on line 22
... сильно портит впечатление от работы модуля.

 

 Теперь я буду умничать, хотя предупреждаю, что мало понимаю в программировании, точнее говоря, имею слабое представление.  ))

 

Исходя из этой статьи я нашел похожий пример с моей  22 строкой. Причем один в один.

$color = reset(explode(',',$color));

Итак, эту строку я представил следующим образом:

$temp = (explode(',',$color);
$color = reset($temp);

Думал о себе какой же ты крутой чувак. если так борзо в программирование  поперся! Жму и упс! 

Браузер выдает ошибку:

Parse error: syntax error, unexpected ';' in /var/www/html/iisusse-news.com/engine/modules/SiteVisited/run.php on line 22

Виновата, теперь, стало быть, эта строка:

$temp = (explode(',',$color);

Сделал пробел:

$temp = (explode(',', $color);

Все равно выдает ошибку в браузере.

 

Как устранить дефект работы данного модуля? 

 

Полный код страницы run.php  с кодом у меня такой:

 

<?php

/*====================================================
 Author: RooTM
------------------------------------------------------
 Web-site: http://weboss.net/
=====================================================*/



if (! defined ( 'DATALIFEENGINE' )) {
    die ( "Hacking attempt!" );
}

$file_name = ENGINE_DIR . "/modules/SiteVisited/base/".date(j."_".n."_".Y).".data";

if ($is_logged == TRUE){

$groups_color = "group_1:#FF0000,group_2:#CC33CC,group_3:#009900,group_4:#3333FF";

$color = stristr($groups_color, 'group_'.$member_id['user_group'].':' );
$color = reset(explode(',',$color));


$color = trim(str_replace('group_'.$member_id['user_group'].':','',$color));

 if( $config['allow_alt_url'] == "yes" ) {
$go_page = $config['http_home_url'] . "user/" . urlencode( $member_id['name'] ) . "/";
    } else {
$go_page = "$PHP_SELF?subaction=userinfo&amp;user=" . urlencode( $member_id['name'] );
            }

$go_page = "onclick=\"ShowProfile('" . urlencode( $member_id['name'] ) . "', '" . htmlspecialchars( $go_page ) . "'); return false;\"";

if( $config['allow_alt_url'] == "yes" ) $user = "<a {$go_page} href=\"" . $config['http_home_url'] . "user/" . urlencode( $member_id['name'] ) . "/\"><b><span style=\"color:".$color."\">" . $member_id['name'] . "</span></b></a>" ;
        else $user = "<a {$go_page} href=\"$PHP_SELF?subaction=userinfo&amp;user=" . urlencode( $member_id['name'] ) . "\"><b><span style=\"color:".$color."\">" . $member_id['name'] . "</span></b></a>";

$data_file_old = @file_get_contents( $file_name );

if ( !preg_match("<!-- UserID: ".$member_id['user_id']." -->",  $data_file_old )){

$data_file_new = fopen($file_name , "w+");
fwrite($data_file_new, "<!-- UserID: ".$member_id['user_id']." -->".$user.", ".$data_file_old);
fclose($data_file_new);

}

}

$data = @file_get_contents( $file_name ) ;

if($data == ""){
$data = "<center><b>Нет данных :(</b></center>";
}else{
$data = substr($data,0,strlen(trim($data))-1);
}

echo $data;

?>

 

Заранее благодарю!

 

 

 

 

 

 

 

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

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

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

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

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

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

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

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

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

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