Php вывод результата exec: PHP, вывод результата команды exec
Содержание
mysql — Вывод результата поиска на страницу Php
Вопрос задан
Изменён
6 лет 4 месяца назад
Просмотрен
567 раз
Я не силен в php, прошу помочь мне с таким вопросом.
Есть задача: сделать сайт с поиском по БД.
Поиск я реализовал, все работает, но нужно, чтобы кликнув на один из результатов поиска, меня выбивало на страницу-шаблон, в которой бы выводилась вся информация из данного ряда, т.е заголовок, описание, изображение… Вывести все в цикле я понимаю как, но как сделать, чтобы выводилась инфа той ссылки из поиска, на которую я кликнул?
- php
- mysql
1
Вопрос достаточно абстрактный. ..
- Вы сделали поиск.
- Находите много каких-то элементов, у каждого есть Id.
При перечеслении всех элементов вы формируете ссылку для
просмотра этого элемента, например:echo '<a href="/show.php?id="' . $row['id'] . '...</a>';
При клике на ссылку вы попадаете в созданный вами скрипт-файл
php (тут show.php)В этом файле вы получаете одну строку (row) зная Id (
$_GET['id']
) и всё там и выводите:echo $row['id'] . ' ' . $row['name'] . .....;
Очень расплывчивый вопрос.
Такое можно сделать многими способами. Например:
- Результат поиска это ссылка вида
{ваш сайт}/?res={идентификатор строки поиска}
- После клика на такой линк, запрос переходит на ваш скрипт, где вы сначала хорошо фильтруете запрос от всяких иньекций, а потом берете
{идентификатор строки поиска}
и на основании него возвращаете шаблон с релевантной информацией
тебе нужно разобраться с тем, что такое get, post запросы. Тогда все поймешь. Ссылка на запись должна быть с id этой записи из БД, далее при переходе на страницу берешь id (из адресной строки, это get запрос) и ищешь нужную информацию в БД. Самый быстрый и оптимальный вариант.
Зарегистрируйтесь или войдите
Регистрация через Google
Регистрация через Facebook
Регистрация через почту
Отправить без регистрации
Почта
Необходима, но никому не показывается
Отправить без регистрации
Почта
Необходима, но никому не показывается
Нажимая на кнопку «Отправить ответ», вы соглашаетесь с нашими пользовательским соглашением, политикой конфиденциальности и политикой о куки
Отключение опасных функций в PHP
#apache
#debian
#php
#security
21122
0
Если Вы хоть немного задумываетесь о безопасности своего веб-сервера, то следует отключить некоторые функции PHP, которые несут в себе потенциальную угрозу. Например, такие функции как exec() или system() позволяют выполнять внешние программы в системе, что, согласитесь, в большинстве случаев не требуется для веб-приложений. Данные функции, несомненно, помогают получить практически безграничные возможности для разработчика, однако, в то же время, при несанкционированном доступе к серверу злоумышленник может получить над ним полный контроль.
Это одна из причин, по которой ещё на этапе планирования проекта стоит избегать идей с вызовом внешних программ.
Для отключения функций следует открыть файл php.ini и добавить их в параметр disable_functions, например:
disable_functions = exec,passthru,php_uname,popen,proc_open,shell_exec,show_source,system
После сохранения конфигурации необходимо сообщить Apache об изменениях выполнив команду:
Онлайн тесты
- Тест на знание основ HTML
- Тест на знание основ PHP
- Тест на знание ООП в PHP
Все тесты
apachectl graceful
А вот список функций, рекомендуемых к отключению. Описание прилагается.
exec() - вызов внешней программы proc_open() - выполняет команду и открывает файловый указатель для ввода/вывода shell_exec() - выполняет команду в оболочке/shell и возвращает полный вывод в виде строки system() - вызов внешней программы и вывод результата passthru() - вызов внешней программы и вывод "сырых" результата popen() - открывает файловый указатель процесса show_source() - вывод исходного текста текущей веб страницы disk_free_space() - получить размер доступного пространства в каталоге diskfreespace() - псевдоним функции disk_free_space disk_total_space() - возвращает общий размер диска eval() - вычисляет строку, заданную в параметре, как код PHP fileperms() - получить информацию о правах на файл fopen() - открывает файл или URL opendir() - возвращает дескриптор каталога для последующего использования с функциями closedir(), readdir() и rewinddir() phpinfo() - выводит всю информацию о PHP, ОС phpversion() - выводит версию php posix_getpwuid() - возвращает информацию о пользователе по его user id posix_getgrgid() - возвращает информацию о группе по её group id posix_uname() - получает системное имя, возвращает хэш строк с информацией о системе php_uname - возвращает информацию об ОС, на которой php был построен ini_get() - получает значение опции конфигурации ini_get_all() - получает все опции конфигурации parse_ini_file() - разбирает файл конфигурации
#apache
#debian
#php
#security
21122
0
ryanmhuc Я использую PHP 5. 1.6 (cli) в Linux. Когда я использую команду exec($cmd, 28 окт. 2007 г. 1 14293 Новое сообщение Эта тема была закрыта, а ответы отключены. Пожалуйста, начните новое обсуждение. Похожие темы
|
Как вывести результат ant.exec() на консоль? — Старый форум
Максим_Неага
(Максим Няга)
1
Предположим, у меня есть файл helloworld.php, который выполняет простое
эхо «Hello World!»;
затем у меня есть задача
задача привет << {
ant.exec (исполняемый: «php») {
arg (значение: «helloworld.php»)
}
}
Когда я запускаю
gradle hello
, я просто получаю вывод «BUILD SUCCESSFUL». Как я могу также получить вывод «Hello World»?
Заранее спасибо!
Петер_Нидервизер
(Питер Нидервизер)
2
Прежде всего, почему вместо этого вы не используете задачу Exec?
Максим_Неага
(Максим Няга)
3
Я пробовал что-то вроде
task hello(type:Exec) {
commandLine ‘php helloworld.php’
}
Но я получаю сообщение об ошибке:
Возникла проблема при запуске процесса ‘command’ php hell мир .php»
Не знаю, как это сделать правильно. К сожалению, я не нашел примеров того, как это сделать в документации.
Петер_Нидервизер
(Питер Нидервизер)
4
Я думаю, что это должно быть «командная строка «php», «helloworld. php». Например, см. «Exec» в справочнике по языку сборки Gradle.
Максим_Неага
(Максим Няга)
5
Спасибо! Меня смутило следующее утверждение в документации:
commandLine
Полная командная строка, включая исполняемый файл и его аргументы.
Я думал, что и исполняемый файл, и аргументы должны идти вместе.
Еще раз спасибо!
Конрад_Гарус
(Конрад Гарус)
6
Здравствуйте,
Мне нужен ответ на тот же вопрос. И чтобы ответить на ваш вопрос — мне нужен ant.exec, потому что Exec не возобновляется, пока процесс не завершится.
Максим_Неага
(Максим Няга)