За последние 24 часа нас посетили 10526 программистов и 755 роботов. Сейчас ищет 181 программист ...

Ошибка при переходе на php 7

Тема в разделе "Прочие вопросы по PHP", создана пользователем kinlok, 10 апр 2017.

  1. kinlok

    kinlok Активный пользователь

    С нами с:
    18 мар 2017
    Сообщения:
    50
    Симпатии:
    0
    Здравствуйте памагите со шибкай вот сетой

    Fatal error: Uncaught DivisionByZeroError: Modulo by zero in core/modules/functions.php:167

    сам код
    PHP:
    1. function navigation($gc, $num, $type){
    2.     global $tpl, $page;
    3.  
    4.     $gcount = $gc;
    5.     $cnt = $num;
    6.     $items_count = $cnt;
    7.     $items_per_page = $gcount;
    8.     $page_refers_per_page = 5;
    9.     $pages = '';      
    10.     $pages_count = ( ( $items_count % $items_per_page != 0 ) ) ? floor( $items_count / $items_per_page ) + 1 : floor( $items_count / $items_per_page );
    11.     $start_page = ( $page - $page_refers_per_page <= 0  ) ? 1 : $page - $page_refers_per_page + 1;
    12.     $page_refers_per_page_count = ( ( $page - $page_refers_per_page < 0 ) ? $page : $page_refers_per_page ) + ( ( $page + $page_refers_per_page > $pages_count ) ? ( $pages_count - $page )  :  $page_refers_per_page - 1 );
    13.            
    14.     if($page > 1)
    15.         $pages .= '<a href="'.$type.($page-1).'" onClick="Page.Go(this.href); return false">&laquo;</a>';
    16.     else
    17.         $pages .= '';
    18.                
    19.     if ( $start_page > 1 ) {
    20.         $pages .= '<a href="'.$type.'1" onClick="Page.Go(this.href); return false">1</a>';
    21.         $pages .= '<a href="'.$type.( $start_page - 1 ).'" onClick="Page.Go(this.href); return false">...</a>';
    22.            
    23.     }
    24.                    
    25.     for ( $index = -1; ++$index <= $page_refers_per_page_count-1; ) {
    26.         if ( $index + $start_page == $page )
    27.             $pages .= '<span>' . ( $start_page + $index ) . '</span>';
    28.         else
    29.             $pages .= '<a href="'.$type.($start_page+$index).'" onClick="Page.Go(this.href); return false">'.($start_page+$index).'</a>';
    30.     }
    31.            
    32.     if ( $page + $page_refers_per_page <= $pages_count ) {
    33.         $pages .= '<a href="'.$type.( $start_page + $page_refers_per_page_count ).'" onClick="Page.Go(this.href); return false">...</a>';
    34.         $pages .= '<a href="'.$type.$pages_count.'" onClick="Page.Go(this.href); return false">'.$pages_count.'</a>';  
    35.     }
    36.                
    37.     $resif = $cnt/$gcount;
    38.     if(ceil($resif) == $page)
    39.         $pages .= '';
    40.     else
    41.         $pages .= '<a href="'.$type.($page+1).'" onClick="Page.Go(this.href); return false">&raquo;</a>';
    42.  
    43.     if ( $pages_count <= 1 )
    44.         $pages = '';
    45.  
    46.     $tpl_2 = new mozg_template();
    47.     $tpl_2->dir = TEMPLATE_DIR;
    48.     $tpl_2->load_template('nav.tpl');
    49.     $tpl_2->set('{pages}', $pages);
    50.     $tpl_2->compile('content');
    51.     $tpl_2->clear();
    52.     $tpl->result['content'] .= $tpl_2->result['content'];
    53. }
    54. function box_navigation($gc, $num, $id, $function, $act){
    55.     global $tpl, $page;
    56.     $gcount = $gc;
    57.     $cnt = $num;
    58.     $items_count = $cnt;
    59.     $items_per_page = $gcount;
    60.     $page_refers_per_page = 5;
    61.     $pages = '';      
    62.     $pages_count = ( ( $items_count % $items_per_page != 0 ) ) ? floor( $items_count / $items_per_page ) + 1 : floor( $items_count / $items_per_page );
    63.     $start_page = ( $page - $page_refers_per_page <= 0  ) ? 1 : $page - $page_refers_per_page + 1;
    64.     $page_refers_per_page_count = ( ( $page - $page_refers_per_page < 0 ) ? $page : $page_refers_per_page ) + ( ( $page + $page_refers_per_page > $pages_count ) ? ( $pages_count - $page )  :  $page_refers_per_page - 1 );
    65.    
    66.     if(!$act)
    67.         $act = "''";
    68.     else
    69.         $act = "'{$act}'";
    70.            
    71.     if($page > 1)
    72.         $pages .= '<a href="" onClick="'.$function.'('.$id.', '.($page-1).', '.$act.'); return false">&laquo;</a>';
    73.     else
    74.         $pages .= '';
    75.                
    76.     if ( $start_page > 1 ) {
    77.         $pages .= '<a href="" onClick="'.$function.'('.$id.', 1, '.$act.'); return false">1</a>';
    78.         $pages .= '<a href="" onClick="'.$function.'('.$id.', '.($start_page-1).', '.$act.'); return false">...</a>';
    79.            
    80.     }
    81.                    
    82.     for ( $index = -1; ++$index <= $page_refers_per_page_count-1; ) {
    83.         if ( $index + $start_page == $page )
    84.             $pages .= '<span>' . ( $start_page + $index ) . '</span>';
    85.         else
    86.             $pages .= '<a href="" onClick="'.$function.'('.$id.', '.($start_page+$index).', '.$act.'); return false">'.($start_page+$index).'</a>';
    87.     }
    88.            
    89.     if ( $page + $page_refers_per_page <= $pages_count ) {
    90.         $pages .= '<a href="" onClick="'.$function.'('.$id.', '.($start_page + $page_refers_per_page_count).', '.$act.'); return false">...</a>';
    91.         $pages .= '<a href="" onClick="'.$function.'('.$id.', '.$pages_count.', '.$act.'); return false">'.$pages_count.'</a>';  
    92.     }
    93.                
    94.     $resif = $cnt/$gcount;
    95.     if(ceil($resif) == $page)
    96.         $pages .= '';
    97.     else
    98.         $pages .= '<a href="/" onClick="'.$function.'('.$id.', '.($page+1).', '.$act.'); return false">&raquo;</a>';
    99.  
    100.     if ( $pages_count <= 1 )
    101.         $pages = '';
    102.  
    103.     $tpl_2 = new mozg_template();
    104.     $tpl_2->dir = TEMPLATE_DIR;
    105.     $tpl_2->load_template('nav.tpl');
    106.     $tpl_2->set('{pages}', $pages);
    107.     $tpl_2->compile('content');
    108.     $tpl_2->clear();
    109.     $tpl->result['content'] .= $tpl_2->result['content'];
    110. }
     
  2. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.164
    Симпатии:
    1.765
    Адрес:
    :сердА
    Ошибка в 167 строке, в приведенном листинге их всего 110.
    Ошибка переводится как "нельзя делить на ноль", и никак не связана с переходом PHP7.
    Вы б сообщения хотя бы в word загоняли на проверку на ошибки...
     
  3. kinlok

    kinlok Активный пользователь

    С нами с:
    18 мар 2017
    Сообщения:
    50
    Симпатии:
    0
    вапервых я знаю что эта за ошибка в 2 ана паевилась при переходе на php 7 3 я тему саздал для тавочтобы ее памагли решыть так как я в php не очень
     
  4. TeslaFeo

    TeslaFeo Старожил

    С нами с:
    9 мар 2016
    Сообщения:
    2.983
    Симпатии:
    748
    как ты такое сложное слово без ошибок написал? скопировал где-то? :)
     
    acho нравится это.
  5. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.635
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    @kinlok, ты иностранец?
    --- Добавлено ---
    @kinlok, дело в том что, ругается на 167 строчку кода, а в твоем листинге всего строчек 110. Значит ты привел другой код, или же не весь показываешь нам.
     
  6. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.501
    Симпатии:
    599
    @kinlok ты хотя бы покажи, какая строка в твоем коде - 167.
     
  7. kinlok

    kinlok Активный пользователь

    С нами с:
    18 мар 2017
    Сообщения:
    50
    Симпатии:
    0
    $pages_count = ( ( $items_count % $items_per_page != 0 ) ) ? floor( $items_count / $items_per_page ) + 1 : floor( $items_count / $items_per_page );
    --- Добавлено ---
    [​IMG]
    вот сам файл где ошибка
     

    Вложения:

    • functions.zip
      Размер файла:
      8,9 КБ
      Просмотров:
      4
  8. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.244
    Симпатии:
    1.716
    Адрес:
    Молдова, г.Кишинёв
    @kinlok ты новый владелец вконтакте? :eek:
     
  9. TeslaFeo

    TeslaFeo Старожил

    С нами с:
    9 мар 2016
    Сообщения:
    2.983
    Симпатии:
    748
    новый владелец фишингового сайта.
    На это еще кто-то ведется? Так разводили еще лет 10 назад.
     
  10. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.501
    Симпатии:
    599
    @kinlok ты издеваешься? :D
     

    Вложения:

    • 167.PNG
      167.PNG
      Размер файла:
      15,8 КБ
      Просмотров:
      14
  11. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.635
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    Я так же подумал, когда скопипастил его код.:D
     
  12. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.244
    Симпатии:
    1.716
    Адрес:
    Молдова, г.Кишинёв
    ну соответствие не 100% может свою социальную сеть делает

    @kinlok что ты за сайт делаешь и для чего?
     
  13. kinlok

    kinlok Активный пользователь

    С нами с:
    18 мар 2017
    Сообщения:
    50
    Симпатии:
    0
    нет канечно эта движок соц сети vii engine наверна не слышали онем ну пакрайне мере он наберал папулярности в 2013 и 2012 году нанем очень многа кто делал соц сети
    --- Добавлено ---
    вапервых это не фишонговый сайт и фишинги уже не катят
    --- Добавлено ---
    нет
    вот иза этава кода
    PHP:
    1. $pages_count = ( ( $items_count % $items_per_page != 0 ) ) ? floor( $items_count / $items_per_page ) + 1 : floor( $items_count / $items_per_page );
     
    #13 kinlok, 11 апр 2017
    Последнее редактирование модератором: 11 апр 2017
  14. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.501
    Симпатии:
    599
    @kinlok ну вот нужно искать значит, где вызывается функция navigation() и почему в неё первым аргументом передается 0.
     
  15. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.164
    Симпатии:
    1.765
    Адрес:
    :сердА
    Автор, у тебя по каким-то причинам переменная
    бывает равна нулю. В предыдущих версиях php, возможно, это был ворнинг, а сейчас - фатальная ошибка. Как-то сам не сталкивался ни разу с делением на ноль.
     
    denis01 и [vs] нравится это.
  16. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    7.960
    Симпатии:
    1.575
    Забавный способ считать количество страниц. Чувак, помимо floor есть ещё ceil, и тогда тебя не будет беспокоить, делится количество элементов на количество элементов на страницу, или не делится. А почему у тебя в $items_per_page попадает 0 - это уже сам разберись.