PHP多重Isset声明

PHP多重Isset声明,php,html,forms,isset,Php,Html,Forms,Isset,我正在为RSVP创建一个PHP表单,并试图将多个$\u POST声明为1个isset变量,但我的代码中不断出现错误,这就是我要做的: $attendance = isset( $_POST['template-contactform-event'] ) ? $_POST['template-contactform-event'] : ''; $guestname1 = isset( $_POST['template-contactform-guestname1'], $_POS

我正在为RSVP创建一个PHP表单,并试图将多个$\u POST声明为1个isset变量,但我的代码中不断出现错误,这就是我要做的:

    $attendance = isset( $_POST['template-contactform-event'] ) ? $_POST['template-contactform-event'] : '';

    $guestname1 = isset( $_POST['template-contactform-guestname1'], $_POST['template-contactform-guestname1r'] ) ? $_POST['template-contactform-guestname1'], $_POST['template-contactform-guestname1r'] : '';
所以我的错误发生在第二个声明行$guestname1上,我想这是因为isset之后的第二个昏迷,但我不确定我将如何声明它?第一行($Attention)是我试图实现的,但是对于1个变量,有两个$u POST。

虽然isset()可以接受多个参数,但内联iif()不能

试试这个,我连接了两个参数

<?php

$attendance = isset( $_POST['template-contactform-event'] ) ? $_POST['template-contactform-event'] : '';

$guestname1 = isset( $_POST['template-contactform-guestname1'], $_POST['template-contactform-guestname1r'] ) ? 
                $_POST['template-contactform-guestname1'].' '.$_POST['template-contactform-guestname1r'] : '';
虽然isset()可以接受多个参数,但内联iif()不能

试试这个,我连接了两个参数

<?php

$attendance = isset( $_POST['template-contactform-event'] ) ? $_POST['template-contactform-event'] : '';

$guestname1 = isset( $_POST['template-contactform-guestname1'], $_POST['template-contactform-guestname1r'] ) ? 
                $_POST['template-contactform-guestname1'].' '.$_POST['template-contactform-guestname1r'] : '';

第一句话是对的。 但是第二个逗号有一个错误

如果你看一看三元模型的构建方式:

$val=my\u test?result\u if\u true:result\u if\u false

您可以执行isset($\u POST['template-contactform-guestname1'],$\u POST['template-contactform-guestname1r'])
,因为它将返回布尔值

但不写:
$\u POST['template-contactform-guestname1'],$\u POST['template-contactform-guestname1r']
有第二个参数。因为我们不需要这个逗号

如果你想了解更多信息,我找到了这篇文章
第一句话是对的。 但是第二个逗号有一个错误

如果你看一看三元模型的构建方式:

$val=my\u test?result\u if\u true:result\u if\u false

您可以执行isset($\u POST['template-contactform-guestname1'],$\u POST['template-contactform-guestname1r'])
,因为它将返回布尔值

但不写:
$\u POST['template-contactform-guestname1'],$\u POST['template-contactform-guestname1r']
有第二个参数。因为我们不需要这个逗号

如果你想了解更多信息,我找到了这篇文章

如果将两个值赋给一个变量,则不起作用,必须使用数组


而且isset()不是检查用户是否向表单输入了值的方法,因为如果用户提交了一个空白表单,
isset($\u POST['smth'])
将返回true,因为索引存在于超全局
$\u POST
中,并且其值设置为空字符串。改为使用
empty()
和一个数组来存储2个值。

如果将2个值赋给一个变量,则无法使用,必须使用数组


而且isset()不是检查用户是否向表单输入了值的方法,因为如果用户提交了一个空白表单,
isset($\u POST['smth'])
将返回true,因为索引存在于超全局
$\u POST
中,并且其值设置为空字符串。改为使用
empty()
和一个数组来存储2个值。

您的错误消息是什么?此外,调试时尽量不要使用三元,您可以始终在调试后编写三元。您的错误消息是什么?另外,调试时尽量不要使用三元,您可以随时编写三元后置感谢您的帮助,这对我很有用!提交这个作为回答的例子是提供的工作。谢谢你的帮助,这对我工作!提交此答案作为示例是可行的。感谢此+1感谢此+1感谢此+!谢谢这个+!