变量在 (2) PHP 个脚本之间不起作用

Variabls not working between (2) PHP Scripts

我有 (2) PHP 脚本:一个用 PHP 4.0 编写,第二个用 PHP 5.6 编写(我的 ISP 升级了服务器,他们只 运行 PHP 现在是 5.6,所以我不得不将 4.0 脚本转换为 5.6)

然而,当我使用 PHP 4.0 脚本时,在 ISP 升级之前一切正常,但是当我使用 PHP 5.6 脚本(已转换)时,该脚本无法连接到mySQL 服务器或 return 任意值

我想知道初始变量是否有问题,或者第二个 PHP 5.6 脚本是从早期的 PHP 4.0 脚本

谢谢

这是 (2) PHP 脚本

PHP 4.0 脚本

    <?php

    $userdb="var1";

    $pass="var2";

    $database="var3";

    mysql_connect("sql.servername.com",$userdb,$pass);


    @mysql_select_db($database) or die ( header('location: status4.htm') );


    $match = "select id from USER_ACCOUNTS where username = '$username' and password = '$password'";

    $qry = mysql_query($match)
    or die ( header('location: status.htm?status=9') );
    $num_rows = mysql_num_rows($qry); 

    // Valid Username and Password

    if ($num_rows > 0) { 

    $qry = "SELECT * FROM USER_ACCOUNTS WHERE username like '%" . $username . "%'";
    $res = mysql_query($qry);
    $output='';


    while($row = mysql_fetch_assoc($res)){

    // loop through all returned results

    $output .= '&viewUsername=' . $row['viewUsername'] . '&viewPassword=' . $row['viewPassword'] . '&username=' . $row['username'] . 

    '&password=' . $row['password'] . '&name=' . $row['name'] . '&title=' . $row['title'] . '&email=' . $row['email'] . '&admin=' . 

    $row['admin'] . '&file=' . $row['file'] . '&file2=' . $row['file2'] . '&file3=' . $row['file3'] . '&file4=' . $row['file4'];

    echo "&status=1";

    echo $output;

    }

    }

    ?>

这里是 PHP 5.6 脚本

 <?php

//error_reporting(1);
//ini_set('display_errors', '1');

// mysql connection
$db_host = 'sql.servername.com';
$db_user = 'var1';
$db_pass = 'var2';
$db_name = 'var3';

$dbh = new PDO('mysql:host='.$db_host.';dbname='.$db_name.';charset=utf8', $db_user, $db_pass);

// submit form
if (isset($_POST['submit']))
{

    $username = $_POST['username'];
    $password = $_POST['password'];

    $stmt = $dbh->prepare("SELECT * FROM USER_ACCOUNTS WHERE username = :username AND password = :password");
    $stmt->bindParam(':username', $username);
    $stmt->bindParam(':password', $password);
    $stmt->execute();
    $number_of_rows = $stmt->fetchColumn();

    // Valid Username and Password
    if ($number_of_rows > 0)
    {
        $row = $stmt->fetchAll(); 

        $output = '';

        while($row)
        {
            // loop through all returned results
            $output .= '&viewUsername=' . $row['viewUsername'] . '&viewPassword=' . $row['viewPassword'] . '&username=' . $row

['username'] . '&password=' . $row['password'] . '&name=' . $row['name'] . '&title=' . $row['title'] . '&email=' . $row['email'] . 

'&admin=' . $row['admin'] . '&file=' . $row['file'] . '&file2=' . $row['file2'] . '&file3=' . $row['file3'] . '&file4=' . $row

['file4'];
            echo "&status=1";
            echo $output;
        }
    }

}

?>

已解决 - 只需在脚本中将 $REMOTE_ADDR 替换为 $_SERVER['REMOTE_ADDR'] 即可从 PHP 4.0 转换为 PHP 5.6 :)