Php 如何使用在最后一页上设置的变量动态填充新页?
我是PHP新手,正在尝试构建一个网站来显示存储在MySQL数据库中的电视节目信息。我目前有一个网页,将创建一个表来显示数据库中的信息,但是我希望每一行链接到一个动态填充的页面,其中包含每个节目的更多信息(也从数据库中提取)。我的问题是,我如何让网站知道点击了哪个链接,然后将其保存为变量,这样就可以在新的页面上调用它来填充正确的信息 我目前正在使用它来填充页面Php 如何使用在最后一页上设置的变量动态填充新页?,php,html,mysql,Php,Html,Mysql,我是PHP新手,正在尝试构建一个网站来显示存储在MySQL数据库中的电视节目信息。我目前有一个网页,将创建一个表来显示数据库中的信息,但是我希望每一行链接到一个动态填充的页面,其中包含每个节目的更多信息(也从数据库中提取)。我的问题是,我如何让网站知道点击了哪个链接,然后将其保存为变量,这样就可以在新的页面上调用它来填充正确的信息 我目前正在使用它来填充页面 <!--Populate page with data from SQL--> <?php
<!--Populate page with data from SQL-->
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "media_server";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT show_title, show_desc, thumbnail_path FROM tv_shows WHERE status = 'Y'";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
echo "<table><tr><th></th><th></th></tr>";
// output data of each row
while($row = $result->fetch_assoc()) {
echo "
<tr>
<td>
<img src='../images/thumbnails/tv/".$row["thumbnail_path"]."'>
</td>
<td class='td_title'>
<a href='#' onclick='show_var_set();'>".$row["show_title"]."</a>
</td>
<td class='td_desc'>".$row["show_desc"]."</td>
</tr>";
}
echo "</table>";
} else {
echo "Error - 0 results were returned my the database. Please try again.";
}
$conn->close();
?>
有许多方法可以在页面之间传递值,但其中之一是使用会话变量:
//Include this at the top of your php scripts that use session variables
session_start();
$_SESSION['your_variable_name_here'] = value_you_want_to_store;
然后在要访问此用途的页面上:
$someVariable = $_SESSION['your_variable_name_here'];
有许多方法可以在页面之间传递值,但其中之一是使用会话变量:
//Include this at the top of your php scripts that use session variables
session_start();
$_SESSION['your_variable_name_here'] = value_you_want_to_store;
然后在要访问此用途的页面上:
$someVariable = $_SESSION['your_variable_name_here'];
更改SQL以返回显示id
$sql = "SELECT show_id, show_title, show_desc, thumbnail_path FROM tv_shows WHERE status = 'Y'";
并将其用作show\u var\u set()
函数的参数
<a href='#' onclick='show_var_set(".$row["show_id"].");'>".$row["show_title"]."</a>
然后,show\u var\u set()
函数可以使用该参数从数据库中获取该显示的详细信息。更改SQL以返回show\u id
$sql = "SELECT show_id, show_title, show_desc, thumbnail_path FROM tv_shows WHERE status = 'Y'";
并将其用作show\u var\u set()
函数的参数
<a href='#' onclick='show_var_set(".$row["show_id"].");'>".$row["show_title"]."</a>
然后,show\u var\u set()
函数可以使用该参数从数据库中获取该节目的详细信息。一个选项是将href链接更改为指向此页面,并传递一个可以检索的get变量。这种方法的额外好处是,您可以将特定的节目添加到书签中,然后返回到该页面,因为书签将包含GET变量
因此,您可以将链接更改为以下内容:
echo '<a href="thispage.php?show=', $row['show_title'], '">', $row['show_title'],'</a>';
切记永远不要将用户输入直接放入查询中,而是使用准备好的语句并绑定用户数据以避免SQL注入的风险。一个选项是将href链接更改为指向此页面,并传递一个可以检索的GET变量。这种方法的额外好处是,您可以将特定的节目添加到书签中,然后返回到该页面,因为书签将包含GET变量
因此,您可以将链接更改为以下内容:
echo '<a href="thispage.php?show=', $row['show_title'], '">', $row['show_title'],'</a>';
切记不要将用户输入直接放入查询中,而是使用准备好的语句并绑定用户数据以避免SQL注入的风险