PHP + HTML:列表 - >细节流程

时间:2013-06-19 06:56:00

标签: php html

我有一个表格中的项目列表,旁边的项目我有一个“显示详细信息”元素。这个元素有:

onClick="drilldown(this.id)";

function drilldown(aClickedId) {
    // do magic, redirect to showDetails.html?id=aClickedId
}

然后我想将ID作为参数传递给HTML页面并将用户重定向到它。 HTML页面将调用一个php脚本,该脚本使用相应部分中DB的数据填充视图:

showDetails.html

<?php 
    $_GET['id'] = getIdFromURL();
    include "showDetails.php"; ?>

这是正确的做法吗?如果是这样,当我“包括”它时,如何将参数发送到“showDetails.php”?

2 个答案:

答案 0 :(得分:1)

我不明白究竟是什么问题。在我看来,您可以通过get方法传递id参数,因为您将用户重定向到showDetails.php

$id = ""; // store the value of id

<a href="showDetails.php?id=$id">Show Details</a>

答案 1 :(得分:1)

您可以在Javascript中重定向:

function drilldown(aClickedId) {
    window.location = "showDetails.html?id=" + aClickedId;
}

默认情况下,showDetails.html不会在其中执行PHP代码,因为只有.php文件将被解析并作为PHP执行。可以将Web服务器配置为解析和执行.html文件,但默认情况下不会。

你不需要这个:

$_GET['id'] = getIdFromURL();

您需要做的就是在showDetails.php中使用$_GET['id']。所有包含都可以访问$_GET数组,因为它是一个超全局数据库。当包含一个脚本时,它只是简单地插入到该点,并且就像它是父节点的一部分一样被执行,因此它可以访问包含时可用的所有变量和函数。

很难评论这种方法是否是最佳做法,因为我认为没有足够的信息来说明你在做什么。例如,如果获取单击的元素是锚点(<a></a>),那么您根本不需要Javascript重定向,只需将ID放入href。