首页 > 解决方案 > 如何获取输入/选择信息,然后从那里打印数据库信息。这可能吗?

问题描述

所以没有代码我只是想知道在我开始之前是否可以这样做。所以我要制作一个php页面。所以没有提交表单到另一个php页面。

在该页面上,它将具有用户类型或选择登录信息(id、pass、name 等)。在登录信息下方,我从上述部分获取信息,以确定他们可以访问哪个数据库,并在 html/php 表中打印他们可以访问的数据库列表。

那么这是否可以在一页中完成。或者我需要制作一个表格(获取他们的信息)。然后从那里打印用户有权访问的数据库列表。如果可能的话,我对刚刚完成 HS 的编程还是很陌生。你们能引导/指向我正确的方向吗?很多帮助将不胜感激

标签: javascriptphphtml

解决方案


您需要在页面顶部连接到 db(或者更好地在另一个文件中并要求它),这样您就可以像 db.ph 那样做某事:

<?php

$host = '';
$dbuser = '';
$paswrd = '';
$dbname = '';
$dns = 'mysql:host=' . $host .'; dbname=' . $dbname;
try 
{
    $pdo = new PDO($dns, $dbuser, $paswrd);
    $pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_OBJ);
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  //  echo "polaczono z mysql";
}
catch(PDOException $e)
{
   // echo "nie udało się połączenie: " . $e->getMessage();
}
?>

接下来在登录页面你做:

require('db.php');


if(isset( $_POST['login']))
{
    require('./config/db.php');


    /*
    $userName = $_POST['userName'];
    $userEmail = $_POST['password'];
    */

    $userName = filter_var( $_POST['userName'], FILTER_SANITIZE_STRING); 
    $userPassword = filter_var( $_POST['userPassword'], FILTER_SANITIZE_STRING);  

    $stmt = $pdo -> prepare('SELECT * FROM Users WHERE name =?');
    $stmt -> execute([$userName]);
    $user = $stmt ->fetch();}

你可以检查它是否正确,例如 if($user->password==$userPassword)

在html中:

<form action="login.php" method="POST">

            <div class="form-group">
                <label for="userName">Name</label>        
                    <input required type="text" name="userName" ">
            </div>
            <div class="form-group">
                <label for="userPassword">Password</label>
                <input required type="password" name="userPassword"/>
            </div>
            <button name="login" type="submit" >Login</button>


推荐阅读