我有以下php:
if (!empty($text_arr)) {
echo "<ul>";
foreach ($text_arr as $key => $twt) {
echo "<li>";
echo '<form action="'. $_SERVER['REQUEST_URI'] .'" method="POST">';
echo $twt['text'];
echo ' <input type="submit" value="Publish" />';
echo ' <input type="hidden" name="id_str" value="'. $twt['id_str'] .'" />';
echo "</form>";
echo "</li>";
}
echo "</ul>";
}
print_r($_POST);
正如您所见,我提交了发布帖子的按钮。有许多条目,每个条目都是一个表单。这样我在$ _POST中得到了正确的id_str。
我不喜欢每个选项都有多个表单的事实。有更清洁的方法吗?并且只有1个表格?我不想使用ajax或js。
P.S。我有宿醉,有可能我看不到明显的东西。或者只是提出愚蠢的问题。请耐心等待。希望我的帖子至少没什么意义。
感谢nandhp,我提出了解决方案:
if (!empty($text_arr)) {
echo "<ul>";
echo '<form action="'. $_SERVER['REQUEST_URI'] .'" method="POST">';
foreach ($text_arr as $key => $twt) {
echo "<li>";
echo $twt['text'];
echo ' <button type="submit" name="id_str" value="'. $twt['id_str'] .'" >Publish</button>';
echo "</li>";
}
echo "</form>";
echo "</ul>";
}
答案 0 :(得分:0)
如果您不需要$_POST['id_str']
,则可以在每个提交按钮上设置唯一的name
属性:
<input type=submit name=submit0001 value="Publish">
然后,您可以通过查看$_POST['submit0001']
,$_POST['submit0002']
等来确定按下了哪个按钮,以查看哪个按钮已被点击。