PHP GET方法问题

时间:2010-12-05 15:54:26

标签: php checkbox get

我正在尝试构建一个系统来比较数据库中的两个记录。如果记录将以名称列的升序显示,那么我可以通过在这些记录的旁边标记复选框来选择2条记录,然后单击比较。当我点击比较时,我想将这两个记录的ID发送到下一页。

当我使用Get方法时,我得{id} = on $ {id} = on。我想做的是$ id1 = {id}& $ id2 = {id}

不确定怎么做?你需要使用javascript吗?

3 个答案:

答案 0 :(得分:2)

给复选框提供您想要的值 - 即id而不是“on”。

如果选中,则

<input type="checkbox" name="id" value="on" />提交为id=on

如果选中,则

<input type="checkbox" name="id" value="1337" />提交为id=1337

未提交复选框根本未提交,因此您必须选中if(isset($_GET['id']))


并且,因为您似乎使用多个ID:

<input type="checkbox" name="id[]" value="1337" />
<input type="checkbox" name="id[]" value="42" />

这将创建一个数组$_GET['id'],其中包含已检查ID的值,例如array(1337, 42)如果同时选中了两个复选框。

答案 1 :(得分:2)

你的问题非常困惑,请清除它。

我能说出来的是你不想做的事情:

$ids = isset($_GET['ids']) && is_array($_GET['ids']) ? $_GET['ids'] : false;

if($ids)
{
    //Check the database
}

然后HTML Wise

<form method="get" action="index.php">
    <input type="checkbox" name="ids[]" value="1" />
    <input type="checkbox" name="ids[]" value="12" />
    <input type="checkbox" name="ids[]" value="123" />
    <input type="checkbox" name="ids[]" value="1234"/>
    <input type="checkbox" name="ids[]" value="2" />
    <input type="checkbox" name="ids[]" value="23" />
    <input type="checkbox" name="ids[]" value="234"/>
</form>

这将生成复选框,在服务器端,您可以使用$ids

答案 2 :(得分:1)

我认为应该是这样:

<input type="checkbox" name="id1" value="<?=$ID1?>" />
<input type="checkbox" name="id2" value="<?=$ID2?>" />

您需要为两个不同的复选框提供唯一ID 如果你想在后续页面中进行比较