Можно ли отправить два значения из одной кнопки?
$orderby = $_GET['orderby'];
<form action="mypage.php" method="get">
<a><button name ="orderby" value="name" type="submit">▼</button></a>
<a><button name ="orderby" value="age" type="submit">▼</button></a>
</form>
Я представляю что-то вроде этого:
<a><button name ="orderby" value1="name" value2="ASC" type="submit">▼</button></a>
<a><button name ="orderby" value1="name" value2="DESC" type="submit">▼</button></a>
<a><button name ="orderby" value1="age" value2="ASC" type="submit">▼</button></a>
<a><button name ="orderby" value1="age" value2="DESC" type="submit">▼</button></a>
Вы можете использовать скрытое поле с <input type="hidden"/>
:
<?php
$orderby = $_GET['orderby'];
?>
<form action="mypage.php" method="get">
<input type="hidden" name="field" value="fieldname"/>
<input type="hidden" name="orderby" value="<?= $orderby ?>"/>
<button name ="submit" value="1" type="submit">▼</button>
</form>
Вы должны использовать внутри формы
<form>
<input type=hidden name=var1 value="value1">
<input type=hidden name=var2 value="value2">
<input type=hidden name=var3 value="value3">
Отправьте его через URL, например.
<form action="mypage.php?orderby=name&order=ASC" method="get">
<a><button name ="orderby" value="name" type="submit">▼</button></a>
</form>
Если вы хотите использовать кнопку для получения значений, вы можете использовать jquery и ajax. Пример кода приведен ниже
$(form).on('submit', function(e){
e.preventDefault();
var value1 = $('button[name=orderby]').attr('value1');
var value2 = $('button[name=orderby]').attr('value2');
$.ajax({
url: 'your/url',
type: 'POST',
data: {
value1: value1,
value2: value2
},
success: function(data){
//success action
},
error: function(){
//error action
}
});
});
Я думаю, что это лучший способ для вашей проблемы. Это то, что называется программистом умнее и динамичнее.
Вы можете сделать что-то вроде этого:
HTML-форма
<form action="mypage.php" method="get">
<input type="radio" name="field" checked value="name"> Name
<input type="radio" name="field" value="age"> Age<br/><br/>
<input type="radio" name="order" checked value="desc"> DESC
<input type="radio" name="order" value="asc"> ASC<br/><br/>
<a><button name="orderby" value="orderby" type="submit">▼</button></a>
</form>
mypage.php
Должен использовать isset
представить и другое обеспечение.
$field = $_GET['field'];
$order = $_GET['order'];
Теперь все готово, просто делай с ними что хочешь.
Используйте какname ASC
» или же «name{splitter}ASC
«и взорвать его, чтобы использовать в вашем коде
<a><button name ="orderby" value="name ASC" type="submit">▼</button></a>
<a><button name ="orderby" value="name DESC" type="submit">▼</button></a>
<a><button name ="orderby" value="age ASC" type="submit">▼</button></a>
<a><button name ="orderby" value="age DESC" type="submit">▼</button></a>