0

我们将网站移至带有新 IP 地址的新服务器。什么让我困惑;网站登录会话在新服务器上不起作用,但是当我将数据库 IP 更改为旧服务器时,它们正在工作。

MySQL版本:

  1. 旧服务器 = 5.1.58- 社区
  2. 新服务器 = 5.1.68 - 社区

起初我认为这是一个 PHP 错误,但我现在认为它不是并怀疑它与 MySQL 相关。有谁知道是什么导致了这场冲突?

调试错误:

注意:会话已经开始 - 忽略第 2 行 C:\inetpub\wwwroot\gtest\libs\products.php 中的 session_start() 注意:未定义索引:C:\inetpub\wwwroot\gtest\admin\index 中的 uUserTypeID第 50 行的 .php 注意:未定义的偏移量:C:\inetpub\wwwroot\gtest\admin\index.php 中的 0 第 52 行注意:未定义的偏移量:C:\inetpub\wwwroot\gtest\admin\index.php 中的 0在第 52 行

第 50 行:

GetUserType($_SESSION['uUserTypeID'], $UserTypeID, $UserTypeDescr, $Active_Tag);

第 52 行:

if (($UserTypeDescr[0] == 'Admin') || ($UserTypeDescr[0] == 'Report'))

代码概述:

<?php

    error_reporting(E_ALL);
    ini_set('display_errors', True);



    session_start();
    require '../libs/database.php';
    require '../libs/users.php';
    require '../libs/products.php';
    require '../libs/quotes.php';
    require '../libs/common.php';
    require 'functions.admin.php';



    if (!($_SESSION['uAUID']) > 0)
    {
       DisplayLoginForm();

    }
    else
    {

        **GetUserType($_SESSION['uUserTypeID'], $UserTypeID, $UserTypeDescr, $Active_Tag);**

        **if (($UserTypeDescr[0] == 'Admin') || ($UserTypeDescr[0] == 'Report'))**
        {

            if (isset($_POST['eProdID']) && isset($_POST['eProdGroupID']))
            {
                $_SESSION['page'] = 'edit_product';
                $_SESSION['page_header'] = 'Edit Product';
            }
            else if (isset($_POST['eProdGroupID']))
            {
                $_SESSION['page'] = 'edit_product_group';
                $_SESSION['page_header'] = 'Edit Product Group';
            }
            else if (isset($_POST['eAUID']))
            {
                $_SESSION['page'] = 'edit_user';
                $_SESSION['page_header'] = 'Edit User';
4

1 回答 1

0

检查您包含的文件/代码结构。此错误的常见原因是:

session_start(); 
 /* Random Code here /* 
session_start(); 

只是重复的session_start(); 所以我建议的是查看您收到此错误消息的包含文件/主页,并检查多个session_start();

于 2013-07-24T10:47:39.727 回答