Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Некорректный параметр в функции file()!
 
 автор: EvgenLog   (25.08.2006 в 00:09)   письмо автору
 
 

Уважаемые професионалы! Я уже просто офигел от этих ошибок выскакивающих внезапно и из неоткуда! Вот и сейас, функция file внезано стала выдавать ошибку:
Warning: file(./index/about.php ): failed to open stream: Invalid argument in :\home\rsppko.ru\www\content\toppan.php on line 35

Всё работало хорошо, а потом БАЦ!!! Блин, не понимаю! С чего вдруг? Ведь выше в коде стоит точно такая же конструкция и всё работает! Вот код:

$base_file="base.ini";
                  $open_base=file("./index/".$base_file."");

                  for($s=0; $s < count($open_base); $s++)
                      {
                            $file_name="".$open_base[$s]."";
                            $file=file("./index/".$file_name."");
                            $num=0;
                            $results=0;

                            for($i=1; $i < count($file); $i++)
                                {
                                      if(stristr($file[$i], "".$str.""))
                                         {
                                                        $get_pos=strpos($file[$i], "".$str."");
                                                        $show_text=substr($file[$i], $get_pos-100, 200);
                                                        $results++;
                                                        $num++;

                                                        if($num==1)
                                                           {
                                                                 echo ("<br><div class='contentTxt'><b>".$num.".</b>&nbsp;<a href='http://www.rsppko.ru/content/".$file['0']."'>".$file['1']."</a>");
                                                                 echo ("...".$show_text."...");
                                                           }
                                         }
                                }
                            if($num > 0)
                               {
                                      echo("<br>");
                                      echo ("Найдено совпадений:".$results."");
                               }
                      }
                  if($num==0)
                     {
                           echo ("<div class='contentTxt'>По вашему запросу ничего не найдено.</div>");
                     }

Как вы уже поняли, это скрипт поисковика... Спрошу сразу ещё кое-что... Нужно в результатах выводить отрывок текста, в котором содержаться найденные слова, а также как-то их выделять. ТАк же нужно, чтобы поиск осуществлялся не строго в соответсвии с запросом, а выводил все слова согласующиеся с запросом (например если искать "конкуренция", то должно выводиться и "конкурирующий" и "конкурент" и вся фигня, которая на это похожа. Или хотябы при том же запросе - был показан отрывок со словом "конкуренции") Сейчас этого не происходит... Оба вопроса в данный момент очень выжны, жду помощи! Заранее спасибо!

   
 
 автор: DEM   (25.08.2006 в 01:38)   письмо автору
 
   для: EvgenLog   (25.08.2006 в 00:09)
 

А зачем тут еще указывать что папку ИНДЕКС надо брать из каталога в которой находится файл со скриптом?

<?
$open_base
=file("./index/".$base_file.""); 
?>


Мне кажется так будет более правильно

<?
$open_base
=file("index/".$base_file.""); 
?>


Да и тем более, не могли бы вы показать имено эту 35 строчку? И еще, зачем ставить два раза двойные кавычки ( ""), вы ведь там не пишите, ни пробелов, ни слов, ни тегов

   
 
 автор: EvgenLog   (25.08.2006 в 04:22)   письмо автору
 
   для: DEM   (25.08.2006 в 01:38)
 

Это и есть 35 строчка, где написано $open_base=file("index/".$file_name.""); Попробую сделать, как сказали, но не думаю, что получится... Ведь раньше и так работало... Есть ещё варианты?

   
 
 автор: ec_stasis   (25.08.2006 в 10:18)   письмо автору
 
   для: DEM   (25.08.2006 в 01:38)
 

Это одно и тоже...

   
 
 автор: ec_stasis   (25.08.2006 в 10:22)   письмо автору
 
   для: EvgenLog   (25.08.2006 в 00:09)
 

А сам файл там точно есть? и директория?

   
 
 автор: EvgenLog   (25.08.2006 в 10:49)   письмо автору
 
   для: ec_stasis   (25.08.2006 в 10:22)
 

Ну кончно есть! Я уже всё проверил! Неужели так никто и не даст вразумительного ответа?

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования