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

Разное

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

 

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

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

тема: Книга "РНР практика создания Web-сайтов" Кузнецов М.В., Симдянов И.В. - изучение, заметки и применение данных знаний в своих проектах.
 
 автор: muravey   (29.12.2010 в 10:10)   письмо автору
 
 

Доброго всем времени суток!

Обращаюсь ко всем кто читает или читал книгу "РНР практика создания Web-сайтов" Кузнецов М.В., Симдянов И.В.

Книга произвела на меня огромное впечатление. Открываю тему на обсуждение по книге. И хотелось бы чтобы общение было с теми кто читает или читал книгу.

Спасибо за понимание.

  Ответить  
 
 автор: cheops   (29.12.2010 в 10:17)   письмо автору
 
   для: muravey   (29.12.2010 в 10:10)
 

Возможно вам будут также интересны темы по ссылкам
http://softtime.ru/forum/read.php?id_forum=1&id_theme=2433
http://softtime.ru/forum/read.php?id_forum=2&id_theme=51896
Другие темы, посвященные книге

  Ответить  
 
 автор: muravey   (29.12.2010 в 10:23)   письмо автору
 
   для: muravey   (29.12.2010 в 10:10)
 

Начну с того, на что я натыкался при чтении, это некоторые моменты в листингах.

Листинг 1.24.
(в книге код написан так)

<?php
 
class minmax
 
{
     private function 
__call($method$arg)
     {
         if (!
is_array($arg))
         {
             return 
false;
         }
         
$value $arr[0];
         if (
$method == "min")
         {
             for (
$i=0$i count($arg); $i++)
             {
                 if (
$agr[$i] < $value$value $agr[$i];
             }
         }
         if (
$method == "max")
         {
             for (
$i=0$i count($arg); $i++)
             {
                 if (
$agr[$i] > $value$value $agr[$i];
             }
         }
         return 
$value;
     }
 }
?>


Сначала я не заметил ошибки, набрал код запустил и код работал не корректно. Я значит пригледелся в него и нашел в нем несколко переменных $arr, $arg, $agr. Переименовал все переменные в $arr и все заработало.

Какой я молодец, подумал я тогда. И еще я подумал, может авторы специально делают ошибки чтобы читатель не тупо копировал листенги, а еще разбирал их строчку за строчкой. И мне понравилась эта мысль, с тех пор сам набираю код и разбираю каждую строчку. Так даже лучше усваивается. :)))

Продолжение следует...

  Ответить  
 
 автор: muravey   (29.12.2010 в 10:48)   письмо автору
 
   для: muravey   (29.12.2010 в 10:23)
 

И такой подход мне помогал в дальнейшем изучении книги.

Когда я дошол до класса form (в книге from стр.392), в коде класса ошибка:

...
public function print_form()
    {
        $enctype = "";
        if (!empty($this->fields))
        {
            foreach ($this->fields as $obj)
            {
                //назначаем всем эл упр единый стиль
                if (!empty($this->css_fld_class))
                {
                    $obj->css_class = $this->css_fld_class;
                }
                if (!empty($this->css_fld_class)) нужно $this->css_fld_style
                {
                    $obj->css_style = $this->css_fld_style;
                }
                //проверяем нет ли среди эл упр поля file
                if ($obj->type == "file")
                {
                    $enctype = "enctype=\"multipart/form-data\"";
                }
            }
        }
...


будте внимательны...

  Ответить  
 
 автор: muravey   (29.12.2010 в 11:04)   письмо автору
 
   для: muravey   (29.12.2010 в 10:48)
 

Дальше еще интересней, авторы молодцы, что заставляют читателя думать и разбираться в коде...

Дошол до расширенной регистрации пользователей.
создаю класс

... 
$pass_again = new field_text_password ("pass_again", 
            "Повтор пароля", 
            true, 
            $_POST['pass_again']); 
... 

и т.д. как в книге.
Но браузер выдает исключительную ситуацию:
...
Произошла исключительная ситуация (ExceptionMember) - попытка обращения к несуществующему члену класса field. Член field::value не существует.

Ошибка в файле Z:\home\localhost\www\muraveynik\class\class.field.php в строке 48.
...

Дальше ищу в чем ошибка и смотрю HTML код в браузере:

... 
<td  class="field" valign=top><input   
                    type="password" 
                    name="passiagain" 
                    value="" 
                    size=41 maxlength=255> 
 </td> 
... 

И вижу что name="passiagain", а не name="pass_again". Странно?
Но если меняю pass_again на pass2 то все работает. Почему так?

Спасибо Ирбису, ответ:
Откройте файл /class/class.field.php
В конструкторе:

<?php 
$this
->name $this->encodestring($name); 
?>


Определение метода encodestring()

<?php 
protected function encodestring($st

  
// Сначала заменяем "односимвольные" фонемы. 
  
$st=strtr($st,"абвгдеёзийклмнопрстуфхъыэ_"
  
"abvgdeeziyklmnoprstufh'iei"); 
  
$st=strtr($st,"АБВГДЕЁЗИЙКЛМНОПРСТУФХЪЫЭ_"
  
"ABVGDEEZIYKLMNOPRSTUFH'IEI"); 
  
// Затем - "многосимвольные". 
  
$st=strtr($st,  
                    array( 
                          
"ж"=>"zh""ц"=>"ts""ч"=>"ch""ш"=>"sh",  
                          
"щ"=>"shch","ь"=>"""ю"=>"yu""я"=>"ya"
                          
"Ж"=>"ZH""Ц"=>"TS""Ч"=>"CH""Ш"=>"SH",  
                          
"Щ"=>"SHCH","Ь"=>"""Ю"=>"YU""Я"=>"YA"
                          
"ї"=>"i""Ї"=>"Yi""є"=>"ie""Є"=>"Ye" 
                          

                 ); 
  
// Возвращаем результат. 
  
return $st

?> 


Обратите внимание на этот участок кода:

<?php 
$st
=strtr($st,"абвгдеёзийклмнопрстуфхъыэ_"
"abvgdeeziyklmnoprstufh'iei"); 
$st=strtr($st,"АБВГДЕЁЗИЙКЛМНОПРСТУФХЪЫЭ_"
"ABVGDEEZIYKLMNOPRSTUFH'IEI"); 
?> 

Как видно, нижнее подчеркивание заменяется на i

Измените этот участок кода таким образом, чтобы нижнее подчёркивание ничем на заменялось(в нём нет ничего опасного):

<?php 
$st
=strtr($st,"абвгдеёзийклмнопрстуфхъыэ"
"abvgdeeziyklmnoprstufh'ie"); 
$st=strtr($st,"АБВГДЕЁЗИЙКЛМНОПРСТУФХЪЫЭ"
"ABVGDEEZIYKLMNOPRSTUFH'IE"); 
?> 


Все изменил и заработало...

  Ответить  
 
 автор: muravey   (29.12.2010 в 11:20)   письмо автору
 
   для: muravey   (29.12.2010 в 11:04)
 

Дошел до расширенной регистрации пользователей (Л.6.23.)

... 
//проверка эл. ящ. 
$query = "SELECT COUNT(*) FROM system_accounts 
    WHERE email = '{$form->fields[email]->value}'"; 
$mal = mysql_query($query); 
if (!$mal) 

throw new ExceptionMySQL(mysql_error(), 
        $query, 
        "Ошибка регистрации пользователя!"); 

if (mysql_result($mal, 0)) 

$error[] = "Пользователь с электронным адресом 
    {$form->fields[email]->value} уже зарегистрирован!"; 

... 



Почему когда оставляю все поля пустыми и нажимаю на кнопку Добавить выдает, что пользователь с таким емайлом есть. Тоже самое выдает когда в поле E-mail набираю различный текст.

Вариант1

Поле "Имя" не заполнено! 
Поле "Пароль" не заполнено! 
Поле "Повтор пароля" не заполнено! 
Введите e-mail в виде admin@mail.ru 
Пользователь с электронным адресом уже зарегистрирован! 



Вариант2

Поле "Имя" не заполнено! 
Поле "Пароль" не заполнено! 
Поле "Повтор пароля" не заполнено! 
Введите e-mail в виде admin@mail.ru 
Пользователь с электронным адресом ййййй уже зарегистрирован!


Сам нашел ошибку...
опечатка...

В книге так

class field_textarea extends field 

    protected $cols; 
    protected $rows; 
    protected $disabled; 
    protected $readonly; 
    protected $wrap; 

    //конструктор класса 
     function __construct($name, 
                         $caption, 
                         $id_required = false, 
                         $value = "", 
                         $cols = 35, 
                         $rows = 7, 
                         $disabled = false, 
                         $readonly = false, 
                         $wrap = false, 
                         $parameters = "", 
                         $help = "", 
                         $help_url = "") 
     { 
         parent::__construct($name, 
                         "textarea", 
                         $caption, 
                         $id_required, 
                         $value, 
                         $parameters, 
                         $help, 
                         $help_url); 

         $this->cols = $cols; 
         $this->rows = $rows; 
         $this->disabled = $disabled; 
         $this->readonly = $readonly; 
         $this->wrap = $wrap; 
     } 
...
if ($this->is_required) $this->caption .= " *";
...


нуно исправить $id_required на $is_required
и заработало...

  Ответить  
 
 автор: elenaki   (29.12.2010 в 10:50)   письмо автору
 
   для: muravey   (29.12.2010 в 10:23)
 

я не заметил ошибки, набрал код
....
с тех пор сам набираю код

====================================
сначала сам, а потом сам. нелогично как-то.

  Ответить  
 
 автор: muravey   (29.12.2010 в 11:08)   письмо автору
 
   для: elenaki   (29.12.2010 в 10:50)
 

Я с вами согласен, что не логично. Вы правы!

И что дальше, может что нибудь по теме скажите или будем говорить что логично, а что нет.

Так то и в книгах в 1000000 тиражами опечатки есть...

Спасибо что поправили!

  Ответить  
 
 автор: Ирбис   (29.12.2010 в 12:02)   письмо автору
 
   для: muravey   (29.12.2010 в 11:08)
 

Да, ошибки в книге есть. На те грабли, что вы описали, думаю, все внимательные читатели наступали.

Как вы правильно написали в одном из первых постов - весь код нужно обязательно разбирать по косточкам, т.к. ошибки присутстуют. Если нашли - исправляйте.

Собственно тема создана с какой целью? Хотите выявить все ошибки из книги или хотите пообсуждать её: актуальность подхода изложенного в книге сегодня, его плюсы и минусы?

  Ответить  
 
 автор: muravey   (30.12.2010 в 22:09)   письмо автору
 
   для: Ирбис   (29.12.2010 в 12:02)
 

Как в теме написано

...изучение, заметки и применение данных знаний в своих проектах...

можно и

... актуальность подхода изложенного в книге сегодня, его плюсы и минусы ...

если что то свое есть интересное, то пишите... но только то что относиться к этой книге...

  Ответить  
 
 автор: muravey   (10.01.2011 в 20:40)   письмо автору
 
   для: Ирбис   (29.12.2010 в 12:02)
 

Не могу разобраться...

есть класс:

class field_paragraph extends field
{
    function __construct($value = "",
                      $parameters = "")
     {
         parent::__construct("",
                         "paragraph",
                         "",
                         false,
                         $value,
                         $parameters,
                         "",
                         "");

     }

    //имя поля и сам тег элемента управления
    function get_html()
    {
         $tag = htmlspecialchars($this->value, ENT_QUOTES);
         $pattern = "#\[b\](.+)\[\/b\]#isU";
         $tag = preg_replace($pattern, '<b>\\1</b>', $tag);
         $pattern = "#\[i\](.+)\[\/i\]#isU";
         $tag = preg_replace($pattern, '<i>\\1</i>', $tag);
         $pattern = "#\[url\][\s]*((?=http:[\S])*)[\s]*\[\/url\]#si"; // 26
         $tag = preg_replace($pattern, '<a href="\\1" target=_blank>\\2</a>', $tag); // 27
         $pattern = "#\[url[\s]*=[\s]*((?=http:)[\S]+)[\s]*\][\s]*([^\[]*)\[/url\]#isU";
         $tag = preg_replace($pattern, '<a href="\\1" target=_blank>\\2</a>', $tag);

         if (get_magic_quotes_gpc()) $tag = stripcslashes($tag);

         return array($this->caption, nl2br($tag));
    }

    //метод проверяющий корректность переданных данных
    function check()
    {
        return "";
    }

}


при работе с ним в коде выдает ошибку:

Warning: preg_replace() [function.preg-replace]: Compilation failed: nothing to repeat at offset 26 in Z:\home\localhost\www\muravey-nik\class\class.field.paragraph.php on line 27


Кто знает что ни так?

  Ответить  
 
 автор: Trianon   (10.01.2011 в 20:53)   письмо автору
 
   для: muravey   (10.01.2011 в 20:40)
 

строку ссылки могли бы и указать.

[]*


пустой символьный класс с повторителем в последнем шаблоне.

  Ответить  
 
 автор: cheops   (10.01.2011 в 20:54)   письмо автору
 
   для: Trianon   (10.01.2011 в 20:53)
 

>строку ссылки могли бы и указать.
Указана в комментарии

  Ответить  
 
 автор: Trianon   (10.01.2011 в 20:58)   письмо автору
 
   для: cheops   (10.01.2011 в 20:54)
 

ага . точно. слепой.
тогда значит
(?=http:[\S])*

это утверждение вроде. И повторитель после него?
Утверждение ведь не сопоставляется с текстом, только проверяется?

  Ответить  
 
 автор: muravey   (10.01.2011 в 20:59)   письмо автору
 
   для: cheops   (10.01.2011 в 20:54)
 

Что за ошибка? Как исправить?

  Ответить  
 
 автор: cheops   (10.01.2011 в 21:00)   письмо автору
 
   для: muravey   (10.01.2011 в 20:40)
 

26 строку исправьте следующим образом
<?php
  $pattern 
"#\[url\][\s]*((?=http:)[\S]*)[\s]*\[\/url\]#si"// 26 
?>

  Ответить  
 
 автор: muravey   (10.01.2011 в 21:03)   письмо автору
 
   для: cheops   (10.01.2011 в 21:00)
 

Спасибо все получилось!

Скажите, что это такое ни где в книге наити не мог? Где поизучать побольше про это?

  Ответить  
 
 автор: Trianon   (10.01.2011 в 21:09)   письмо автору
 
   для: muravey   (10.01.2011 в 21:03)
 

Фридла читайте.

  Ответить  
 
 автор: cheops   (10.01.2011 в 21:11)   письмо автору
 
   для: muravey   (10.01.2011 в 21:03)
 

Это специализированный язык - регулярные выражения, предназначен для работы с текстом и последовательностями (более подробно об них можно почитать в аннотации к книге Фридла, посвященной им). Достаточно сложный, но чрезывычайно эффективный язык. Здесь ему посвящен отдельный форум.

  Ответить  
 
 автор: muravey   (10.01.2011 в 21:17)   письмо автору
 
   для: cheops   (10.01.2011 в 21:11)
 

Спасибо, интересно буду изучать!

  Ответить  
 
 автор: muravey   (11.01.2011 в 00:01)   письмо автору
 
   для: cheops   (10.01.2011 в 21:11)
 

Проработал регистрацию пользователей, сейчас работаю над фотогаллерей, но возникла ситуация:
- в ситеме адм галлереи добавляю галлерею все добавляется
- когда хочу отредактировать в поле
name
подставляется имя которое я регистрирую на сайте

$_GET['id_catalog'] = intval($_GET['id_catalog']);
    if(empty($_POST))
    {
      $query = "SELECT * FROM $tbl_photo_catalog
                WHERE id_catalog=$_GET[id_catalog]
                LIMIT 1";
      $cat = mysql_query($query);
      if(!$cat)
      {
        throw new ExceptionMySQL(mysql_error(),
                                 $query,
                                "Ошибка при обращении
                                 каталогу");
      }
      $_REQUEST = mysql_fetch_array($cat);
      if($_REQUEST['hide'] == 'show') $_REQUEST['hide'] = true;
      else $_REQUEST['hide'] = false;
    }

    echo"<pre>";
    print_r($_REQUEST);
    echo"</pre>";

    $name = new field_text("name",
                           "Название",
                           true,
                           $_REQUEST['name']);
    $description = new field_textarea("description",
                               "Описание",
                               false,
                               $_REQUEST['description']);
    $hide = new field_checkbox("hide",
                               "Отображать",
                               $_REQUEST['hide']);
    $id_catalog = new field_hidden_int("id_catalog",
                                 true,
                                 $_REQUEST['id_catalog']);
    $form = new form(array("name" => $name,
                           "description" => $description,
                           "hide" => $hide,
                           "id_catalog" => $id_catalog),
                     "Редактировать",
                     "field");


решил отладить массив $_REQUEST

Array
(
    [0] => 2
    [id_catalog] => 2
    [1] => muravey
    [name] => muravey
    [2] => Обои
    [description] => Обои
    [3] => show
    [hide] => 1
    [4] => 2
    [pos] => 2
)


в поле name=muravey
а должно быть имя фотогаллереи

т.е. дело в том что в массиве $_REQUEST хроняться данные зарегистрированного пользователя.

Как устранить ошибку без изменения имени полей?

  Ответить  
 
 автор: cheops   (11.01.2011 в 09:21)   письмо автору
 
   для: muravey   (11.01.2011 в 00:01)
 

А в таблице что $tbl_photo_catalog поле name какое значение имеет?

  Ответить  
 
 автор: muravey   (11.01.2011 в 09:28)   письмо автору
 
   для: cheops   (11.01.2011 в 09:21)
 

$tbl_photo_catalog [name] = muravey

  Ответить  
 
 автор: cheops   (11.01.2011 в 09:30)   письмо автору
 
   для: muravey   (11.01.2011 в 09:28)
 

Нет имеется в виду в самой таблице базы данных? Посмотрите через phpMyAdmin, если не сложно.

  Ответить  
 
 автор: muravey   (11.01.2011 в 09:32)   письмо автору
 
   для: cheops   (11.01.2011 в 09:30)
 

Через phpMyAdmin и смотрю. Это значение автоматом подставляется при редактировании каталого галлереи, чтобы я туда не вводил.

  Ответить  
 
 автор: cheops   (11.01.2011 в 09:34)   письмо автору
 
   для: muravey   (11.01.2011 в 09:32)
 

Проверьте состояние массива $_REQUEST сразу после строки
<?php
 $_REQUEST 
mysql_fetch_array($cat);
?>

Что в дампе массива?

  Ответить  
 
 автор: muravey   (11.01.2011 в 09:39)   письмо автору
 
   для: cheops   (11.01.2011 в 09:34)
 

файл catedit.php //редактирование каталога галлереи


...
$_REQUEST = mysql_fetch_array($cat);
      if($_REQUEST['hide'] == 'show') $_REQUEST['hide'] = true;
      else $_REQUEST['hide'] = false;
    }

    echo"REQUEST";
    echo"<pre>";
    print_r($_REQUEST);
    echo"</pre>";
...



REQUEST
Array
(
    [0] => 1
    [id_catalog] => 1
    [1] => muravey
    [name] => muravey <--- В ЭТОМ ПОЛЕ ДОЛЖНО БЫТЬ Обои
    [2] => Наклеивание обоев
    [description] => Наклеивание обоев
    [3] => show
    [hide] => 1
    [4] => 1
    [pos] => 1
)


оно и подставляется вот так


...
$name = new field_text("name",
                           "Название",
                           true,
                           $_REQUEST['name']);
...

  Ответить  
 
 автор: muravey   (11.01.2011 в 09:26)   письмо автору
 
   для: muravey   (11.01.2011 в 00:01)
 

Проделываю еще


echo"SESSION";
echo"<pre>";
print_r($_SESSION);
echo"</pre>";

echo"COOKIE";
echo"<pre>";
print_r($_COOKIE);
echo"</pre>";

echo"REQUEST";
echo"<pre>";
print_r($_REQUEST);
echo"</pre>";


выдает


SESSION
Array
(
    [name] => muravey
    [id_user_position] => 1
)

COOKIE
Array
(
    [name] => muravey
    [pass] => pass
    [PHPSESSID] => dbfc1862871abf5441db41b241310179
)

REQUEST
Array
(
    [name] => muravey
    [pass] => pass
    [PHPSESSID] => dbfc1862871abf5441db41b241310179
)



чищу


setcookie("name", $_COOKIE['name'], time() - 600);
setcookie("pass", $_COOKIE['pass'], time() - 600);


получаю

SESSION
Array
(
    [name] => muravey
    [id_user_position] => 1
)

COOKIE
Array
(
    [PHPSESSID] => dbfc1862871abf5441db41b241310179
)

REQUEST
Array
(
    [PHPSESSID] => dbfc1862871abf5441db41b241310179
)


При этом все работает, но приходиться заново регистрироваться.
Как сохранить данные в гл мас, чтобы эти данные не подставлялись ни где в коде?

  Ответить  
 
 автор: cheops   (11.01.2011 в 09:32)   письмо автору
 
   для: muravey   (11.01.2011 в 09:26)
 

У вас директива variables_order в php.ini имеет следующее значение?
variables_order = "EGPCS"

  Ответить  
 
 автор: muravey   (11.01.2011 в 09:36)   письмо автору
 
   для: cheops   (11.01.2011 в 09:32)
 

Да именно так
variables_order = "EGPCS"

  Ответить  
 
 автор: muravey   (11.01.2011 в 09:54)   письмо автору
 
   для: cheops   (11.01.2011 в 09:32)
 

Дело еще в том, что в системе адм. везде где есть обращение $_REQUEST['name'] подставляется имя пользователя в системе предстваления. Например и в каталоге товаров и услуг.

Может быть только одно решение, что изменить в сист. адм. все name на другое название?

  Ответить  
 
 автор: muravey   (11.01.2011 в 10:44)   письмо автору
 
   для: muravey   (11.01.2011 в 09:54)
 

>Может быть только одно решение, что изменить в сист. адм. все name на другое название?

Да я получилось, я изменил в регистрационных файлах поле name на name_user


SESSION
Array
(
    [name] => muravey
    [id_user_position] => 1
    [name_user] => muravey
)

COOKIE
Array
(
    [name_user] => muravey
    [pass_user] => pass
    [PHPSESSID] => dbfc1862871abf5441db41b241310179
    [vc] => 1
)

REQUEST
Array
(
    [name_user] => muravey
    [pass_user] => pass
    [PHPSESSID] => dbfc1862871abf5441db41b241310179
    [vc] => 1
)


Но когда я открываю здесь на форуме новое окно, то пишет

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


Почему так? Тоже конфликт с именами?

  Ответить  
 
 автор: muravey   (11.01.2011 в 14:29)   письмо автору
 
   для: cheops   (11.01.2011 в 09:32)
 

Дошел до FTP менеджера.


$ftp_handle = ftp_connect($ftp_server, 21); 


Все подключается, но не передается путь к корневой директории


$file_list = ftp_rawlist($ftp_handle, $directory);


ПОЧЕМУ?

  Ответить  
 
 автор: muravey   (12.01.2011 в 07:55)   письмо автору
 
   для: muravey   (11.01.2011 в 14:29)
 

Жаль конечно что никто не помогает до конца разобраться!

Но я уже разобрался, все дело в пассивном режиме. Нужно его включить.

Вот пример приложения который работает:


<?php
  
// Имя пользователя
  
$ftp_user "u9796";
  
// Пароль
  
$ftp_password "pass";
  
// Сервер
  
$ftp_server "u9796.netangels.ru";

  
// Устанавливаем соединение с FTP-сервером
  
$ftp_handle ftp_connect($ftp_server);

  
$login ftp_login($ftp_handle$ftp_user$ftp_password);

  if ((!
$ftp_handle) || (!$login))
  {
    die(
"Ошибка подключения к FTP-серверу");
  }
  else
  {
      echo 
"Успешно подключились к серверу!";
      
ftp_pasv($ftp_handletrue);//ВКЛЮЧАЕМ ПАССИВНЫЙ РЕЖИМ
  
}

  echo 
"<p>Выводим содержимое текущего каталога<br>";

  
$A ftp_nlist($ftp_handleftp_pwd($ftp_handle));

  foreach (
$A as $a) echo "<br>$a";

  
ftp_close($ftp_handle);
?>


результат скрипта


Успешно подключились к серверу!
Выводим содержимое текущего каталога

.bash_logout
.bash_profile
.bashrc
.profile
bin
etc
log
muravey-66.ru
muravey-nik.ru
tmp


Без этой штуки не работает FTP Manager SoftTime.

ftp_pasv($ftp_handle, true);//ВКЛЮЧАЕМ ПАССИВНЫЙ РЕЖИМ


Будте внимательны!

  Ответить  
 
 автор: cheops   (12.01.2011 в 11:10)   письмо автору
 
   для: muravey   (12.01.2011 в 07:55)
 

>Без этой штуки не работает FTP Manager SoftTime.
Это от настроек сервера зависит, как правило, пассивный режим сейчас не включают. Там где он включен, разумеется его нужно подключать.

>Жаль конечно что никто не помогает до конца разобраться!
Понимаете, в этом и проблема того, что вы задумали. На форуме не принято задавать множество вопросов в одной теме. Один вопрос - одна тема. Это негласное правило введено не спроста, дело в том, что когда в теме накапливается с пол сотни сообщений, остается все меньше и меньше желающих помогать/отвечать, так как для этого нужно прочитать все сообщения в теме, а это отнимает изрядное время.

  Ответить  
 
 автор: muravey   (11.01.2011 в 09:57)   письмо автору
 
   для: muravey   (11.01.2011 в 09:26)
 

>При этом все работает, но приходиться заново регистрироваться.

Даже здесь на форуме при открытии нового окна нужно заново заходить в систему. Как это обойти?

  Ответить  
 
 автор: lightning.say   (11.01.2011 в 13:37)   письмо автору
 
   для: muravey   (11.01.2011 в 09:57)
 

сами с собой говорите? ))

  Ответить  
 
 автор: muravey   (11.01.2011 в 13:49)   письмо автору
 
   для: lightning.say   (11.01.2011 в 13:37)
 

Да )), иногда помогает, рассуждая вслух.
Но вот последний вопрос так и остается загадкой...

  Ответить  
Rambler's Top100
вверх

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