将值传递给另一个页面

时间:2015-10-12 06:58:30

标签: php

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中?

2 个答案:

答案 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'];