Я хочу распечатать идентификатор кнопки, которую я нажал. Идентификатор устанавливается динамически для каждой кнопки в таблице. Это мой HTML-код:
echo '<td><center><input type="submit" id="'.$row['I_ID'].'" class="btn" name="Add" value ="Add to cart"><center></td><tr>';
И я хочу напечатать идентификатор кнопки здесь. Предложения? Благодарю.
if (isset($_POST['Add'])) { $ID = $_GET['id']; echo $ID; echo '<br/>' . "* The item has been added to your cart."; }
Если вы не хотите использовать скрытое поле, вы можете настроить кнопку отправки следующим образом:
<button type="submit" name="id" value="value">Submit</button>
Затем вы можете поймать его с помощью $_GET['id']
.
У вас может быть много кнопок type="submit"
с тем же именем ( id
), и значение будет тем, которое было нажато, или первым, если форма была отправлена, нажав enter.
Атрибут 'id' не отправляется PHP, добавляется только атрибут 'value'.
Что вам нужно сделать, это добавить скрытый ввод с именем «id», например:
echo '<td><center><input type="hidden" name="id" value="' . $row['I_ID'] . '" /><input type="submit" id="'.$row['I_ID'].'" class="btn" name="Add" value ="Add to cart"><center></td><tr>';
Используйте скрытое поле ввода:
<input type="hidden" value=".$row['I_ID']." name="input2"/>
Затем войдите в него во втором скрипте через:
$_POST['input2']; // or $_GET['input2'], depending on the method of the form submitting
Как уже говорили другие, атрибут id не передается PHP.
Вы можете использовать атрибут name вместо id, и он будет передан PHP.
Если у вас есть следующий HTML-код
<input type="submit" name="some_name" class="btn" value ="Add to cart">
Вы можете получить доступ к нему в PHP как
$_POST['some_name'] = "Add to Cart"
Вы можете захватить id с помощью jquery и отправить его через ajax-вызов:
$(document).on('click', 'input.btn', function() { var this_id = $(this).attr('id'); ajaxCall(this_id); }); function ajaxCall(this_id) { var data = 'id=' + this_id; $.ajax({ url: 'proccess.php', type: "GET", data: data, cache: false, success: function (html) { DO WHAT EVER YOU WANT WITH THE RETURNED html } });
Ваш «proccess.php»:
if (isset($_POST['Add'])) { $ID = $_GET['id']; echo $ID; echo '<br/>' . "* The item has been added to your cart."; }