На этом месте находится расчудесная шапка. Включите flash - не пожалеете!

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Ищу ошибку в функции
php4beginner
сообщение 19.4.2008, 21:40
Сообщение #1


Только зарегистрировавшийся


Группа: Пользователи
Сообщений: 2
Регистрация: 19.4.2008

Пользователь №: 13 582



Репутация:   0  


Я подозреваю, что в данных функциях у меня ошибка:

Код
function getAllTemplates( )
   {
      global $smarty;
      global $config;
      $path = $config['smarty']['templatedir']."themes/";


              if ( is_dir( $path ) )
      {
         $alltemplates = array( );

         if ( $handle = opendir( $path ) )
         {

            while ( false !== ( $file = readdir( $handle ) ) )
            {

               if ( !( $file != "." && $file != ".." ) && !is_dir( $path.$file ) )

               {
                  if ( is_file( $path.$file."/description.mod.php" ) )
                  {
                     include( $path.$file."/description.mod.php" );
                     if ( isset( $tpl_caption ) )
                     {
                        $template['name'] = $tpl_caption;

                     }
                     else
                     {
                        $template['name'] = $file;

                     }
                  }
                  else
                  {
                     $template['name'] = $file;
                  }
                  $template['id'] = noslash( $file );



                  if ( is_dir( $path.$template['id']."/site" ) )
                  {
                     $alltemplates[] = $template;

                  }
               }
            }
            closedir( $handle );
         }
         return $alltemplates;

      }
      else
      {
         return false;
      }
   }








и здесь

Код
function checkrobolink( $link, &$description )
   {
      $action = array( );
      $find = false;
      $description = "";
      
      for ($j=0;$j <= 11;$j++)
      {
         $action[$j] = "";
      }
      if ( $this->settings['levelsites'] <= getleveldomain( $link['url'] ) )
      {
         $find = true;
         $description = "Не соответствует уровень домена;<br>";
         $action[$this->settings['d_level']] .= "Не соответствует уровень домена;<br>";
      }
      if ( $this->checkrobotstxt( $link['backurl'] ) )
      {
         $find = true;
         $description = "Запрет в robots.txt;<br>";
         $action[$this->settings['d_robots']] .= "Запрет в robots.txt;<br>";
      }
      if ( !$this->checkfilterssize( $link['description'], $this->settings['goodslist'], $this->settings['goodsvalue'] ) )
      {
         $find = true;
         $description = "В кратком описании нет обяз. слов;<br>";
         $action[$this->settings['d_obyaz']] .= "В кратком описании нет обяз. слов;<br>";
      }
      if ( !$this->checkfilterssize( $link['longdescription'], $this->settings['goodslist'], $this->settings['goodsvalue'] ) )
      {
         $find = true;
         $action[$this->settings['d_obyaz']] .= "В расширенном описании нет обяз. слов;<br>";
      }
      if ( $this->settings['robolength'] )
      {
         $result = $this->checkdescriptions( $link['description'], $link['longdescription'], $this->settings['minlenmin'], $this->settings['maxlenmin'], $this->settings['minlenmax'], $this->settings['maxlenmax'] );
         if ( $result != 0 )
         {
            $find = true;
            if ( $result == 1 )
            {
               $description = "Краткое описание не удовлетворяет условиям по длине; ";
            }
            else
            {
               $description = "Полное описание не удовлетворяет условиям по длине; ";
            }
            $action[$this->settings['d_opis']] .= $description."<br>";
         }
      }
      if ( $this->settings['robodots'] )
      {
         if ( $this->countobjects( ".", $link['description'] ) < $this->settings['dots'] )
         {
            $find = true;
            $description = "Неверное количество точек в кратком описании; ";
            $action[$this->settings['d_opis']] .= $description."<br>";
         }
         if ( $this->countobjects( ".", $link['longdescription'] ) < $this->settings['dots_max'] )
         {
            $find = true;
            $description = "Неверное количество точек в расширенном описании; ";
            $action[$this->settings['d_opis']] .= $description."<br>";
         }
      }
      if ( $this->settings['robozap'] )
      {
         if ( $this->countobjects( ",", $link['description'] ) < $this->settings['zapyats'] )
         {
            $find = true;
            $description = "Неверное количество запятых в кратком описании; ";
            $action[$this->settings['d_opis']] .= $description."<br>";
         }
         if ( $this->countobjects( ",", $link['longdescription'] ) < $this->settings['zapyats_max'] )
         {
            $find = true;
            $description = "Неверное количество запятых в расширенном описании; ";
            $action[$this->settings['d_opis']] .= $description."<br>";
         }
      }
      if ( $this->checkfilters( $link['title'], $this->settings['filters'] ) )
      {
         $find = true;
         $description = "В названии запрещенные слова; ";
         $action[$this->settings['d_filterword']] .= $description."<br>";
      }
      if ( $this->checkfilters( $link['description'], $this->settings['filters'] ) )
      {
         $find = true;
         $description = "В кратком описании запрещенные слова; ";
         $action[$this->settings['d_filterword']] .= $description."<br>";
      }
      if ( $this->checkfilters( $link['longdescription'], $this->settings['filters'] ) )
      {
         $find = true;
         $description = "В расширенном описании запрещенные слова; ";
         $action[$this->settings['d_filterword']] .= $description."<br>";
      }
      if ( $this->checkfiltersurl( converthost( $link['url'] ), $this->settings['filters_url'] ) )
      {
         $find = true;
         $description = "Запрещенный url; ";
         $action[$this->settings['d_filterurl']] .= $description."<br>";
      }
      if ( $this->settings['controlwords'] )
      {
         $percent = $this->controlwords( $link['description'], $link['longdescription'] );
         if ( $this->settings['control_percent'] < $percent )
         {
            $find = true;
            $description = "Описания слишком схожи; ";
            $action[$this->settings['d_odinak']] .= $description."<br>";
         }
      }
      if ( $link['pay'] == 1 )
      {
         $find = true;
         $description = "Ссылка оплачена; ";
         $action[$this->settings['d_opl']] .= $description."<br>";
      }
      else
      {
         $find = true;
         $description = "Ссылка не оплачена; ";
         $action[$this->settings['d_not_opl']] .= $description."<br>";
      }
      if ( $link['new'] )
      {
         $find = true;
         $description = "Новая ссылка; ";
         $action[$this->settings['d_new']] .= $description."<br>";
      }
      if ( !$this->checkbackurl( $link['backurl'], $link['backhref'], false ) )
      {
         $find = true;
         $description = "Не найдена обратная ссылка; ";
         $action[$this->settings['d_notbackurl']] .= $description."<br>";
      }
      else
      {
         if ( !$link['has_backurl'] )
         {
            $find = true;
            $description = "Найдена обратная ссылка; ";
            $action[$this->settings['d_hasbackurl']] .= $description."<br>";
         }
         $pos = strpos( $link['backurl'], $link['url'] );
         if ( $pos === false )
         {
            $find = true;
            $description = "Обратная ссылка на другом домене; ";
            $action[$this->settings['d_otherdomen']] .= $description."<br>";
         }
      }
      unset( $action[0] );
      $j = 1;
      for (;   $j <= 11;   ++$j   )
      {
         if ( empty( $action[$j] ) )
         {
            unset( $action[$j] );
         }
      }
      if ( sizeof( $action ) == 0 )
      {
         $find = false;
      }
      if ( $find )
      {
         return $action;
      }
      else if ( $link['robocheck'] || $link['new'] )
      {
         $description = "Ссылка стала удовлетворять условиям; ";
         if ( isset( $action[$this->settings['d_allgood']] ) )
         {
            @$action[$this->settings['d_allgood']] .= $description;
         }
         else
         {
            @$action[$this->settings['d_allgood']] = $description;
         }
         return $action;
      }
      else
      {
         @$action[$this->settings['d_allgood']] = "Ссылка удовлетворяет условиям";
         return $action;
      }
   }


--------------------
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
liw
сообщение 21.4.2008, 18:52
Сообщение #2


Житель
***

Группа: Модераторы
Сообщений: 283
Регистрация: 2.11.2007

Пользователь №: 6 760



Репутация:   20  


А я подозреваю что вам лень было даже описать то чего вы хотите.

И ещё я подозреваю что в этом куске вырванном из контекста врядли кто то будет разбираться.

И последнее, но уже не подозрение: если вы хотите что бы вам как то помогли, потрудитесь объяснить чего вы хотите (что должна делать функция, что делает, и что вас в ней не устраивает)
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия Сейчас: 25.7.2008, 22:44
Rambler's Top100 Яндекс цитирования