ФорумПрограммированиеPHP для идиотов → Одним php-скриптом обработать несколько форм

Одним php-скриптом обработать несколько форм

  • shass

    Сообщения: ? Репутация: N Группа: Кто попало

    Spritz 26 октября 2009 г. 14:41

    Доброго времени суток!
    Подскажите, как можно одним php-скриптом (в данном случае add.php) обработать данные от нескольких форм?
    Т.е. имеется, скажем, 3 формы, одну из которых человек заполняет и нажимает Submit, данные передаются скрипту на обработку, а он уже определяет от какой формы были переданы данные - и вот тут у меня проблема. Может, стоит передавать какой-то идентификатор формы? (Каждой форме назначить свой идентификатор) Вот только опять же - как? Создать невидимый <input>? :) Вроде глупая идея :)
    Был у меня вариант с проверкой набора переданных переменных (т.к. сейчас для каждой формы набор разный). Но если будет 2 формы с одинаковым набором переменных, то получится запись не в ту таблицу БД.

    <h3>Добавление категории</h3>
    <form action=&quot;add.php&quot; method=&quot;GET&quot;>
    <input size=&quot;20&quot; name=&quot;title&quot; /> Название<br />
    <input size=&quot;20&quot; name=&quot;root&quot; /> Категория-родитель<br />
    <textarea cols=&quot;20&quot; name=&quot;txt&quot;></textarea> Описание категории<br />
    <input type=&quot;submit&quot; value=&quot;Добавить&quot; />
    </form>

    <h3>Добавление статической страницы</h3>
    <form action=&quot;add.php&quot; method=&quot;GET&quot;>
    <input size=&quot;20&quot; name=&quot;id&quot; /> Название (id)<br />
    <textarea cols=&quot;20&quot; name=&quot;content&quot;></textarea> Содержание<br />
    <input type=&quot;submit&quot; value=&quot;Добавить&quot; />
    </form>

    <h3>Добавление динамической страницы</h3>
    <form action=&quot;add.php&quot; method=&quot;GET&quot;>
    <input size=&quot;20&quot; name=&quot;header&quot; /> Название (id)<br />
    <input size=&quot;20&quot; name=&quot;cat&quot; /> Категория (к какой относится)<br />
    <textarea cols=&quot;20&quot; name=&quot;content&quot;></textarea> Содержание<br />
    <b>И + еще 2 поля</b><br />
    <input type=&quot;submit&quot; value=&quot;Добавить&quot; />
    </form>
  • adw0rd

    Сообщения: 22902 Репутация: N Группа: в ухо

    Spritz 26 октября 2009 г. 14:48, спустя 6 минут 25 секунд

    shass, в
    <input type=&quot;submit&quot; value=&quot;Добавить&quot; />
    добавьте name=&quot;form1&quot; например
    <input type=&quot;submit&quot; value=&quot;Добавить&quot; name=&quot;form1&quot; />


    Ну и для каждой формы свой соответственно, а проверять так:


    <?php

    if(isset($_POST[&#39;form1&#39;])) {

    }

    {+++58+++} И в вашем случае не POST, а GET

    <?php
    if(isset($_GET[&#39;form1&#39;])) {
    }
    adw/0
  • shass

    Сообщения: ? Репутация: N Группа: Кто попало

    Spritz 26 октября 2009 г. 14:49, спустя 1 минуту 27 секунд

    Точно. Красивое и простое решение =) Спасибо! :)
  • adw0rd

    Сообщения: 22902 Репутация: N Группа: в ухо

    Spritz 26 октября 2009 г. 22:40, спустя 7 часов 50 минут 36 секунд

    shass, пожалуйста
    adw/0
  • Fujin

    Сообщения: ? Репутация: N Группа: Кто попало

    Spritz 18 августа 2012 г. 11:08, спустя 1026 дней 12 часов 27 минут

    Приезжай ко мне на БАМ
    С чемоданом кожаным.
    А уедешь от меня
    С хуем обмороженным.

Пожалуйста, авторизуйтесь, чтобы написать комментарий!