首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >多个提交按钮

问多个提交按钮
EN

Stack Overflow用户
提问于 2011-08-20 06:26:18
回答 2查看 3.6K关注 0票数 6

我有一张注册表,上面有两个提交按钮。一个提交按钮用于免费会员帐户,另一个按钮用于高级会员帐户。

我的表单代码是

代码语言:javascript
复制
<form action="post.php" method="post">
<input type="text" name="name" />
<input type="text" name="mail" />

//submit buttons
<input type="submit" value="signup for free member" />
<input type="submit" value="signup for premium member" />
</form>

if($_POST['name'] and $_POST['mail']){
    $user_name = $_POST['name'];
    $mail = $_POST['mail']
    //How i can know he is preimum or free ?
    }

现在,我如何判断用户是点击了免费按钮还是高级按钮?

示例:

代码语言:javascript
复制
if($_POST['free_member']){
  $member = 'free';
}else{
  $member = 'premium';
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-08-20 06:29:25

您可以很容易地为提交按钮指定一个名称:

代码语言:javascript
复制
<input name="submit" type="submit" value="signup for free member" />
<input name="submit" type="submit" value="signup for premium member" />

然后你的帖子会显示如下:

代码语言:javascript
复制
var_dump($_POST['submit']); // 'signup for premium member'

可伸缩性不是很好。我建议在提交时使用javascript来填充隐藏字段。示例:

HTML:

代码语言:javascript
复制
<!-- Include JQuery -->
<script src="//ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js" type="text/javascript"></script>

<input type="hidden" id="program_type" name="program_type" value="" />
<input class="submit" type="submit" value="signup for free member" data-program-type="free" />
<input class="submit" type="submit" value="signup for premium member" data-program-type="premium" />

JQuery:

代码语言:javascript
复制
$('.submit').click(function(e){
    e.preventDefault(); // Stall form submit
    $('#program_type').val($(this).data('program-type'));
    $(this).parents('form:first').submit(); // Submit form
});

PHP:

代码语言:javascript
复制
var_dump($_POST['program_type']); // 'free' or 'premium'
票数 7
EN

Stack Overflow用户

发布于 2011-08-20 06:30:58

HTML

代码语言:javascript
复制
<input type="submit" value="signup for free member" name="signup_free"/>
<input type="submit" value="signup for premium member" name="signup_premium"/>

PHP

代码语言:javascript
复制
if($_POST['signup_free'])
{
    $member = 'free';
}
elseif($_POST['signup_premium'])
{
    $member = 'premium';
}
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7128052

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档