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

Форум PHP

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

 

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

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

тема: Как научить дружить manager c пробелами ?
 
 автор: Toshka   (13.11.2005 в 14:38)   письмо автору
 
 

drw-rw-rw-
1
user
group
0
11 Jun 17:34
All_for_mobile_phone

drw-rw-rw-
1
user
group
0
11 Jun 17:33
ANTIVIRUS

drw-rw-rw-
1
user
group
0
11 Jun 17:34
Backup

Выводит все без проблем, но вот не дружит он с пробелами. -(

$dir = str_replace("%", "/", $dir);
если не ошибаюсь, это строка отвечает за вывод ...
ПОмогите плиз

   
 
 автор: DDK   (13.11.2005 в 16:00)   письмо автору
 
   для: Toshka   (13.11.2005 в 14:38)
 

Может быть стоит просто заменить нижние слеши на пробелы ? Если да, то ниже приведённого вами кода нужно добавить:

$dir = str_replace("_", " ", $dir);


А вообще, проблема не раскрыта вами до конца.

   
 
 автор: Toshka   (13.11.2005 в 18:16)   письмо автору
 
   для: DDK   (13.11.2005 в 16:00)
 

При выводе папок с фтп, например, Windows Update, выводит только до пробела, т.е. первое слово Windows. Как можно поправить ?

   
 
 автор: DDK   (13.11.2005 в 18:32)   письмо автору
 
   для: Toshka   (13.11.2005 в 18:16)
 

Давайтке вы уже расскажите полностью ситуацию, а ? Что, как и откуда берётся, как и откуда записывается... Нет, можете мне конечно оплатить хотя бы год обучения на курсах экстрасенсов... буду благодарен.
[поправлено модератором]

   
 
 автор: Toshka   (13.11.2005 в 18:38)   письмо автору
 
   для: DDK   (13.11.2005 в 18:32)
 



<?php 
  
// Устанавливаем соединение с FTP-сервером
  
require_once("config.php");
  
// Определяем тип операционной системы сервера
  // предоставляющего услуги FTP
  
$type ftp_systype($link);
  
// Если операционная система отличается от UNIX
  // прекращаем дальнейшую работу
  
if($type != "UNIX"puterror("К сожалению, на
      удалённом сервере операционная система не
      совеместимая с UNIX"
);
  
// Извлекаем из строки запроса значение директории
  
if(isset($_GET['dir']) && $_GET['dir'] != "%"$dir $_GET['dir'];
  else 
$dir "/";
  
$dir str_replace("%""/"$dir);
  
//$dir = str_replace("_", " ", $dir); 
  // Получаем все файлы корневого каталога
  // Дескриптор соединения $link получен в config.php
  
$file_list ftp_rawlist($link$dir);
  
// Закрываем соединение с FTP-сервером
  
ftp_close($link);
  
// Выводим текущую директорию
  //echo "<p class=help>Текущая папка - ftp://".$ftp_server.$dir."</p>";
  // Если текущий каталог не является кореневым,
  // выводим ссылку на один уровень вверх
  
if($dir != "/")
  {
    
// Удаяем из переменной $dir последюю директорию
    
$pos strrpos($dir'/');
    if(
$pos>0$dirup substr($dir0$pos);
    else 
$dirup "/";
    echo 
"<p style='margin: 0px; margin-bottom: 5px'><a href=index.php?dir=".str_replace('/''%'$dirup).">вверх</a></p>";
  }
  
// Выводим содержимое каталога
  // Формируем таблицу
  
echo "<table class=bodytable width=100% border=1 cellpadding=4 cellspacing=0 bordercolordark=white bordercolorlight=gray>
          <tr>
            <td class=headtable align=center>права доступа</td>
            <td class=headtable align=center>блоки</td>
            <td class=headtable align=center>группа</td>
            <td class=headtable align=center>пользователь</td>
            <td class=headtable align=center>размер, байты</td>
            <td class=headtable align=center>время создания</td>
            <td class=headtable>&nbsp;</td>
            <!--<td class=headtable align=center colspan=2>действия</td>-->
          </tr>"
;
  foreach(
$file_list as $file)
  {
    
// Разбиваем строку по пробельным символам
    
list($acc,
         
$bloks,
         
$group,
         
$user,
         
$size
         
$month
         
$day
         
$year
         
$file) = preg_split("/[\s]+/"$file);
    
// Если файл начинается с точки - игнорируем его
    
if(substr($file01) == '.') continue;
    
// Формируем ссылку на удаление файла
    
$delete "-";
    
$edit "-";
    
// Для формирования корректных ссылок в таблице
    // файлов перменной $dir добавляем /
    
if($dir != "/"$url str_replace('/''%25'$dir."/".$file);
    else 
$url str_replace('/'' '$dir.$file);
    
// Определяем является ли объект директорией
    
if(substr($acc01) == 'd')
    {
      
$file "<b><a href=index.php?dir=$url title='Открыть директорию'>$file</a></b>";
    }
    echo 
"<tr>
            <td align=center><p><code>
$acc</code></p></td>
            <td align=center><p><code>
$bloks</code></p></td>
            <td align=center><p><code>
$group</code></p></td>
            <td align=center><p><code>
$user</code></p></td>
            <td align=center><p><code>
$size</code></p></td>
            <td align=center><p><code>
$day&nbsp;&nbsp;$month&nbsp;&nbsp;$year</code></p></td>
            <td align=right><p><code>
$file</code></p></td>
            <!--<td align=center>
$delete</td>
            <td align=center>
$edit</td>-->
          </tr>"
;
  }
  echo 
"</table>";
?> 


Вот скрипт, который выводит информацию с ftp.
Вопрос в слудющем, как заставить скрипт уметь выводить название папок с пробелами.

   
 
 автор: DDK   (13.11.2005 в 19:00)   письмо автору
 
   для: Toshka   (13.11.2005 в 18:38)
 

Ответ на свой вопрос вы дали сами:

    // Разбиваем строку по пробельным символам 
    list($acc, 
         $bloks, 
         $group, 
         $user, 
         $size, 
         $month, 
         $day, 
         $year, 
         $file) = preg_split("/[\s]+/", $file); 

   
 
 автор: Toshka   (13.11.2005 в 19:34)   письмо автору
 
   для: DDK   (13.11.2005 в 19:00)
 

Эх, это конечно вывод информации которая меня интересует, но еще важнее, то, что хранится в $file - которая не умеет понимать пробелы.

   
 
 автор: DDK   (13.11.2005 в 20:37)   письмо автору
 
   для: Toshka   (13.11.2005 в 19:34)
 

Вот, замените вышеприведённый мною кусок кода на:

$file = "aa bb cc dd ee ff gg hh ii";
$resarr = explode(" ", $file); // Разбиваем строку по пробелам
list($acc, 
$bloks, 
$group, 
$user, 
$size, 
$month, 
$day, 
$year,
$file) = $resarr;
if(count($resarr) >= 10) {
for($i=9; $i < count($resarr); $i++) {
$file .= " ".$resarr[$i];
}}

   
Rambler's Top100
вверх

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