获取用户ID以显示catergories

时间:2015-05-13 12:32:28

标签: php mysql pdo

我试图通过在用户表中分配类别ID来仅显示用户可以看到的类别。

我使用以下脚本登录:

login.php

<?
session_start();
if(isset($_SESSION['user'])){
    header("Location:home.php");
    exit;
}


    $dbh=new PDO('mysql:dbname=dashboardr;host=######', '######', '######');
    $email=$_POST['username'];
    $password=$_POST['pass'];

    if(isset($_POST) && $email!='' && $password!=''){
        $sql=$dbh->prepare("SELECT * FROM user_login WHERE username=?");
        $sql->execute(array($email));

    while($r=$sql->fetch()){
        $p=$r['password'];
        $p_salt=$r['psalt'];
        $id=$r['id'];
        $email=$r['username'];
        $firstname=$r['firstname'];
        $lastname=$r['lastname'];
    }

        $site_salt="subinsblogsalt"; 
        $salted_hash = hash('sha256',$password.$site_salt.$p_salt);

    if($p==$salted_hash){
        $_SESSION['user']=$id;
        $_SESSION['username']=$email;
        $_SESSION['firstname']=$firstname;
        $_SESSION['lastname']=$lastname;

        header("Location:home.php");

    }else{
        echo "<h2>Username/Password is Incorrect.</h2>";
        }
    }
?>

在home.php文件中显示您已登录的位置,我需要在其中显示&#39; cat_no&#39;之内的类别。在&#39; user_login&#39;内部的列。表

这是我想要获取用户ID并显示这些类别的地方。

home.php

<?php require_once '../db_con.php'; 

if(!empty($_GET['user_id'])){
    $cat = intval($_GET['user_id']);
try{
    $results = $dbh->prepare("SELECT * FROM user_login WHERE FIND_IN_SET(?, cat_no)");
    $results->bindParam(1, $cat);
    $results->execute();

    var_dump($cat);

    } catch(Exception $e) {
    echo $e->getMessage();
    die();
    }

    $doc = $results->fetchAll(PDO::FETCH_ASSOC); 
    if($doc == FALSE){

        echo '<div class="container">';
        echo "<img src='../img/404.jpg' style='margin: 40px auto; display: block;' />";
        echo "<h1 style='margin: 40px auto; display: block; text-align: center;' />Oh Crumbs! You upset the bubba!</h1>";
        echo '<a href="userList.php"  style="margin: 40px auto; display: block; text-align: center;">Get me outta here!</a>';
        echo'</div>';
        die();
    }
}

?>

我的表格如下:

CREATE TABLE `cat_list` (
`cat_id` int(11) NOT NULL,
  `cat_title` varchar(32) NOT NULL
) ENGINE=InnoDB  DEFAULT CHARSET=utf16 AUTO_INCREMENT=5 ;


CREATE TABLE `user_login` (
`id` int(11) NOT NULL,
  `username` text NOT NULL,
  `firstname` varchar(30) NOT NULL,
  `lastname` varchar(50) NOT NULL,
  `password` varchar(64) NOT NULL,
  `psalt` text NOT NULL,
  `col_no` text NOT NULL
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=12 ;

我对如何获取登录用户ID以及显示user_login表中col_no列中列出的类别感到困惑。

0 个答案:

没有答案