【问题标题】:Creating a search and display feature for my project but can't get the results from database to display为我的项目创建搜索和显示功能,但无法从数据库中获取结果以显示
【发布时间】:2020-07-03 04:26:00
【问题描述】:

我正在尝试在我的项目中创建搜索和显示类型的功能,但是,当我尝试在搜索栏中输入内容时,没有显示任何内容,如果没有条目,我希望收到一条错误消息所述值,但显示具有所述值的条目。以下是我的代码,我将非常感谢任何建议和/或解决我的问题的方法,正如我所说,我只是一个初学者。

<?php
    $db = mysqli_connect('', '', '', '');
    if ($db->connect_error){
        die("Error: " . $db->connect_error);
    }
    $sql = "SELECT * FROM Quiz";
    if(isset($_GET['search'])){
        $name = mysqli_real_escape_string($db, htmlspecialchars($_GET['search']));
        $sql = "SELECT * FROM Quiz WHERE name = '$name'";
    }
?>

<!DOCTYPE html>
<html>
<head>
    <title> Quizzes </title>
    <link rel = "stylesheet" type = "text/css" href = "quiz.css">
</head>

<body>

<div class = "header">
    <h2> Quizzes </h2>
</div>

<form method = "GET" action = "">
    <div class = "input-group">
        <label>Search for a quiz: </label>
        <input type = "type" name = "name" placeholder = "search">
    </div>

    <div class="input-group">
        <input type="submit" class="btn" name="search">
    </div>

      <?php
            while ($row = $result -> fetch_assoc()){
                echo $row['name'];
            }
        ?>
</form>

</body>
</html>

【问题讨论】:

  • 旁注:这些看起来像真正的凭据。如果是,请记住更改您的密码。

标签: php mysql database search


【解决方案1】:

这是一个如何连接到数据库的示例:

DEFINE('SERVER', '127.0.0.1');
DEFINE('PORT', '');
DEFINE('PSEUDO', 'root');
DEFINE('PWD', '');
DEFINE('DB_NAME', 'EEE');
function connectDB() {
static $db = null;
if ($db === null) {
    try {
        $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
        $db = new PDO("mysql:host=". SERVER .";port=". PORT .";dbname=". DB_NAME, PSEUDO, PWD, $pdo_options);
        $db->exec('SET CHARACTER SET utf8');
    } catch (Exception $exc) {
        throw $exc;
    }
}
return $db;
}

当你进行 sql 查询时:

$db = connectDB();
$query = $db->prepare("SELECT lastname FROM user WHERE email LIKE ?");
$query->bindParam(1, $email);

if ($query->execute()) {
 //Data are in $tab
 $tab = $query->fetchAll(PDO::FETCH_ASSOC);
}

【讨论】:

  • 那么如果我将这两段代码放在我展示的同一个文件中并删除我的 PHP 代码?
  • 是的,如果你用这个替换你的php代码,但你需要适应你的查询,当数据库返回结果时你需要显示它(它的'在$tab中)
  • 在代码的第一部分中,我是否将服务器留在其中,然后在键入我正在使用的服务器后的位中?抱歉,我只是想习惯使用 PHP
猜你喜欢
  • 2016-06-12
  • 2013-02-23
  • 2018-01-15
  • 1970-01-01
  • 2015-08-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-17
相关资源
最近更新 更多