The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Как в PHP полностью корректно экранировать для Shell'а?"
Отправлено Кровосток, 20-Июл-22 10:47 
Добрый день Товарищи!

Скажите пожалуйста, если есть такая гипотетическая задача:
Скрипт в PHP берёт из БД данные и делает с ними что-то типа того:


//Массив строк для shell'а
$arr = [];

//В $result данные типа SELECT aa.filePath, aa.linkPath FROM tablename
while($cur=mysqli_fetch_array($result)){
    //Собственно сам вопрос в этом блоке. Как в PHP корректно экранировать путь к файлу для shell
    //чтобы исходный к примеру путь: /home/vasyan kudrikov/file super cool!!!.avi
    //был экранирован c учётом всех требуемых для shell к экранированию символов
    //для свободного уже использования этого значения как аргумента к командам shell'а?
    $escFilePath = HOW_TO_ESC($cur[0]);
    $escLinkPath = HOW_TO_ESC($cur[1]);

    //Мне надо сформировать shell скрипт с манипуляцией файлов.
    $arr[] = 'ln -s '.$escFilePath.' '.$escLinkPath;
}

//Вывод результата в stdout
echo implode("\n", $arr);

Собственно как организовать эту HOW_TO_ESC()?

 

Ваше сообщение
Имя*:
EMail:
Для отправки новых сообщений в текущей нити на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру