test1.php
<?php
//dbconnection
$q = "SELECT * FROM user WHERE user_id = 1";
$r = mysqli_query($dbc, $q);
$row = mysqli_fetch_array($r, MYSQLI_ASSOC);
echo $row['user_name'].'<a href="test2.php" target="_blank">more..</a>';
?>
我想在没有表单的情况下将用户名传递给test2.php。如何将用户名传递到test1.php中的隐藏字段并将用户名显示在test2.php中?
答案 0 :(得分:3)
您可以将值存储在会话中,并使用test2.php
全局信息将其提取到$_SESSION
页面。
在test1.php
中,就像这样
<?php
session_start(); // This has to be the first thing called in PHP
// Connection and query goes here
$_SESSION['user_name'] = $row['user_name'];
?>
并在test2.php
<?php
session_start();
echo $_SESSION['user_name'] ." was sent from test1.php";
// unset($_SESSION['user_name']);
// This line above removes the session-variable, and it has to be set again if you want to use it further.
?>
请注意,必须在尝试访问session_start();
全局变量的所有页面上调用$_SESSION
,并且必须在PHP脚本中调用它。会话可以全局访问,不限于一页。
答案 1 :(得分:1)
有多种方法可以做到这一点
你可以start_session();
然后
做
$_SESSION['user_name'] = $row['user_name'];
并且在test2.php上你可以做到(假设你已经开始使用start_session();
进行会话)
echo $_SESSION['user_name'];
您也可以
echo $row['user_name'].'<a href="test2.php?user_name='.$row['user_name'].'" target="_blank">more..</a>';
在test2.php上你可以做到
echo $_GET['user_name'];