if else在php中具有多个条件

j2qf4p5b  于 2021-06-23  发布在  Mysql
关注(0)|答案(2)|浏览(242)

一段时间以来,我一直在尝试使此代码适用于此表单的数据库,但它无法正常工作。
这是没有pi\u id的表单输入。这是具有pi\u id的表单输入。

$content = $_POST['cr_code'] . "-" . $_POST['cr_num'] . "-" . $_POST['cr_mon'] . "-" . $_POST['cr_year'] . "-" . $_POST['cr_modul'] . "-" . $_POST['cr_phase'] . "-" . $_POST['cr_pi_id'];

此输出出现故障,因为输出将 CR-001-08-18- - ,如果我不想输入任何模或相,因为18后面的线不应该在那里。
基本上,输出是 CR-001-08-18-Marketing-PH1-PI1 ,模块(营销)、阶段(ph1)和pi_id(pi1)是可选的,因此可以:
cr-001-08-18-市场营销(模块已填写,阶段未填写,pi\ U id未填写)
cr-001-08-18-ph1(未填充模块、填充相位、未填充pi)
cr-001-08-18-pi(模块未填充,相位未填充,pi\ id填充)
这是我尝试使用if else的代码:

$phase=$_GET['cr_phase'];
$modul=$_GET['cr_modul'];
$crpid=$_GET['cr_pi_id'];

if ($phase!='' && $modul='' && $crpid='')
{
	$content = $_POST['cr_code'] . "-" . $_POST['cr_num'] . "-" . $_POST['cr_mon'] . "-" . $_POST['cr_year'] . "-" . $_POST['cr_phase'];
}else if($phase='' && $modul!='' && $crpid='')
{
	$content = $_POST['cr_code'] . "-" . $_POST['cr_num'] . "-" . $_POST['cr_mon'] . "-" . $_POST['cr_year'] . "-" . $_POST['cr_modul'];
}else if($phase='' && $modul='' && $crpid=!'')
{
	$content = $_POST['cr_code'] . "-" . $_POST['cr_num'] . "-" . $_POST['cr_mon'] . "-" . $_POST['cr_year'] . "-" . $_POST['cr_pi_id'];
}else if($phase!='' && $modul!='' && $crpid!='')
{
	$content = $_POST['cr_code'] . "-" . $_POST['cr_num'] . "-" . $_POST['cr_mon'] . "-" . $_POST['cr_year'] . "-" . $_POST['cr_modul'] . "-" . $_POST['cr_phase'] . "-" . $_POST['cr_pi_id'];
}else
{
	$content = $_POST['cr_code'] . "-" . $_POST['cr_num'] . "-" . $_POST['cr_mon'] . "-" . $_POST['cr_year'];
}

但是,它不工作,因为它只是显示 CR-001-08-18 不显示相位和模块,即使我输入了相位、模块和piïu id。
有人能帮忙吗?

9vw9lbht

9vw9lbht1#

Only three if condition needed.Also check the method(GET or POST) you are using to submit the form and fetch the data accordingly or use $_REQUEST.

$phase=$_POST['cr_phase'];
$modul=$_POST['cr_modul'];
$crpid=$_POST['cr_pi_id'];

$values = "";
if($phase != '')
{
$values .= "-$phase";
}
if($modul != '')
{
$values .= "-$modul";
}
if($crpid != '')
{
$values .= "-$crpid";
}

    $content = $_POST['cr_code'] . "-" . $_POST['cr_num'] . "-" . $_POST['cr_mon'] . "-" . $_POST['cr_year'] . $values;
rmbxnbpk

rmbxnbpk2#

这个 转换 语句类似于同一表达式上的一系列if语句。在许多情况下,您可能希望将同一变量(或表达式)与许多不同的值进行比较,并根据它所等于的值执行不同的代码段。这正是 转换 声明用于。http://php.net/manual/en/control-structures.switch.php

相关问题