You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP+PHPMailer表单:无客户邮箱查询数据时隐藏提交按钮

解决方案:根据客户邮箱是否存在隐藏提交按钮

很简单,咱们直接用PHP的条件判断就能搞定这个需求。核心思路就是:当查询返回的客户邮箱(也就是$email_cliente)为空时,不渲染提交按钮;反之则正常显示。

修改后的完整表单代码如下:

<form method="POST" action="enviarprueba.php" style="font-family: Calibri" >
    <input type="text" value="<?php echo $nombre_cliente;?>" name="nombre" size="35" hidden>
    <?php if (!empty($email_cliente)): ?>
        <input type="text" value="<?php echo $email_cliente;?>" name="emailenvio" size="35" hidden >
    <?php endif; ?>
    <input type="text" value='http://sys.cromatix.cl/documentos/mensaje_cliente1.php?cod_documento=<?php echo $cod_documento;?>' name="cotizacion" size="35" hidden>
    <input type="text" value="Envio Avances Cromatix" name="asunto" size="35" hidden>
    <br>
    <input type="text" value="<br>Estimado Cliente: <br> Nos dirijimos a usted para informarle que la mercaderia ha sido despachada como se evidencia en las imagenes anexas." name="msg" size="35" hidden>
    <?php if (!empty($email_cliente)): ?>
        <input type="submit" value="Enviar Aviso de Entrega" name="submit">
    <?php endif; ?>
</form>

补充说明:

  1. 这里用!empty($email_cliente)做判断很合适——它会同时覆盖变量未定义、为空字符串、为null等多种场景,刚好对应查询语句无数据的情况。
  2. 我把emailenvio这个隐藏字段也放进条件里了,毕竟没有客户邮箱的话,这个字段留着也没用,一起隐藏更合理。如果你的业务逻辑需要保留这个字段,直接删掉这部分的条件判断就行,只保留提交按钮的判断即可。
  3. 建议你在执行查询语句后,先初始化$email_cliente = '';,查询到数据再赋值,这样能避免出现未定义变量的PHP警告。

内容的提问来源于stack exchange,提问作者Cristobal Hernandez

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.06 07:37:30