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

PHP中如何在if语句中正确使用isset?POST提交后变量不显示问题求解

问题排查与修复方案
    1. 变量名不一致
      你开头定义的变量是$con_in_recepcion_es,但在elseif分支中调用的是$con_in_recepcion_esp,变量名多了末尾的p,属于拼写错误,自然读取不到对应值。
    1. 未判断POST参数是否存在就直接赋值
      首次进入页面没有POST请求时,直接给变量赋值$_POST里的参数会抛出PHP未定义索引的警告,也可能导致后续isset判断逻辑异常。另外你表单里提交的con_in_recepcion_esp参数没有在开头做接收处理,提交后第二个分支自然拿不到值。
    1. 表单提交逻辑错误
      你给跳转按钮加了onclick="window.location='auditorio.php'",这是GET方式跳转页面,根本不会携带表单的POST参数,点击后相当于直接刷新页面,提交的参数全部丢失。
    1. HTML标签嵌套错误
      第一个container div关闭后,表单内多了一个冗余的</div>标签,标签不匹配可能导致页面渲染异常。

第一步:修改变量接收逻辑

// 先判断参数存在再赋值,避免未定义警告,同时接收表单提交的con_in_recepcion_esp参数
$con_in_recepcion_es = isset($_POST['con_in_recepcion_es']) ? $_POST['con_in_recepcion_es'] : '';
$con_in_recepcion_eng = isset($_POST['con_in_recepcion_eng']) ? $_POST['con_in_recepcion_eng'] : '';
$con_in_recepcion_ori  = isset($_POST['con_in_recepcion_ori']) ? $_POST['con_in_recepcion_ori'] : '';
$con_in_recepcion_esp = isset($_POST['con_in_recepcion_esp']) ? $_POST['con_in_recepcion_esp'] : '';

第二步:修改页面渲染与表单逻辑

<?php if(!empty($con_in_recepcion_es)){ ?>
    <div class="container contenerdor_dideo">
        <iframe src="<?php echo $con_in_recepcion_es; ?>" width="640" height="360" frameborder="0" allow="autoplay; fullscreen; picture-in-picture" allowfullscreen></iframe>
    </div>
    <form method="POST" action="auditorio.php" name="formulario1">
        <input type="text" name="con_in_recepcion_ori" value="<?php echo $con_in_recepcion_ori ?>">
        <input type="text" name="con_in_recepcion_esp" value="<?php echo $con_in_recepcion_es ?>">
        <!-- 移除onclick的GET跳转逻辑,靠js函数提交表单 -->
        <a href="javascript:enviar_formulario()">
            <div id="button-forum-plenarios" >
                <i class="fas fa-globe iconForo"></i>&nbsp;&nbsp;<b>Audio Original</b>
            </div>
        </a>
    </form>
<?php }elseif(!empty($con_in_recepcion_ori)){  ?>
    <input type="text" name="con_in_recepcion_ori" value="<?php echo $con_in_recepcion_esp ?>">
<?php }?>

第三步:补充表单提交的JS逻辑

确保页面存在对应的提交函数:

function enviar_formulario(){
    document.formulario1.submit();
}

内容的提问来源于stack exchange,提问作者julio fernandez

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 05:36:01