gpt4 book ai didi

javascript - 如何将 php session 转换为可用变量

转载 作者:行者123 更新时间:2023-11-29 04:18:10 25 4
gpt4 key购买 nike

我创建了一个站点,我在数据库中有 2 个表。第一页有 2 个链接,单击时将链接的名称发送到 php session 。然后它会将您带到一个页面,它的目的是根据已保存在 php session 中的数据查看其中一个数据库。

我想要实现的是让这些链接打开该文件内的表格,单击链接时该表格将打开。我不想为每个表创建一个新的 .php 文件,因为我希望能够简单地在一个文档中添加和访问这些表,但不能超过一个。

这是我的问题。在该文档上,它是否让我从我的数据库中访问表,我想在变量中访问(下面的代码)。下面的代码将解释我需要知道的内容。

这是我查看表中数据的代码

 $servername = "localhost";
$username = "root";
$password = "root";
$dbname = "myDB";


$conn = new mysqli($servername, $username, $password, $dbname);

if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}

$sql = "SELECT id, firstname, lastname FROM tablenamehere ORDER BY id DESC LIMIT 500";
$result = $conn->query($sql);

if ($result->num_rows > 0) {

while($row = $result->fetch_assoc()) {
echo "<p>". $row["firstname"]. " " . $row["lastname"] . "</p>";
}
} else {
echo "0 results";
}

$conn->close();

>下面的代码是我想要的变量,该变量具有我在页面上单击的链接的名称,单击该链接时该变量将重定向到该页面。我从 php session 中收集的变量我想出现在 tablenamehere 文本中。

 $sql = "SELECT id, firstname, lastname FROM tablenamehere  ORDER BY id DESC LIMIT 500";
$result = $conn->query($sql);

我目前创建 php session 但尚未连接到链接的代码如下。

<html>
<body>
<a href="test1.php?a=newtable">Register Now!</a>
</body>
</html>
<?php

session_start();
?>

<?php
if(isset($_GET['a'])){
$_SESSION['link']=$_GET['a'];
}

echo "the veriable is " . $_SESSION['link'] . "<br>";

我只想在这个 php 文件中打开多个表。感谢您的帮助,有任何问题请在下方留言。

最佳答案

如果我们可以假设您将表名作为参数传递(有点危险),那么您可以这样做

<?php

if(isset($_GET['a'])){
$_SESSION['link']=$_GET['a'];
}


$sql = "SELECT id, firstname, lastname
FROM {$_SESSION['link']}
ORDER BY id
DESC LIMIT 500";

但更好的方法可能是将指标传递给您要使用的表。这样你就不会在以太坊中传递真实的表名以供人们查看

if(isset($_GET['a'])){
$_SESSION['link']=$_GET['a'];
}


switch ($_SESSION['link']) {
case : 'a'
$tbl_name = 'table1';
break;
case : 'b'
$tbl_name = 'table2';
break;
default:
$tbl_name = 'default_table';
}


$sql = "SELECT id, firstname, lastname
FROM $tbl_name
ORDER BY id
DESC LIMIT 500";

关于javascript - 如何将 php session 转换为可用变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34944840/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com