2016-09-24 2 views
-3

Как отправить содержимое формы без отправки содержимого другой формы на той же странице? НапримерОтправка формы при наличии двух форм

<form class="form" method="get" action="page.php"> 
    <input type="text" value="hi" name="forminput1"> 
    <input type="submit" value="send"> 
</form> 
<form class="form" method="get" action="page.php"> 
    <input type="text" value="byebye" name="forminput2"> 
    <input type="submit" value="send"> 
</form> 

page.php:

if (isset($_GET['forminput1'])) { 
    //some code 
} 
if (isset($_GET['forminput2'])) { 
    //some code 
} 

Всякий раз, когда я отправить форму № 2, я в конечном итоге подачи формы # 1.

+1

Может быть, потому что они оба имеют такое же действие? –

+0

зависит от того, как выглядит ваш php, и вы оставили этот важный бит. Итак, php входит в картину *, когда? * Вы помечены как таковые, но не для того, чтобы поддержать вопрос. –

+1

Я заметил редактирование с удаленным тегом php; это еще хуже. Как вы можете ожидать, что кто-нибудь решит это? У вас есть 2 формы, так? Что это связано с отправкой того же значения? На какой вклад вы нажали и так далее? Ваш вопрос до сих пор неясен, насколько я знаю. Ну, я ухожу отсюда. Спросите людей, которые дали вам ответы; Я попытался помочь, придерживаясь здесь, но я, очевидно, потратил впустую свое время и ваше. –

ответ

2

Вы не дали какой-либо из ваших входов имя атрибута. Без атрибута name="somename" браузер ничего не будет передавать на GET или POST.

Если вы добавляете имя атрибута, как этот

<form class="form" action="page.php"> 
    <input type="text" value="hi" name="data"> 
    <input type="submit" value="send" name="send"> 
</form> 
<form class="form" action="page.php"> 
    <input type="text" value="byebye" name="data"> 
    <input type="submit" value="send" name="send"> 
</form> 

Он внезапно начнет работать, как вы ожидаете.

Если вы хотите, чтобы обе формы были уникальными, вы можете добавить другое имя в кнопки отправки.

<form class="form" action="page.php"> 
    <input type="text" value="hi" name="data"> 
    <input type="submit" value="send" name="send_form1"> 
</form> 
<form class="form" action="page.php"> 
    <input type="text" value="byebye" name="data"> 
    <input type="submit" value="send" name="send_form2"> 
</form> 

, а затем в вашем PHP, вы будете иметь возможность различать какую форму (кнопку) представляются как этот

<?php 
if ($_SERVER['REQUEST_METHOD'] == 'GET' && isset($_GET['send_form1'])) { 
    // User sent form1 
} 

if ($_SERVER['REQUEST_METHOD'] == 'GET' && isset($_GET['send_form2'])) { 
    // User sent form2 
} 
+0

Надеюсь, вы не получите чеканку здесь кроличьей дыры. OP просто удалил тег php. Я не вижу, что это хорошо. Это сделало его хуже, ИМХО. –

+0

Сегодня вечером я чувствую себя как вызов. Пара пинтов внутри меня, и я готов к чему-нибудь @ Fred-ii- – RiggsFolly

+0

Да, я заметил о пинтах LOL! Вы слишком быстро подошли к '$ GET' и отсутствующим скобкам ;-) похоже, что сегодня я посвященный драйвер. –

-1

Я думаю, что вы используете те же действия .... Формы независимы

Смежные вопросы