我应该如何为PHP中的所有页面创建变量全局变量

时间:2013-04-15 09:50:42

标签: php

问题

我想制作$associate_name$app_key全局变量,以便我可以在任何我想要的页面上访问它们。下面是我的头文件中的代码,get变量将进入索引页面。它可以在索引页面上正常工作,因为$ _GET数据可用,但是当用户移动到下一页但包含相同的头文件时,会抛出错误未定义索引。请让我知道如何在所有页面上提供此变量。谢谢!

代码

$associate_name = $_REQUEST['an'];
$app_key = $_REQUEST['key'];
define('associate_name',$associate_name);
define('app_key',$app_key);

//echo "Sorry but there seems to be a problem in your code. We can't find one of the following: App name or App key";           

$select_associate = "SELECT * FROM associate_account WHERE associate_name='".associate_name."' and app_key='".app_key."'";
$assoc_result = mysql_query($select_associate) or die($select_associate.mysql_error());

if(mysql_num_rows($assoc_result)<=0){
    echo "Oops there seems to be a problem in your iFrame code. Please login into your Associate panel and copy/paste the link again.";
}else{
    $row_assoc = mysql_fetch_assoc($assoc_result);
    $associate_name=ucwords($row_assoc['associate_name']);
    $app_logo=$row_assoc['app_logo'];
    $app_intro_content=$row_assoc['app_intro_content'];
    $bg_color=$row_assoc['bg_color'];
}

3 个答案:

答案 0 :(得分:1)

将您想要的变量作为会话或cookie数据。否则,您将不得不使用global关键字,这是在现代PHP应用程序中执行操作的一种非常糟糕的方式。

就像这样(对于会话):

$_SESSION["myvar"] = <value>;

使用cookies会有点复杂,但这应该让你开始;)

答案 1 :(得分:0)

  • 将所有variables/constants放在单独的文件中constants.php 在您想要访问该变量的任何地方添加constants.php
  • 使用$_SESSION

答案 2 :(得分:0)

如果值被修改,

Sessions是您的选择。否则(该值与您的配置保持不变,而不是来自用户的修改,请转到Constants