如何在不使用表单的情况下将PHP页面中的变量传递到另一页面?

时间:2013-04-20 10:36:11

标签: php facebook

我的项目使用与Facebook相关。当用户登录$user将变量时,在此页面中知道此变量,但对于其他页面则为no。所以我想知道如何使用没有表单的PHP传递变量?我正在尝试使用声明会话,但这是不可能的,因为它处于条件

        <?php 
             if ($user):            
                 echo 'Name:'. $user_profile['id']."<br />";
                 echo 'Name:'. $user_profile['name']."<br />";
             else: 
        ?> 

$user_profile['id']是我想传递到另一页的内容。

3 个答案:

答案 0 :(得分:1)

你可以用会话

来做
session_start();
$_SESSION['user_profile'] = $user_profile['id'];

并在每个页面中使用会话变量,以获得存储的变量

在其他每个页面上都可以像

那样检索变量值
    session_start();
    $user_profile['id'] = $_SESSION['user_profile'];  

答案 1 :(得分:1)

您可以使用会话来存储数据并在其他页面中使用

只需在页面顶部添加会话

session_start();

然后

//On first page
$_SESSION['user_profile'] = $user_profile['id'];

//On second page
$user_profile = $_SESSION['user_profile'];

所以现在你可以回应它

echo $user_profile;

UPDATED

我认为您也可以使用cookies来执行此操作

//One first page
$_COOKIE['variable_name'] = $variable_value;

//On second page
$variable_value = $_COOKIE['variable_name'];

这两者之间的区别在于,在第一种情况下,变量将存储在服务器端的会话中,而cookie将在客户端存储变量。

答案 2 :(得分:1)

尝试APC ..

在第一页上使用这个

    <?php
    $bar = $user_profile['id'];
    apc_store('foo', $bar);
?>

并在其他页面上执行此操作

<?php
    apc_fetch('foo');
    ?>

使用替代php catch .reduce比会话节省50%的时间

APC Functions

apc_store - 在数据存储中缓存变量

apc_fetch - 从缓存中获取存储的变量