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

如何将点击的电影海报名称传递至下一个PHP页面?

电影海报点击传递名称到下一页的PHP实现方法

方法一:不用form,通过GET参数传递

直接给海报图片包裹<a>标签,把电影名称作为URL参数传递到详情页:

<!-- 首页的海报代码 -->
<a href="movie_detail.php?name=<?php echo urlencode('复仇者联盟'); ?>">
  <img src="avenger_poster.jpg" alt="复仇者联盟海报">
</a>
<a href="movie_detail.php?name=<?php echo urlencode('星际穿越'); ?>">
  <img src="interstellar_poster.jpg" alt="星际穿越海报">
</a>

在详情页movie_detail.php中获取参数:

<?php
// 先判断参数是否存在,避免报错
if (isset($_GET['name'])) {
    // 解码URL编码的名称,防止中文乱码
    $movie_name = urldecode($_GET['name']);
    echo "你选择的电影是:" . $movie_name;
} else {
    echo "请选择一部电影";
}
?>

注意:用urlencode处理电影名称,避免特殊字符导致URL解析错误,获取时用urldecode还原。

方法二:用form表单,通过POST传递

给每个海报单独创建表单,把电影名称放在隐藏字段里,点击海报提交表单:

<!-- 首页的海报代码 -->
<form action="movie_detail.php" method="post">
  <input type="hidden" name="movie_name" value="复仇者联盟">
  <!-- 把按钮样式改成无边框无内边距,看起来就是点击图片提交 -->
  <button type="submit" style="border: none; padding: 0; background: transparent;">
    <img src="avenger_poster.jpg" alt="复仇者联盟海报">
  </button>
</form>

<form action="movie_detail.php" method="post">
  <input type="hidden" name="movie_name" value="星际穿越">
  <button type="submit" style="border: none; padding: 0; background: transparent;">
    <img src="interstellar_poster.jpg" alt="星际穿越海报">
  </button>
</form>

在详情页movie_detail.php中获取POST参数:

<?php
if (isset($_POST['movie_name'])) {
    $movie_name = $_POST['movie_name'];
    echo "你选择的电影是:" . $movie_name;
} else {
    echo "请选择一部电影";
}
?>

你之前的问题原因

图片的ID属性不会被自动提交到服务器,POST/GET只能获取表单元素(input、button等)的name属性对应的值,所以直接通过ID获取是无效的。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 22:25:04