За последние 24 часа нас посетили 21700 программистов и 1069 роботов. Сейчас ищут 634 программиста ...

Передать ассоциативный массив в POST-запросе.

Тема в разделе "PHP для новичков", создана пользователем Зингер, 14 дек 2017.

  1. Зингер

    Зингер Активный пользователь

    С нами с:
    20 июл 2017
    Сообщения:
    127
    Симпатии:
    7
    Здравствуйте. Возможно мой вопрос для знатоков покажется слишком легким, но я, как новичок, не могу победить одну маленькую проблему.
    Есть кнопка:
    HTML:
    1. <input type="submit" class=submit_for_header_table_vibor  name="Prizn3" value="Полное наименование" formaction="otdel_controller.php">
    В пост-массиве данные отображаются:
    Код (Text):
    1. [Prizn_array] => Array ( [Prizn3] => Полное наименование )
    где Prizn3-это ключ, а value="Полное наименование" - это значение массива.

    Как сделать, чтобы
    Код (Text):
    1. [Prizn_array] => Array ( [Priznak] => Prizn3)
    Спасибо.
     
  2. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.553
    Симпатии:
    631
    Используй квадратные скобки в именах инпутов
    HTML:
    1. <input name="Prizn_array[Priznak]" ... >
     
  3. Зингер

    Зингер Активный пользователь

    С нами с:
    20 июл 2017
    Сообщения:
    127
    Симпатии:
    7
    А где значение, т.е. Prizn3 ?
    Получается
    Код (Text):
    1. [Prizn_array] => Array ( [Priznak] => Полное наименование
     
  4. artoodetoo

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

    С нами с:
    11 июн 2010
    Сообщения:
    11.072
    Симпатии:
    1.237
    Адрес:
    там-сям
    ну ёмана,

    <input type="какой тебе надо" name="Priznak" value="Prizn3">
    --- Добавлено ---
    в какой момент ты создаёшь Prizn_array я ниипу. Но раз пишешь, что "В пост-массиве данные отображаются Prizn_array", то видимо будет продолжать отображаться. )))
    Умеешь ты запутать следы, чувак.
     
  5. Зингер

    Зингер Активный пользователь

    С нами с:
    20 июл 2017
    Сообщения:
    127
    Симпатии:
    7
    Код (Text):
    1. <input type="какой тебе надо" name="Priznak" value="Prizn3">
    и надо submit, в таком случае на странице отображаться наименование будет value=Prizn3, а надо "Мое название"
     
  6. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.553
    Симпатии:
    631
    вот здесь
    многоточие существует для сокращения текста, который не важен. Впиши вместо него всё, что тебе нужно.
     
  7. artoodetoo

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

    С нами с:
    11 июн 2010
    Сообщения:
    11.072
    Симпатии:
    1.237
    Адрес:
    там-сям
    @Зингер внятно сформулируй цель. тебе надо непременно кнопку заставить передавать значение, или ты не знаешь как ещё можно его получить? <input type="hidden" …> например можно. а кнопке дай другое имя.

    Почему блин в заголовке вопрос про массив? Открою секрет на миллион: пока человек не научится чётко формулировать вопросы, он не научится программировать. Есть прямая железобетонная связь!
     
  8. Зингер

    Зингер Активный пользователь

    С нами с:
    20 июл 2017
    Сообщения:
    127
    Симпатии:
    7
    Ладно, извините.
    Мне необходимо, чтобы при нажатии кнопки с названием "Полное наименование" с name="Priznak", по нажатию на нее, сформировать $_POST-массив где бы Priznak был ключом, а некое значение Prizn3 было значением. К слову сказать таких кнопок несколько и все name="Priznak", но с разным названием, и значениями, от Prizn1 до Prizn10.
    По моей задумке, в контроллере, будет создана некая функция, которая в зависимости от Priznak=>Prizn1...10, будет делать те или иные действия с БД.

    В принципе, можно "отловить" нажатие isset-ом, но захотелось через массив.
    А вот как через hidden, я честно говоря не знаю, если приведете код, буду благодарен.
     
  9. artoodetoo

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

    С нами с:
    11 июн 2010
    Сообщения:
    11.072
    Симпатии:
    1.237
    Адрес:
    там-сям
    я пытался подсказать, но походу не получилось
     
  10. Sail

    Sail Старожил

    С нами с:
    1 ноя 2016
    Сообщения:
    1.591
    Симпатии:
    360
    @Зингер, "забудь цитрон используй..."
    Воспользуйтесь, например <button name="name" value="value1">Текст</button>
     
    Зингер и artoodetoo нравится это.
  11. Зингер

    Зингер Активный пользователь

    С нами с:
    20 июл 2017
    Сообщения:
    127
    Симпатии:
    7
    @Sail, спасибо. То что, доктор прописал! Про <button...></button> я не знал.
     
  12. artoodetoo

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

    С нами с:
    11 июн 2010
    Сообщения:
    11.072
    Симпатии:
    1.237
    Адрес:
    там-сям
    @Зингер ты таки подумай над своими формулировками. Уметь говорить важнее, чем знать про button и всё такое :D