1. Задавайте здесь вопросы о коде, которые не подходят в другие разделы, такие как:
    Дизайн > Верстка
    PHP > Как сделать на PHP
    Скрыть объявление

ошибка */classes/parse.class.php

Тема в разделе "Web Coding", создана пользователем index111, 16 янв 2008.

Статус темы:
Закрыта.
Модераторы: latteo
  1. index111

    index111

    Регистр.:
    21 окт 2007
    Сообщения:
    533
    Симпатии:
    77
    при добавлений новости пишет
    Warning: Invalid argument supplied for foreach() in /home/vlvlvl/public_html/engine/classes/parse.class.php on line 814 Warning: Invalid argument supplied for foreach() in /home/vlvlvl/public_html/engine/classes/parse.class.php on line 814 но при этом...новость добавляется
    вот кусок от строки 814
    PHP:
            if (strpos($txt"alt=\"") !== false) {

                
    $alt preg_replace"#(.+?)alt=\"(.+?)\"(.*)#is""\\2"$txt );
            }

            if (
    $align != "left" AND $align != "right"$align false;

            if (!
    $align AND !$alt) return "[thumb]".$url."[/thumb]";

            if (
    $align$extra $align;
            if (
    $alt)     $extra .= "|".$alt;

            return 
    "[thumb=".$extra."]".$url."[/thumb]";

        }

        function 
    decode_img $img$txt )
        {
            
    $txt stripslashes($txt);
            
    $align false;
            
    $alt false;
            
    $extra "";

            if (
    strpos($txt"align=\"") !== false) {

                
    $align preg_replace"#(.+?)align=\"(.+?)\"(.*)#is""\\2"$txt );
            }
    при редактирований комента

    ошибкаWarning: Invalid argument supplied for foreach() in /home/vlvlvl/public_html/engine/classes/parse.class.php on line 838
    код
    PHP:
                }


                    
    $source preg_split('((>)|(<))'$source, -1PREG_SPLIT_DELIM_CAPTURE);
                    
    $count count($source);

                    for (
    $i 0$i $count$i++) {
                        if (
    $source[$i] == "<" OR $source[$i] == "[") {
                            
    $i++; continue;
                        }
                        if ( 
    $source[$i] != "" )    $source[$i] = preg_replace($find$replace$source[$i]);
                    }

                    
    $source join(""$source);

            } elseif (
    count($all_words) AND !$encode) {

                foreach(
    $all_words as $word_line)
                {
                    
    $word_arr explode("|"$word_line);

                    if (
    $word_arr[2] != "") {
                        
    $find[] = $word_arr[2];
    :bc:
     
  2. Jeurey

    Jeurey

    Регистр.:
    13 сен 2006
    Сообщения:
    419
    Симпатии:
    576
    1. Не увидел функции foreach в первом куске кода
    2. Оберни foreach в условие размерности массива. Например - вот так:
    сделай из
    PHP:
    $array = array();
    //// тут куча кода
    foreach($array as $value)
    // код
    }
    Вот это
    PHP:
    $array = array();
    //// тут куча кода
    if(sizeof($array))
    {
      foreach(
    $array as $value)
      { 
    // код
      
    }
    }
    В твоем примере я не вижу окончания цикла foreach - поэтому не могу сказать как должно это выглядеть в итоге ;)
     
    index111 нравится это.
  3. index111

    index111

    Регистр.:
    21 окт 2007
    Сообщения:
    533
    Симпатии:
    77
    если не сложно может лучше выложит ктонибудь... .рнр целый ?а то немогу лодом подправить код, до этого норм работал косяков не замечал
     
Статус темы:
Закрыта.