Как да направя така, че да не показва index.php ?

farzy

Registered
Здравейте! Видях този код в един урок, та да ви питам, може ли да стане така, че да не се вижда файла index.php или каквито и да било .php файлове?

Код:
<?php 

 $dir = "files/"; // Избираме директорията, от която ще индексираме файловете 
 if(!is_dir($dir)) 
 { 
 mkdir($dir); // Проверяваме дали директорията съществува, ако не я създаваме 
 } 
 $dh = opendir($dir); // Подготвяме за четене (отваряме) директорията 
 print "<h3>Индекс на $dir</h3><table width=\"90%\" align=\"center\" border=\"1\"><tr><td style=\"text-align:center\">ИМЕ НА ФАЙЛА:</td></tr>"; 
 while($file = readdir($dh)) // Четем файловете от директорията (този цикъл помага да индексираме всички файлове) 
 { 
 if($file != "." and $file != "..") // Не индексираме "." и ".." 
 { 
 $lower = strtolower($file); 
 if(!eregi(".ht",$file)) // Така можете да не индексирате дадени файлове 
 { 
 print "<tr><td><a href=\"$dir$file\">$file</a></td></tr>"; // Когато поставяте линк не забравяйте да добавите и променливата $dir 
 } 
 } 
 } 
 print "</table>"; 

 ?>
 
PHP:
	 <?php 

 $dir = "files/"; // Избираме директорията, от която ще индексираме файловете 
 if(!is_dir($dir)) 
 { 
 mkdir($dir); // Проверяваме дали директорията съществува, ако не я създаваме 
 } 
 $dh = opendir($dir); // Подготвяме за четене (отваряме) директорията 
 print "<h3>Индекс на $dir</h3><table width=\"90%\" align=\"center\" border=\"1\"><tr><td style=\"text-align:center\">ИМЕ НА ФАЙЛА:</td></tr>"; 
 while($file = readdir($dh)) // Четем файловете от директорията (този цикъл помага да индексираме всички файлове) 
 { 
 if($file != "." and $file != ".."[b] and !preg_match('index.php',$file)[/b]) // Не индексираме "." и ".." 
 { 
 $lower = strtolower($file); 
 if(!eregi(".ht",$file)) // Така можете да не индексирате дадени файлове 
 { 
 print "<tr><td><a href=\"$dir$file\">$file</a></td></tr>"; // Когато поставяте линк не забравяйте да добавите и променливата $dir 
 } 
 } 
 } 
 print "</table>"; 

 ?>
 
Код:
Warning: preg_match() [function.preg-match]: Delimiter must not be alphanumeric or backslash in /home/farzy/public_html/files.php on line 18
 
PHP:
   <?php 

 $dir = "files/"; // Избираме директорията, от която ще индексираме файловете 
 if(!is_dir($dir)) 
 { 
 mkdir($dir); // Проверяваме дали директорията съществува, ако не я създаваме 
 } 
 $dh = opendir($dir); // Подготвяме за четене (отваряме) директорията 
 print "<h3>Индекс на $dir</h3><table width=\"90%\" align=\"center\" border=\"1\"><tr><td style=\"text-align:center\">ИМЕ НА ФАЙЛА:</td></tr>"; 
 while($file = readdir($dh)) // Четем файловете от директорията (този цикъл помага да индексираме всички файлове) 
 { 
 if($file != "." and $file != ".." and !preg_match('/index.php/i',$file)) // Не индексираме "." и ".." 
 { 
 $lower = strtolower($file); 
 if(!eregi(".ht",$file)) // Така можете да не индексирате дадени файлове 
 { 
 print "<tr><td><a href=\"$dir$file\">$file</a></td></tr>"; // Когато поставяте линк не забравяйте да добавите и променливата $dir 
 } 
 } 
 } 
 print "</table>"; 

 ?>
Моя грешка! :roll:
 

Back
Горе