За последние 24 часа нас посетили 21510 программистов и 1020 роботов. Сейчас ищут 739 программистов ...

Путь к файлу вне корня

Тема в разделе "PHP для новичков", создана пользователем gazlevodiva, 3 май 2018.

Метки:
  1. gazlevodiva

    gazlevodiva Новичок

    С нами с:
    22 фев 2018
    Сообщения:
    19
    Симпатии:
    0
    Всем привет. Спасибо вам огромное, что всегда помогаете.

    Нужно достать переместить файл из "Загрузки", C:\Users\Алексей
    в другую папку. Как правильно это сделать. Я пробовал через rename(), но ничего не получилось.


    PHP:
    1. $g = rename("C:\Пользователи\Алексей\Загрузки\PoolDeletingDomainsList.txt", "C:\OSPanel\domains\localhost");

    Как переместить файл, не скопировать а переместить.
     
  2. Abyss

    Abyss Старожил

    С нами с:
    12 дек 2015
    Сообщения:
    1.298
    Симпатии:
    218
    Адрес:
    Default city
    Copy + unlink on success
    --- Добавлено ---
    Про права не забудьте, на запись
     
  3. gazlevodiva

    gazlevodiva Новичок

    С нами с:
    22 фев 2018
    Сообщения:
    19
    Симпатии:
    0
    Та же ошибка, что и была

    failed to open stream: No such file or directory
     
  4. Abyss

    Abyss Старожил

    С нами с:
    12 дек 2015
    Сообщения:
    1.298
    Симпатии:
    218
    Адрес:
    Default city
    Ну, открывайте переводчик с английского и переводите текст ошибки. Потом начинайте дебажить свой код, посимвольно.
     
  5. nospiou

    nospiou Старожил

    С нами с:
    4 фев 2018
    Сообщения:
    3.400
    Симпатии:
    510
    open_basedir ?
     
  6. artoodetoo

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

    С нами с:
    11 июн 2010
    Сообщения:
    11.076
    Симпатии:
    1.237
    Адрес:
    там-сям
    @gazlevodiva когда у тебя в строке обратные слеши, дублируй их как \\ во избежание ошибки: "C:\\блабла\\тыцтыц…"
    иначе можешь напороться на специальный символ вроде \n или \f

    либо замени все одиночные \ на / это будет работать даже на Windows!
    --- Добавлено ---
    https://php.ru/manual/language.types.string.html#language.types.string.syntax.double
    --- Добавлено ---
    P.S. срань господня! доколе будет работать это eбаный переписыватель ссылок с php.net на php.ru ?! стыд и срам!
     
  7. nospiou

    nospiou Старожил

    С нами с:
    4 фев 2018
    Сообщения:
    3.400
    Симпатии:
    510
    Согласен. Вроде есть способ обхода. Кто знает делитесь
    Как вариант
    http://www.php.net/manual/ru/mysqli.real-escape-string.php
    https://php.net/manual/ru/mysqli.real-escape-string.php
     
    #7 nospiou, 3 май 2018
    Последнее редактирование: 3 май 2018
  8. gazlevodiva

    gazlevodiva Новичок

    С нами с:
    22 фев 2018
    Сообщения:
    19
    Симпатии:
    0
    Нашлась проблема. Оно по пути не определяет русские буквы. " /алексей/ "
    Как правильно тогда их записать, чтоб увидело?)
     
  9. artoodetoo

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

    С нами с:
    11 июн 2010
    Сообщения:
    11.076
    Симпатии:
    1.237
    Адрес:
    там-сям
    Используй кодировку windows-1251 для имен файлов и папок. Есть такая беда на винде.
    --- Добавлено ---
    Я подозреваю что на самом деле тебе не нужно писать этот безумный путь руками и что-то знать о его кодировке. Надо воспользоваться функцией move_uploaded_file()