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

PHP带月份判断的跳转按钮代码修复求助

解决按钮跳转问题的修正代码

你的问题出在两个核心错误上:

  • 按钮元素本身没有href属性,原正常代码是通过onclick事件触发页面跳转,你在else分支里错误地用了href;
  • 在PHP的echo字符串里嵌套了<?php ?>标签,这完全没必要——当前已经在PHP代码块里,直接拼接变量和函数返回值即可。

修正后的完整代码如下:

<?php 
$month = date('m'); 
if ($month == 1 || $month == 12) { 
    echo "<button style='vertical-align:middle' class='button' disabled>Add new instrument</button></br><p>Add new instrument is <em>not-active.</em></p>"; 
} else { 
    // 提前拼接跳转URL,让代码更清晰
    $addUrl = base_url() . 'in/' . $ao->attr_lab_code . '/' . $ao->id_ins_code . '/add';
    echo "<button class='button' style='vertical-align:middle' onclick=\"location.href='$addUrl';\"><span>Add new instrument</span></button>"; 
} 
?>

关键修改点说明:

  1. 把else分支里的href替换回原代码的onclick="location.href='...'"写法,符合按钮触发跳转的逻辑;
  2. 提前将跳转URL拼接成变量$addUrl,避免在echo字符串里直接嵌套复杂的函数和变量拼接,降低出错概率;
  3. 修复了原代码里的标签闭合错误(之前写的</>应为</button>);
  4. 补全了<p>标签的闭合,保证HTML结构合法;
  5. 将or替换为PHP更常用的||逻辑或运算符(两者功能一致,仅风格差异)。

修改后,2-11月的按钮就能正常跳转到目标链接http://base_url/in/labcode/inscode/add了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.24 19:06:29