簡體   English   中英

PHP會話登錄腳本無法在本地服務器上安裝的UniServ上運行

[英]php session login script not working on UniServ installed on local server

我有一個登錄腳本,該腳本在共享主機(Windows8服務器)上托管的生產服務器上運行良好。

在WindowsXP和UniServ(例如XAMPP或WAMP)的本地服務器(未連接到Internet)上嘗試使用相同的腳本。 它只是給一個空白屏幕。

因此,我嘗試測試一些腳本,如果Apache / Mysql / PHP中有任何問題。 這三個都可以在Uniserv上正常工作。

我嘗試檢查會話路徑的配置,這一切都很好。 如果相同的文件必須在本地服務器上工作,則不知道還需要檢查什么。 需要幫忙。

請檢查以下登錄腳本:

    <?php // accesscontrol.php
    include_once 'common.php';
    include_once 'db2.php';

    session_start();

    $uid = isset($_POST['uid']) ? $_POST['uid'] : $_SESSION['uid'];
    $pwd = isset($_POST['pwd']) ? $_POST['pwd'] : $_SESSION['pwd'];

    if(!isset($uid)) {
      ?>
      <!DOCTYPE html PUBLIC "-//W3C/DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
      <html xmlns="http://www.w3.org/1999/xhtml">
      <head>
    <title>Test - Login</title>
        <meta http-equiv="Content-Type"
          content="text/html; charset=iso-8859-1" />
    <head>
    <style type="text/css">
    <!--
    .style1 {
        font-size: 16px;
        font-family: Verdana, Arial, Helvetica, sans-serif;
    }
    .style3 {
        font-size: 12px;
        font-family: Verdana, Arial, Helvetica, sans-serif;
    }

    body {
        background-color: #D7F0FF;
        margin-left: 0px;
        margin-top: 0px;
        margin-right: 0px;
        margin-bottom: 0px;
    }

    -->
    </style>

      </head>
    <body>
      <h1 class="style1"> <br><br>Testing Login Required </h1>
      <span class="style3"><br>
      You <strong>must login to access this area </strong>of the site. <br>
      <br>
      If you are not a registered user, please contact your Admin
         to sign up for instant access!</span>
      <p><form method="post" action="<?=$_SERVER['PHP_SELF']?>">

        <span class="style3">User ID:&nbsp;&nbsp;&nbsp;&nbsp;    
        <input type="text" name="uid" size="12" />
        <br>
        <br />
        Password:</span>    
        <input type="password" name="pwd" SIZE="12" />
        <br>
        <br />
        <input type="submit" value="Login" />
      </form></p>

    </body>
      </html>
      <?php
      exit;
    }

    $_SESSION['uid'] = $uid;
    $_SESSION['pwd'] = $pwd;

    dbConnect("exceltron");
    $sql = "SELECT * FROM user WHERE
            userid = '$uid' AND password = '$pwd'";
    $result = mysql_query($sql);
    if (!$result) {
      error('A database error occurred while checking your '.
            'login details.\\nIf this error persists, please '.
            'contact you@example.com.');
    }

    if (mysql_num_rows($result) == 0) {
      unset($_SESSION['uid']);
      unset($_SESSION['pwd']);
      ?>

      <!DOCTYPE html PUBLIC "-//W3C/DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
      <html xmlns="http://www.w3.org/1999/xhtml">
      <head>
        <title> Access Denied </title>
        <meta http-equiv="Content-Type"
          content="text/html; charset=iso-8859-1" />
        <style type="text/css">
    <!--
    .style1 {
        font-size: 16px;
        font-family: Verdana, Arial, Helvetica, sans-serif;
    }
    .style3 {
        font-size: 12px;
        font-family: Verdana, Arial, Helvetica, sans-serif;
    }
    -->
    </style>  

      </head>
      <body>
      <br/>
      <br/>

      <h1 class="style1"> Access Denied </h1>
      <p class="style3">Your user ID or password is incorrect, or you are not a
         registered user on this site. To try logging in again, click
         <a href="<?=$_SERVER['PHP_SELF']?>">here</a>. To access, please contact our Admin !</a>.</p>
      </body>
      </html>
      <?php
      exit;
    }

    $username = mysql_result($result,0,'fullname');
    $_SESSION['user'] = mysql_result($result,0,'userid');
    ?>

db.php:

    <?php // db2.php this is only for accesscontrol.php

    $dbhost = 'localhost';
    $dbuser = 'exceltron';
    $dbpass = '********';

    function dbConnect($db='') {
        global $dbhost, $dbuser, $dbpass;

        $dbcnx = @mysql_connect($dbhost, $dbuser, $dbpass)
            or die('The site database appears to be down.');

        if ($db!='' and !@mysql_select_db($db))
            die('The site database is unavailable.');

        return $dbcnx;
    }
    ?>

common.php

    <?php // common.php

    function error($msg) {
        ?>
        <html>
        <head>
        <script language="JavaScript">
        <!--
            alert("<?=$msg?>");
            history.back();
        //-->
        </script>
        </head>
        <body>
        </body>
        </html>
        <?
        exit;
    }
    ?>

打開錯誤報告並查看錯誤日志,然后檢查phpinfo()那里有什么有趣的東西。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM