За последние 24 часа нас посетили 18757 программистов и 1706 роботов. Сейчас ищут 956 программистов ...

Превозмогания тред

Тема в разделе "PHP для новичков", создана пользователем ubunta2, 27 июн 2017.

  1. ubunta2

    ubunta2 Зэк
    [ БАН ]

    С нами с:
    27 июн 2017
    Сообщения:
    947
    Симпатии:
    28
    что делать? Ошибок нет.
     
  2. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    Ошибок нет потому что ты:
    1) не знаешь где смотреть?
    2) выключил вывод ошибок?
    3) не выполняется кусок кода который мог бы привести к ошибкам и первым двум пунктам?

    Выбирай
     
  3. ubunta2

    ubunta2 Зэк
    [ БАН ]

    С нами с:
    27 июн 2017
    Сообщения:
    947
    Симпатии:
    28
    вывода нет и не знаю где смотреть
    ошибок нет. Я ничего не отключал
    скорее всего в каком-то куске кода что-то не так
     
  4. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    Ну молодец, чо. Ты уже не первый день по каждому пердежу своего сознания бежишь на форум и не раз тебе говорили про отладку, а ты так её и не включил и до сих пор не знаешь что у тебя на сервере происходит. Про то что ты не понимаешь написанного кода я в данный момент молчу. Это твой путь копипаста и может быть он принесёт плоды. Но пока - не принесет. Потому что мы все не знаем что же там надумал твой сервер так как ты до сих пор не научился отлаживать сценарии. С международным днём пива тебя.
     
    ubunta2 и mkramer нравится это.
  5. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    @ubunta2 вот пример отладки, посмотри что в $uploadFile и в какой ты папке запускаешь скрипт, выложи сюда (два пути и какой от чего), ну можешь ещё сам обмозговать всё ли там логично, учитывая пути http://phpfaq.ru/newbie/paths
     
  6. ubunta2

    ubunta2 Зэк
    [ БАН ]

    С нами с:
    27 июн 2017
    Сообщения:
    947
    Симпатии:
    28
    некоторые ошибки уже сам начинаю сам исправлять, но пока не все
    --- Добавлено ---
    все получилось
    дело было в скобке
     
  7. ubunta2

    ubunta2 Зэк
    [ БАН ]

    С нами с:
    27 июн 2017
    Сообщения:
    947
    Симпатии:
    28
    PHP:
    1. <?php ## Наследование.
    2.  // Вначале подключаем "базовый" класс.
    3.   require_once "File/Logger.php";
    4.   // Класс, добавляющий в FileLogger новую функциональность.
    5.   class FileLoggerDebug extends FileLogger
    6.   {
    7.     // Конструктор нового класса. Просто переадресует вызов
    8.     // конструктору базового класса, передавая немного другие
    9.     // параметры.
    10.     public function __construct($fname)
    11.     {
    12.       // Такой синтаксис используется для вызова методов базового класса.
    13.       // Обратите внимание, что ссылки $this нет! Она подразумевается.
    14.       parent::__construct(basename($fname), $fname);
    15.       // Здесь можно проинициализировать другие свойства текущего
    16.       // класса, если они будут.
    17.     }
    18.     // Добавляем новый метод.
    19.     public function debug($s, $level = 0)
    20.     {
    21.       $stack = debug_backtrace();
    22.       $file = basename($stack[$level]['file']);
    23.       $line = $stack[$level]['line'];
    24.       // Вызываем функцию базового класса.
    25.       $this->log("[at $file line $line] $s");
    26.     }
    27.     // Все остальные методы и свойства наследуются автоматически!
    28.   }
    29. ?>

    Warning: require_once(File/Logger.php): failed to open stream: No such file or directory in E:\OpenServer\domains\test\File\Logger\Debug.php on line 3

    Fatal error: require_once(): Failed opening required 'File/Logger.php' (include_path='.;e:/openserver/modules/php/PHP-7.0-x64;e:/openserver/modules/php/PHP-7.0-x64/PEAR/pear') in E:\OpenServer\domains\test\File\Logger\Debug.php on line 3
     
  8. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    Нету ошибки в коде книги. Всё нормально. Это ты с путями всё ещё не умеешь работать. И отладку всё ещё не умеешь делать.
     
    ubunta2, denis01 и SProx нравится это.
  9. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.819
    Симпатии:
    1.333
    Адрес:
    Лень
    Ошибка тот день когда ты взялся за недопрограммирование.
     
    ubunta2 нравится это.
  10. ubunta2

    ubunta2 Зэк
    [ БАН ]

    С нами с:
    27 июн 2017
    Сообщения:
    947
    Симпатии:
    28
    Почему тогда выводит ошибку?
     
  11. Maputo

    Maputo Активный пользователь

    С нами с:
    30 июл 2015
    Сообщения:
    1.136
    Симпатии:
    173
    @ubunta2, как переводится: "No such file or directory"?
     
    ubunta2 нравится это.
  12. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.819
    Симпатии:
    1.333
    Адрес:
    Лень
    @Maputo переведет и задаст встречный вопрос "И что дальше ?" или "как решить проблему ?"
     
    ubunta2 и Maputo нравится это.
  13. ubunta2

    ubunta2 Зэк
    [ БАН ]

    С нами с:
    27 июн 2017
    Сообщения:
    947
    Симпатии:
    28
    Данный файл или каталог отсутствует
    я этого не знаю и хочу знать что сделать, чтоб в дальнейшем самому устранить ошибку. Я хочу научиться.
     
    #563 ubunta2, 6 авг 2017
    Последнее редактирование: 6 авг 2017
  14. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.819
    Симпатии:
    1.333
    Адрес:
    Лень
    Действительно...
    Перевел ошибку и что надо сделать ?
     
    ubunta2 нравится это.
  15. Maputo

    Maputo Активный пользователь

    С нами с:
    30 июл 2015
    Сообщения:
    1.136
    Симпатии:
    173
    @MouseZver, хочется процитировать классику:
    @ubunta2, Вам следует вернуться к уроку с require и include, чтобы понять что произошло.
    Какого файла не хватает?
     
    #565 Maputo, 6 авг 2017
    Последнее редактирование: 6 авг 2017
    ubunta2 нравится это.
  16. ubunta2

    ubunta2 Зэк
    [ БАН ]

    С нами с:
    27 июн 2017
    Сообщения:
    947
    Симпатии:
    28
    PHP:
    1. <?php ## Базовый класс.
    2.  class FileLogger
    3.   {
    4.     public $f;          // открытый файл
    5.     public $name;       // имя журнала
    6.     public $lines = []; // накапливаемые строки
    7.     public $t;
    8.     public function __construct($name, $fname)
    9.     {
    10.       $this->name = $name;
    11.       $this->f = fopen($fname, "a+");
    12.     }
    13.     public function __destruct()
    14.     {
    15.       fputs($this->f, join("", $this->lines));
    16.       fclose($this->f);
    17.     }
    18.     public function log($str)
    19.     {
    20.       $prefix = "[".date("Y-m-d_h:i:s ")."{$this->name}] ";
    21.       $str = preg_replace('/^/m', $prefix, rtrim($str));
    22.       $this->lines[] = $str."\n";
    23.     }
    24.   }
    25. ?>
    Logger.php
     
    Maputo нравится это.
  17. Maputo

    Maputo Активный пользователь

    С нами с:
    30 июл 2015
    Сообщения:
    1.136
    Симпатии:
    173
    @ubunta2, где он у Вас расположен относительно файла Debug.php? И где по книжке должен располагаться файл Debug.php?
     
    ubunta2 нравится это.
  18. ubunta2

    ubunta2 Зэк
    [ БАН ]

    С нами с:
    27 июн 2017
    Сообщения:
    947
    Симпатии:
    28
    в папке File
    --- Добавлено ---
    а Debug.php в папке Logger, которая в папке File
     
  19. Maputo

    Maputo Активный пользователь

    С нами с:
    30 июл 2015
    Сообщения:
    1.136
    Симпатии:
    173
    @ubunta2, правильно я понимаю:
    E:\OpenServer\domains\test\File\Logger\Debug.php
    E:\OpenServer\domains\test\File\Logger.php
    ?
     
    ubunta2 нравится это.
  20. ubunta2

    ubunta2 Зэк
    [ БАН ]

    С нами с:
    27 июн 2017
    Сообщения:
    947
    Симпатии:
    28
    да
     
  21. Maputo

    Maputo Активный пользователь

    С нами с:
    30 июл 2015
    Сообщения:
    1.136
    Симпатии:
    173
    Теперь создайте где-нибудь в Вашем проекте файл php с таким содержимым:
    PHP:
    1. <?php
    Выполните его и покажите, что будет выведено на экран.
     
    ubunta2 нравится это.
  22. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    ну значит реквайрить надо из уровня выше. это очевидно же.
    --- Добавлено ---
     
    ubunta2 и Maputo нравится это.
  23. ubunta2

    ubunta2 Зэк
    [ БАН ]

    С нами с:
    27 июн 2017
    Сообщения:
    947
    Симпатии:
    28
    .;e:/openserver/modules/php/PHP-7.0-x64;e:/openserver/modules/php/PHP-7.0-x64/PEAR/pear
     
  24. Maputo

    Maputo Активный пользователь

    С нами с:
    30 июл 2015
    Сообщения:
    1.136
    Симпатии:
    173
    @Ganzal, спасибо. Чето я тупанул. :D
    @ubunta2, в Вашем случае:
    include_path='.;e:/openserver/modules/php/PHP-7.0-x64;e:/openserver/modules/php/PHP-7.0-x64/PEAR/pear'
    Файл будет реквириться из директорий:
    1) ./File/Logger.php
    2) e:/openserver/modules/php/PHP-7.0-x64/File/Logger.php
    3) e:/openserver/modules/php/PHP-7.0-x64/PEAR/pear/File/Logger.php

    В первом случае:
    1) E:\OpenServer\domains\test\File\Logger\File\Logger.php
    а должно быть:
    E:\OpenServer\domains\test\File\Logger.php

    То-есть "." - это та директория из которой запущен скрипт. В Вашем случае E:\OpenServer\domains\test\File\Logger
    Вариантов решения проблемы несколько. Самый простой - перенести Debug.php в директорию E:\OpenServer\domains\test
     
    ubunta2 нравится это.
  25. ubunta2

    ubunta2 Зэк
    [ БАН ]

    С нами с:
    27 июн 2017
    Сообщения:
    947
    Симпатии:
    28
    E:\OpenServer\domains\test
    перенес в корень E:\OpenServer\domains\test
    и вывелся пустой экран

    --- Добавлено ---
    ошибок нет
    --- Добавлено ---
    Как Вы это поняли. Я тоже хочу понять?