php - 根据用户登录从Mysql数据库获取具体数据

标签 php javascript jquery html mysql

所以我有一个简单的工作用户登录脚本,它可以传递我的用户名和我的密码。

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

MYSQL DATABASE ('members'): 
id:1
username:cornellmatt
password:encrypted(md5)
email:<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="f19489909c819d94b1949c90989ddf929e9c" rel="noreferrer noopener nofollow">[email protected]</a>
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 的(当前)问题是它似乎根本没有从数据库中获取任何内容,我知道它已连接,它只是不会回显“权限”内的值;

connect.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 提供,他在上一篇文章中为我提供了帮助。

Session.php

 <?php
session_start();

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

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

最佳答案

$_SESSION['Username']未设置时,您已输入exit;

因此它不会打印权限

当您执行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']。

关于php - 根据用户登录从Mysql数据库获取具体数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15569492/

相关文章:

javascript - 如何根据子元素的文本值隐藏父元素

javascript - 第二次出现的动态创建元素的引导工具提示

php - LARAVEL 5.0 + 单元测试 - 不同包的 assertSessionHasErrors

php - 日期时间编辑php到mysql错误

php - Wordpress - 分页和自定义数据库查询

php - 根据外部请求在 Netbeans 中启动 XDebug

javascript - JSON.NET:使用 LINQ 从 JSON 反序列化

javascript - 从js UDF输出INT64

javascript - Jquery Knockout - 在数据绑定(bind)属性中获取元素实例

jquery - 使用 jQuery 模拟 AJAXy 单击以选择菜单