所以我试图读取这个遗留代码 - 我读这个错误,或者代码重复多次?它似乎是以多种不同的方式分配$ cuid多个不同的时间 - 它是否获得了不同的值?我能看到的唯一两种方式是通过cookie和GET请求。我应该如何阅读这段代码?
$id = "";
$cuid = "";
session_start();
if (isset($_SESSION['id'])) {
$id = $_SESSION['id'];
$cuid = $id;
$valid_user = $_SESSION['valid_user'];
$cuname = $_SESSION['cuname'];
$website = $_SESSION['website'];
$site = $website;
$email_contact = $_SESSION['email_contact'];
}
$cuid = $_GET['cuid'];
include_once("dbfunctions.php");
if (isset($_SESSION['id'])) {
$cuid = $_SESSION['id'];
} elseif (isset($cuid)) {
$_SESSION['id'] = $cuid;
}
编辑:好吧,我现在该怎么会对它使用$ _GET [ 'CUID'],如果$ _GET [ 'CUID']有一个值,不管是什么。基本上,有几个网站使用它,我们希望用户能够从其中的几个网站进行导航,并且每次都会获得不同的徽标,但是如果他们不从其他网站导航,那么在整个体验中保持相同的徽标。
我只是检查$ _GET ['cuid']是否有一个值,如果它做了,别的什么都不做,但是如果没有,请检查$ _SESSION ['id'] 。我在正确的道路上吗?
这肯定是不好的和冗余代码。它可以减少一半。您应该与CSI:PHP分享。 http://csiphp.com/blog/ – 2012-02-13 19:09:13
它从查询字符串(GET)中提取'cuid'。但是,如果设置了$ _SESSION ['id']',那么它将'cuid'设置为该会话变量。如果没有'$ _SESSION ['id']'set已经设置,那么在'elseif'上,它将$ _SESSION ['id']'设置为查询字符串'cuid'。 – seanbreeden 2012-02-13 19:10:11
它看起来像**糟**遗产代码:D – aletzo 2012-02-13 19:10:57