Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Разные обработчики для одной формы

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Perun
Отправлено: 14 Марта, 2019 - 18:07:09
Post Id


Гость


Покинул форум
Сообщений всего: 116
Дата рег-ции: Дек. 2016  


Помог: 0 раз(а)




Суть вопроса - есть форма. На ней несколько кнопок. По нажатию одной, происходит обработка в одном отдельном файле. Нажатие второй кнопки обрабатывается в другом отдельном файле.
Как это правильно организовать? Делать две отдельный формы или форму в форме и каждой указывать свой обработчик?
 
 Top
dcc0
Отправлено: 14 Марта, 2019 - 20:13:19
Post Id


Участник


Покинул форум
Сообщений всего: 1043
Дата рег-ции: Июль 2014  


Помог: 10 раз(а)




Обе схемы должны работать
1)
CODE (html):
скопировать код в буфер обмена
  1. <form>
  2. input name1
  3. </form>
  4.  


CODE (html):
скопировать код в буфер обмена
  1. <form>
  2. input name2
  3. </form>
  4.  

2)
CODE (html):
скопировать код в буфер обмена
  1. <form>
  2. input name1
  3. nput name2
  4. </form>


Во втором случае проверяется
PHP:
скопировать код в буфер обмена
  1. if(isset($_GET['name1'])) {
  2. код какой-то
  3. }


PHP:
скопировать код в буфер обмена
  1. if(isset($_GET['name2'])) {
  2. код другой какой-то
  3. }


Если я правильно вопрос понял. Можно в одном файле обрабатывать.

(Отредактировано автором: 14 Марта, 2019 - 20:17:20)



-----
Март 2021. Бросил программирование
 
 Top
Perun
Отправлено: 14 Марта, 2019 - 21:23:14
Post Id


Гость


Покинул форум
Сообщений всего: 116
Дата рег-ции: Дек. 2016  


Помог: 0 раз(а)




dcc0 пишет:

Во втором случае проверяется
PHP:
скопировать код в буфер обмена
  1. if(isset($_GET['name1'])) {
  2. [b]код какой-то[/b]
  3. }


PHP:
скопировать код в буфер обмена
  1. if(isset($_GET['name2'])) {
  2. [b]код другой какой-то[/b]
  3. }


Если я правильно вопрос понял. Можно в одном файле обрабатывать.

Вроде правильно)) Общая обработка формы в одном файле, обработчики по нажатию каждой кнопки - раздельно.
Эти коды предполагается иметь каждый в отдельном файле.
Т.е. по условию, в зависимости от того, какая нажата кнопка можно подключать в код вместо код какой-то ссылку на необходимый обработчик через include?
 
 Top
dcc0
Отправлено: 14 Марта, 2019 - 21:26:56
Post Id


Участник


Покинул форум
Сообщений всего: 1043
Дата рег-ции: Июль 2014  


Помог: 10 раз(а)




Цитата:
Т.е. по условию, в зависимости от того, какая нажата кнопка можно подключать в код вместо код какой-то ссылку на необходимый обработчик через include?

Да. Можно.
Но сейчас кто-нибудь придет и скажет, что так лучше не делать.
По крайней мере стоит обернуть в функции то, что будет в этих файлах.
(Добавление)
Т.е.
в файле
который
подключается

В родительском файле,
где код после условия:

PHP:
скопировать код в буфер обмена
  1.  
  2. if(isset($_GET['name2'])) {
  3. require_once 'some_file.php';
  4. somefuncion ();
  5. }
  6.  

(Отредактировано автором: 14 Марта, 2019 - 21:33:09)



-----
Март 2021. Бросил программирование
 
 Top
Perun
Отправлено: 14 Марта, 2019 - 21:57:02
Post Id


Гость


Покинул форум
Сообщений всего: 116
Дата рег-ции: Дек. 2016  


Помог: 0 раз(а)




dcc0 пишет:
В родительском файле,
где код после условия:

PHP:
скопировать код в буфер обмена
 
if(isset($_GET['name2'])) {
require_once 'some_file.php';
somefuncion ();
}
 

Зачем тогда в основном файле и подключение файла и вызов этой же функции?
Может тогда просто обработчик создавать как отдельную функцию с и вызывать в теле основного файла из файла функций без всяких include/require?

(Отредактировано автором: 14 Марта, 2019 - 21:58:16)

 
 Top
dcc0
Отправлено: 14 Марта, 2019 - 23:33:03
Post Id


Участник


Покинул форум
Сообщений всего: 1043
Дата рег-ции: Июль 2014  


Помог: 10 раз(а)




Цитата:
Может тогда просто обработчик создавать как отдельную функцию с и вызывать в теле основного файла из файла функций без всяких include/require?




Можно коды обработчиков положить в функции, в один файл и вызывать их по условию.
В примере выше - простое разделение кода - функции из файлов подгружаются по необходимости.
Вызов функции из основного файла нужен для того, чтобы при обращении напрямую к файлу с обработчиком, ненароком не выполнить код. Файл с функцией, которая в этом файле не вызывается, условно-относительно безопасен при прямом обращении к нему из браузера, в обход логики.

(Отредактировано автором: 15 Марта, 2019 - 00:01:22)



-----
Март 2021. Бросил программирование
 
 Top
Perun
Отправлено: 15 Марта, 2019 - 00:29:13
Post Id


Гость


Покинул форум
Сообщений всего: 116
Дата рег-ции: Дек. 2016  


Помог: 0 раз(а)




dcc0 пишет:
Цитата:
Может тогда просто обработчик создавать как отдельную функцию с и вызывать в теле основного файла из файла функций без всяких include/require?




Можно коды обработчиков положить в функции, в один файл и вызывать их по условию.
В примере выше - простое разделение кода - функции из файлов подгружаются по необходимости.
Вызов функции из основного файла нужен для того, чтобы при обращении напрямую к файлу с обработчиком, ненароком не выполнить код. Файл с функцией, которая в этом файле не вызывается, условно-относительно безопасен при прямом обращении к нему из браузера, в обход логики.

спасибО!
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB