Forum Webscript.Ru
		Программирование => PHP => Тема начата: ferryman от 27 Марта 2006, 15:47:21
		
			
			- 
				Пишу код:
 
 
 
 
 $dir = (isset($_GET[\'dir\']) && $_GET[\'dir\'] != "%")?$dir = $_GET[\'dir\']:$dir = "/";
 $dir = str_replace("%", "/", $dir);
 
 $dirraw = ftp_rawlist($connect,$dir);
 
 for($i=0; $i          $array = preg_split("/[\\s]+/", $dirraw[$i]);
 
 $link_name = $array[8];
 
 $url = ($dir != "/")?str_replace(\'/\', \'%25\', $dir."/".$link_name):str_replace(\'/\', \'%25\', $dir.$link_name);
 
 if(substr($array[0], 0, 1) == \'d\'){
 $link = \'\'.$link_name.\'\';
 $name = \'Каталог\';
 }else{
 $link = \'\'.$link_name.\'\';
 $name = \'Файл\';
 }
 }
 
 
 
 Когда в названии директории или в названии файла встречается пробел скрипт выводит только то что до пробела. Как исправить енто?
- 
				А почему \'/\' заменяется на %25, а пробел на %20 — нет?
 [p]urlencode[/p]
- 
				ferryman:
 $url = ($dir != "/")?str_replace(\'/\', \'%25\', $dir."/".$link_name):str_replace
 
 
 $url = ($dir != "/")?str_replace(\'/\', \'\', $dir."/".$link_name):str_replace
- 
				Да не в этом дело как я формирую ссылки - дело в том что имена каталогов и файлов с пробелами обрезает
 
 напр. dir name выводит dir до пробела
- 
				В принципе траблу нашел 
 
 
 $array = preg_split("/[\\s]+/", $dirraw[$i]);
 
 $link_name = $array[8]." ".$array[9]." ".$array[10]." ".$array[11]." ".$array[12]." ".$array[13];
 
 Тоесть, чтото надо придумать...