仅当在同一表单的另一个字段中输入数据时才传递表单字段数据

Passing Form Field Data Only If Data Is Entered In Another Field In Same Form

我的网络表单中有一个 'Phone Number' 字段。

我还有一个 'hidden' 表单字段,其中包含一个 unicode phone 图标 [☎]。

输入 phone 数字对我的站点访问者来说是可选的。

所以...如果他们选择不在表单的 phone 数字字段中输入数字,我不希望图标显示在 uploadResults.php 页面上。

我只希望他们在 phone 数字字段中输入数据时显示该图标。

我不知道如何实现。但是我在我的问题中包含了一个精简版的表格和结果 [php] 页面。

如有任何帮助,我们将不胜感激,因为我需要在网站的几个不同区域中加入相同类型的功能。

提前致谢。

表单页面代码如下:

    <!DOCTYPE html>
    <html>
    <head>
    <title>The Form</title>

    <style>

    .container { margin-top:50px; margin-left:40px; }
    .fieldTitle { font-family: Arial, Helvetica, sans-serif; font-size: 12pt; }
    .phoneIcon { margin-bottom:10px; display:none;} /* This field hidden in form */
    .phoneNumber { margin-top:10px; width:200px; height:25px; font-family:Arial, Helvetica, sans-serif; font-size: 12pt; }
    .submitButton { margin-top:30px; font-family:Arial, Helvetica, sans-serif; font-size: 12pt; }

    </style>

    </head>
    <body>

    <form action="uploadResults.php" method="post" enctype="multipart/form-data">

    <div class="container">

    <div class="fieldTitle">Phone Number:</div>

    <div><input class="phoneIcon" name="phoneIcon" id="phoneIcon" value="&#9742;" readonly/></div>

    <div><input class="phoneNumber" name="phoneNumber" id="phoneNumber" autocomplete="off"/></div>

    <div><input class="submitButton" type="submit" name="submit" value="Submit"></button></div>

    </div>

    </form>

    </body>
    </html>

这里是 uploadResults.php 页面代码:

    <?php ob_start(); ?> 

    <!DOCTYPE html>
    <html>
    <head>
    <title>Upload Results</title>

    <style>

    body{margin:0;}
    .numberWrapper {margin: 100px 0px 0px 30px; }
    .phoneIcon {font-size: 20px;}
    .phoneNumber {font-family:Arial, Helvetica, sans-serif; font-size:12pt;}

    </style>

    </head>
    <body>

    <div class="numberWrapper">
    <span class="phoneIcon"><?php $phoneIcon = ($_POST['phoneIcon']); echo  $phoneIcon;?>&nbsp;</span>
    <span class="phoneNumber"><?php $phoneNumber = ($_POST['phoneNumber']); echo  $phoneNumber;?></span>
    </div>


    </body>
    </html>

    <?php echo ''; (ob_get_contents()); ?>

试试这个:

<?php if(!empty($_POST['phoneNumber'])){ ?>
    <span class="phoneIcon"><?php $phoneIcon = ($_POST['phoneIcon']); echo  $phoneIcon;?>&nbsp;</span>
    <?php } ?>
    <span class="phoneNumber"><?php $phoneNumber = ($_POST['phoneNumber']); echo  $phoneNumber;?></span>

您可以查看下面提到的解决方案

<?php if($_POST['phoneNumber'] != NULL || $_POST['phoneNumber'] != ''): ?>
      <div class="numberWrapper">
    <span class="phoneIcon"><?php $phoneIcon = ($_POST['phoneIcon']); echo  $phoneIcon;?>&nbsp;</span>
    <span class="phoneNumber"><?php $phoneNumber = ($_POST['phoneNumber']); echo  $phoneNumber;?></span>
    </div>
<?php endif; ?>
Check whether telephone number is posted and not equal to null.
    <?php ob_start(); ?> 

    <!DOCTYPE html>
    <html>
    <head>
    <title>Upload Results</title>

    <style>

    body{margin:0;}
    .numberWrapper {margin: 100px 0px 0px 30px; }
    .phoneIcon {font-size: 20px;}
    .phoneNumber {font-family:Arial, Helvetica, sans-serif; font-size:12pt;}

    </style>

    </head>
    <body>
<?php if( isset($_POST['phoneIcon']) && $_POST['phoneIcon'] != '')
    { ?>
    <div class="numberWrapper">

    <span class="phoneIcon"><?php $phoneIcon = ($_POST['phoneIcon']); echo  $phoneIcon;?>&nbsp;</span>

    <span class="phoneNumber"><?php $phoneNumber = ($_POST['phoneNumber']); echo  $phoneNumber;?></span>
    </div>
<?php } ?>


    </body>
    </html>

    <?php echo ''; (ob_get_contents()); ?>

您需要使用 issetempty

<?php 

if(isset($_POST['phoneNumber']) && !empty($_POST['phoneNumber']))
{?>
<div class="numberWrapper">
    <span class="phoneIcon"><?php $phoneIcon = ($_POST['phoneIcon']); echo  $phoneIcon;?>&nbsp;</span>
    <span class="phoneNumber"><?php $phoneNumber = ($_POST['phoneNumber']); echo  $phoneNumber;?></span>
    </div>
<?php}?>