如何将按钮值发布到 PHP?

Posted

技术标签:

【中文标题】如何将按钮值发布到 PHP?【英文标题】:How do I post button value to PHP? 【发布时间】:2011-07-23 05:35:09 【问题描述】:

我想在 html 页面上使用 A-Z 按钮,如下所示(仅示例和几个字)

<INPUT TYPE="BUTTON" VALUE=" A " ONCLICK="A">
<INPUT TYPE="BUTTON" VALUE=" B " ONCLICK="B">
<INPUT TYPE="BUTTON" VALUE=" C " ONCLICK="C">
<INPUT TYPE="BUTTON" VALUE=" D " ONCLICK="D">
<INPUT TYPE="BUTTON" VALUE=" E " ONCLICK="E">
<INPUT TYPE="BUTTON" VALUE=" F " ONCLICK="F">
<INPUT TYPE="BUTTON" VALUE=" G " ONCLICK="G">
<INPUT TYPE="BUTTON" VALUE=" H " ONCLICK="H">
<INPUT TYPE="BUTTON" VALUE=" I " ONCLICK="I">
<INPUT TYPE="BUTTON" VALUE=" J " ONCLICK="J">

当我点击每个按钮时,我想将按钮上的相应值发布到 php 变量中。

我该怎么做?

【问题讨论】:

ONCLICK= 用于 javascript。没有必要再次列出那里的值。 您确实需要将所有这些标签属性都小写。 input 而不是 INPUT 【参考方案1】:

使用输入标签将在页面上留下标记。尝试按钮标签将显示按钮,也可以发送值。

<button type="submit" value="the value you want" >Update</button>

【讨论】:

【参考方案2】:
    $restore = $this->createElement('submit', 'restore', array(
        'label' => 'FILE_RESTORE',
        'class' => 'restore btn btn-small btn-primary',
        'attribs' => array(
            'onClick' => 'restoreCheck();return false;'
        )
    ));

【讨论】:

欢迎来到 SO。最好在答案中解释代码。【参考方案3】:

正如 Josh 上面所说,您希望为每个人指定相同的名称(字母、按钮等)并且它们都可以工作。然后你想用一个表单标签包围所有这些:

<form name="myLetters" action="yourScript.php" method="POST">
<!-- Enter your values here with the following syntax: -->
<input type="radio" name="letter" value="A" /> A
<!-- Then add a submit value & close your form -->
<input type="submit" name="submit" value="Choose Letter!" />
</form>

然后,在action属性定义的PHP脚本“yourScript.php”中,你可以使用:

$_POST['letter']

获取选择的值。

【讨论】:

只会添加没有
标签的 POST 不起作用。
【参考方案4】:

给他们一个相同的名字

例如

<input type="button" value="a" name="btn" onclick="a" />
<input type="button" value="b" name="btn" onclick="b" />

然后在你的php中使用:

$val = $_POST['btn']

编辑,正如 BalusC 所说;如果您不打算使用 onclick 来执行任何 javascript(例如,发送表单),请摆脱它并使用 type="submit"

【讨论】:

【参考方案5】:

请记住,您在服务器端的 POST 中获得的是一个键值对。你有价值观,但你的钥匙在哪里?在这种情况下,您需要设置按钮的 name 属性,以便有一个可以访问该值的键。

此外,按照惯例,您需要将这些inputs(按钮)中的type 更改为submit,以便它们正确地将它们的值发布到表单中。

另外,你的onclick在做什么?

【讨论】:

【参考方案6】:

type 更改为submit 并给它一个name(并删除无用的onclick 并平整90 年代风格的大写标签/属性)。

<input type="submit" name="foo" value="A" />
<input type="submit" name="foo" value="B" />
...

$_POST['foo'] 将提供该值(如果父 &lt;form&gt; 具有 method="post")。

【讨论】:

但它的类型是“按钮”而不是“提交”?我确实尝试过输入按钮和 $_POST 但不起作用 @baTimá:然后使用type="submit",完全按照答案中的说明。 但是在我的 FORM 中我已经有一个提交按钮,所以我不能有 2 个提交 @baTimá:这毫无意义。您可以在一个表单中完美地拥有多个提交按钮。 @baTimá:嗯,你当然可以继续使用 PHP 和 ajax。这个问题毫无意义,我建议花更多时间学习基本的 Web 开发概念。如果您有具体问题,请按

以上是关于如何将按钮值发布到 PHP?的主要内容,如果未能解决你的问题,请参考以下文章

如何从 PHP 中的单选按钮发送值属性 [关闭]

如何使用ajax将从jquery for循环创建的输入值发送到php [重复]

如何将 +1 值添加到 php

如何使用 Javascript 和 Ajax 将 HTML 单选按钮值传递给 PHP 变量?

如何通过 PHP 将多个单选按钮值作为所有单独的值传递给 MYSQL 数据库,但将它们分成组?

使用 jQuery ajax 函数将 php 值发送到 php 函数