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

PHP使用POST方法提交表单时无法获取title参数是什么原因?

问题根因

表单中标记了disabled属性的输入框,在表单提交时不会被包含在POST数据中,所以你第二个处理文件neworder.inc.php从$_POST里拿不到title2的值。

修复方案

  • 方案1:将disabled属性替换为readonly属性
    readonly属性会让输入框不可编辑,但提交表单时会正常携带值,修改第一个文件里的两个输入框代码即可:
<!-- 把原有代码里的disabled替换为readonly -->
<input type="text" readonly name="bookid2" value="<?= $id2 ?>">
<input type="text" readonly name="title2" value="<?= $title2 ?>">
  • 方案2:额外添加隐藏输入框传递参数
    如果需要保留输入框的禁用样式,可以新增两个hidden类型的input来存储值,用户看不到也不影响表单提交:
<!-- 保留原有disabled的展示输入框,新增以下两行代码 -->
<input type="hidden" name="bookid2" value="<?= $id2 ?>">
<input type="hidden" name="title2" value="<?= $title2 ?>">

额外优化建议

你在错误跳转时直接拼接$title2到URL上,可能会因为书名里的特殊字符导致参数截断异常,建议用urlencode()函数处理后再拼接:

header("location: ../neworder.php?error=emptyinput&bookid=$id2&title=".urlencode($title2));

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.21 14:54:07