2

所以我有一个简单的工作用户登录脚本,可以携带 myusername 和 mypassword。

我正在尝试(但失败)做的是从该用户的 Mysql 数据库中调用一条特定的信息来修改他们所在的页面。

MYSQL DATABASE ('members'): 
id:1
username:cornellmatt
password:encrypted(md5)
email:example@email.com
active: 0/1
**permission:1**

我需要提取的字段是权限,因为它包含与用户当前所在的场景相关的数字。为了做到这一点,我在您登录后到达的页面上运行 Jquery,该页面链接到 connect.php

<script type="text/javascript" src="jquery-1.9.1.min.js"></script> 
<script type="text/javascript">

    $.get("connect.php", function(data) {
    alert("Data Loaded: " + data);
        });

我知道我的 JavaScript 目前存在各种问题,但现在我想完成服务器端的工作,以便我可以完全专注于 JavaScript 我的 Php 的(当前)问题是它没有似乎从数据库中得到任何东西,我知道它是连接的,它只是不会回显“权限”中的值;

连接.php:

<?php
include "Session.php"; 

$dbhost = "host";
$dbuser = "username";
$dbpass = "password";
$dbname = "databasename";
    //Connect to MySQL Server
mysql_connect($dbhost, $dbuser, $dbpass);
    //Select Database
mysql_select_db($dbname) or die(mysql_error());
    // Retrieve data from Query String


//this selects everything for the current user, ready to be used in the script below

$result = mysql_query("SELECT * FROM members WHERE username = '$myusername' LIMIT 1");

//this function will take the above query and create an array
while($row = mysql_fetch_array($result))
  {

 //with the array created above, I can create variables (left) with the outputted array (right)
$permission = $row['permission'];
  } 


        echo '<u><b>Permision ID:</b></u> - - No:' . $row['permission']  ;
?>

如果您想知道“Session.php”是什么,它是一个处理启动的脚本,也是我知道我仍然登录的原因。感谢在上一篇文章中帮助我的 Daryl Gill。

会话.php

 <?php
session_start();

if (!isset($_SESSION['Username']))
{
 include "Logout.php"; 
 exit;
// session is not set, so enforce logout
}
?>

所以我的任务是,为什么即使我直接进入页面,connect.php 也不回显值权限?请帮忙,我目前正在为我的学生项目编写代码,并且已经转了好几天。

4

3 回答 3

1

$_SESSION['Username']未设置时,您已推杆exit;

正因为如此,它不会打印permission

当你Ajax打电话时,可能会$_SESSION['Username']设置并打印permission

也改变

echo '<u><b>Permision ID:</b></u> - - No:' . $row['permission']  ;

echo '<u><b>Permision ID:</b></u> - - No:' . $permission;

因为在while循环之外你不能访问$row['permission']。

于 2013-03-22T11:46:45.663 回答
1

$row['permission']这里不存在。您只需$permission.

echo '<u><b>Permision ID:</b></u> - - No:' . $permission;

于 2013-03-22T11:47:50.580 回答
0

确保通过执行以下操作获得任何行:

while($row = mysql_fetch_array($result)) { var_dump($row); $permission = $row['permission']; }

于 2013-03-22T11:47:20.353 回答