将数据从一个页面发送到另一个页面,MongoDB和PHP


Sending data from one page to another, MongoDB and PHP

我之前写过一篇关于这个问题的文章,并且已经在这个问题上工作了很长时间。

我无法将数据从第 1 页传递到第 2 页。我在网上查看了各种教程,但无法获得预期的结果。

我是MongoDB和PHP的新手。如果有人可以解释我如何从mongoDB查询数据。

下面我发布了两个页面的代码

//LOGIN PAGE
<? PHP      
session_start();
?>
<html>
<head>
<title> Movie Database </title>
</head>
<?PHP
    try {
        // open connection to MongoDB server
        $conn = new Mongo('localhost');
        // access database
        $db = $conn->test;
        // access collection
        $collection = $db->items;
        // execute query
        $cursor = $collection->find();
        foreach ($cursor as $obj) {
            $correct = $obj['username'];
        }
        // disconnect from server
        $conn->close();
    } catch (MongoConnectionException $e) {
        die('Error connecting to MongoDB server');
    } catch (MongoException $e) {
        die('Error: ' . $e->getMessage());
    }

?>

<body>
<br>
<center>
<h1> Welcome to Login Page </h1>
<br>
<br>
<br>
<form action="page.php" METHOD="POST">
<label>Username :</label>
<input type="text" Name="username">
<br>
<label>Password :</label>
<input type="password" Name="password">
<br>
<br>
<input type="submit" value="Login">
<br>
</center>
</FORM>
</body>
</html>

第二页从这里开始

 //PAGE 2
<?PHP
session_start();
    //$db = $conn->test;        
    //echo 'Username: ' . $_POST['username'] . '<br>';
    //echo 'Password: ' . $_POST['password'] . '<br>';
    $userName = $_POST['username'];
    $userPass = $_POST['password'];
    $collection = $db->items;
    $userN   = array('username'=>$userName);
    $userP   = array('password'=>$userPass);
    $cursor  = $collection->find(array($userN,$userP));

    foreach ($cursor as $obj) {
        $foundUserN = $obj['username'];
        $foundUserP = $obj['password'];
        if($obj['username'] == $userName && $obj['password'] == $userPass){
            echo '<h1>FOUND</h1>';          
        }
        else{
            echo 'not found';           
        }
    }
    $conn->close();
    try {
    $conn = new Mongo('localhost');
    $db = $conn->test;
    $conn->close();
    } 
    catch (MongoConnectionException $e) {
        die('Error connecting to MongoDB server');
    } 
    catch (MongoException $e) {
        die('Error: ' . $e->getMessage());
    }
?>

这里有几点需要注意

  1. 会话未使用(刚刚启动(。
  2. 在建立数据库连接之前收集信息。(返回空(

检查此链接,你会得到一些想法...

简单的PHP mongoDB用户名和密码检查站点

现在继续将用户的ID存储在会话中,然后在任何页面中启动会话并继续使用。

在PHP中,代码是这样的:-

 <?php
     session_start();
     $_SESSION['user_id'] = $userid;//if match found
 ?>

在另一个文件中

 <?php
     session_start();
     echo $_SESSION['user_id'];
 ?>

享受欢呼声!!!!