Php 将必填字段更改为可选字段

Php 将必填字段更改为可选字段,php,forms,Php,Forms,我的PHP知识有限,我需要将表单中的字段从必填字段更改为可选字段--电子邮件字段 以下是功能代码: function apostherapy_leads_form($options) { $defaults = array( 'id' => 'frmLead' . rand(10, 99), 'title' => '', 'msg_success' => 'תודה רבה', 'msg_failure' => 'אירעה שגי

我的PHP知识有限,我需要将表单中的字段从必填字段更改为可选字段--
电子邮件字段

以下是功能代码:

function apostherapy_leads_form($options) {

$defaults = array(
'id'           => 'frmLead' . rand(10, 99),
'title'        => '',
'msg_success'  => 'תודה רבה',
'msg_failure'  => 'אירעה שגיאה. נא לנסות שוב. תודה',
'url'          => 'http://leads.apostherapy.co.il/api/receiver.asp',
'campaign'     => '',
'source'       => get_bloginfo('name', 'display'),
'url_success'  => '',
'url_failure'  => '',
'placeholders' => false,
'with_join'    => false,
'ajax'         => true,
'label_name'   => 'שם מלא',
'label_phone'  => 'טלפון',
'label_email'  => 'אימייל',
'label_join'   => 'הנני מאשר קבלת חומר פרסומי מאפוסתרפיה',
'label_send'   => 'שלח',
);

$defaults['name'] = $defaults['id'];
$options = !empty( $options ) ? array_merge( $defaults, $options ) : $defaults;
ob_start();

if (!empty($options['title'])): ?><h2><?= $options['title'] ?></h2><?php endif; ?>
<div class="leads<?php if ($options['ajax']): ?> ajax<?php endif; ?>">
<p class="success"><?= $options['msg_success'] ?></p>
<p class="failure"><?= $options['msg_failure'] ?></p>
<form id="<?= $options['id'] ?>" name="<?= $options['name'] ?>" action="<?= $options['url'] ?>" method="post">
  <input type="hidden" id="nCampaignID" name="nCampaignID" value="<?= $options['campaign'] ?>">
  <input type="hidden" id="sSource" name="sSource" value="<?= $options['source'] ?>">
  <?php if (!empty($options['url_success'])): ?><input type="hidden" id="sSuccessRedirURL" name="sSuccessRedirURL" value="<?= $options['url_success'] ?>"><?php endif; ?>
  <?php if (!empty($options['url_failure'])): ?><input type="hidden" id="sFailedRedirURL" name="sFailedRedirURL" value="<?= $options['url_failure'] ?>"><?php endif; ?>

  <p>
    <?php if (!$options['placeholders']): ?><label for="sFullName"><?= $options['label_name'] ?></label><?php endif; ?>

    <input name="sFullName"<?php if (!$options['placeholders']): ?> id="sFullName"<?php endif; ?> type="text" value="" maxlength="30"<?php if ($options['placeholders']): ?> placeholder="<?= $options['label_name'] ?><?php endif; ?>">
  </p>
  <p>
    <?php if (!$options['placeholders']): ?><label for="sPhone"><?= $options['label_phone'] ?></label><?php endif; ?>
    <input name="sPhone"<?php if (!$options['placeholders']): ?> id="sPhone"<?php endif; ?> type="tel" value="" maxlength="11"<?php if ($options['placeholders']): ?> placeholder="<?= $options['label_phone'] ?><?php endif; ?>">
  </p>
  <p>
    <?php if (!$options['placeholders']): ?><label for="sEmail"><?= $options['label_email'] ?></label><?php endif; ?>

    <input name="sEmail"<?php if (!$options['placeholders']): ?> id="sEmail"<?php endif; ?> type="email" value="" maxlength="50"<?php if ($options['placeholders']): ?> placeholder="<?= $options['label_email'] ?><?php endif; ?>">
  </p>
  <p>
    <input type="submit" class="clsButton" value="<?= $options['label_send'] ?>">
    <?php if ($options['with_join']): ?><label for="sComments" class="join-newsletter"><input type="checkbox"checked='checked' name="sComments"<?php if (!$options['placeholders']): ?> id="sComments"<?php endif; ?> value="הירשם לניוזלטר קבל עדכונים למייל"><span><?= $options['label_join'] ?></span></label><?php endif; ?>
  </p>
</form>
</div>
<?php
return ob_get_clean();
}
add_shortcode( 'leads_form', 'apostherapy_leads_form' );
function-apostherapy\u-leads\u-form($options){
$defaults=数组(
“id”=>“frmLead”.rand(10,99),
'标题'=>'',
“msg_success”=>“msg•u success”,
“msg_failure”=>“msgאu failure”=>“msgאu failure”=>“msgאu failure”,
'url'=>'http://leads.apostherapy.co.il/api/receiver.asp',
“活动”=>“”,
'source'=>get_bloginfo('name','display'),
“url_success'=>”,
“url_失败”=>“”,
“占位符”=>false,
'with_join'=>false,
“ajax”=>正确,
“标签名称”=>“标签名称”,
“手机标签”=>“手机标签”,
“label_email”=>“labelיימיל”,
“标签连接”=>“标签连接”,
“标签发送”=>“标签发送”,
);
$defaults['name']=$defaults['id'];
$options=!empty($options)?array_merge($defaults,$options):$defaults;
ob_start();
如果(!empty($options['title']):?>


我假设它是强制性的,因为PHP代码正在检查提交的数据,因为HTML代码中没有任何内容将其定义为强制性字段

因此,您需要向我们展示处理它的PHP

可能是这样的:

if(!isset($_POST['sEmail'])){echo "error";}

您只需删除相关部分。

此字段是如何强制的?请同时包含处理html元素的代码。然后我们可以将其设置为可选。让我们看看代码Hi-我更新了我的问题,以包含完整的功能-我希望它将帮助您-谢谢如果您要发布这么多代码,运行它是一个好主意虽然我先是个美容师。你怎么这么肯定?我从来没说过我对它有把握,我只是说“我在假设”.我需要看看是什么导致这个字段成为强制性的,因为它不是这个代码,对吗?你不应该在这里假设。我绝对应该在这里假设,因为他没有给我足够的信息。我认为我的假设非常公平,你似乎一直在质疑我的每一个答案。你能让我去做吗?我想同意你可以给出你的假设,但最好的地方是评论“部分,而不是答案”。:)