Php 如何搜索/筛选表中的特定数据?
我已经使用php代码成功地在html表中显示了我的数据库。现在,我想使用占位符筛选/搜索表中的特定数据。有没有办法用我的代码来做 我想将数据传输到另一个表中进行验证 目的 如果只是出于验证目的,为什么不使用PHP和/或一旦您使用了它 验证数据=确定数据的形式是否正确。 清理数据=从数据中删除任何非法字符。 您可以使用以下代码检查课程号是否为INT及其值:Php 如何搜索/筛选表中的特定数据?,php,html,mysql,Php,Html,Mysql,我已经使用php代码成功地在html表中显示了我的数据库。现在,我想使用占位符筛选/搜索表中的特定数据。有没有办法用我的代码来做 我想将数据传输到另一个表中进行验证 目的 如果只是出于验证目的,为什么不使用PHP和/或一旦您使用了它 验证数据=确定数据的形式是否正确。 清理数据=从数据中删除任何非法字符。 您可以使用以下代码检查课程号是否为INT及其值: <!DOCTYPE html> <html lang="en"> <head> <
<!DOCTYPE html>
<html lang="en">
<head>
<title>Pre-Enrollment</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="css/bootstrap.css">
<link rel="stylesheet" href="css/custom.css">
</head>
<nav>
<ul class="nav nav-tabs">
<li role="presentation" class="active"><a href="FromEnrollment.php">Pre-Enrollment</a></li>
<li role="presentation"><a href="Students.php">Students</a></li>
<li role="presentation"><a href="Subjects.php">Subjects</a></li>
</ul>
</nav>
<br>
<br>
<body>
<div class="container">
<div class="row">
<div class="col-md-4">
<form id="idNumber" action="#">
<div class="input-group">
<input type="text" class="form-control" placeholder="ID NUMBER">
<span class="input-group-btn">
<button class="btn btn-default" type="button">Enter</button>
<button class="btn btn-default" type="button" onclick="resetIdNumber()" value="reset">Reset</button>
</span>
</div>
</form>
</div>
<div class="col-md-4 col-md-offset-4">
<select style="width: 120px;">
<option value="All">Overall Term</option>
<option value="First">First Term</option>
<option value="Second">Second Term</option>
<option value="Short">Short Term</option>
</select>
</div>
</div>
<br>
<div class="row">
<div class="col-md-6">
<p> NAME:</p>
</div>
<div class="col-md-4">
<p> Course and Year: </p>
</div>
</div>
<br>
<div class="row">
<div class="col-md-6">
<form id="Subjects" action="#">
<div class="input-group">
<input type="text" class="form-control" placeholder="Search for...">
<span class="input-group-btn">
<button class="btn btn-default" type="button">Enter</button>
<button class="btn btn-default" type="button" onclick="resetSubjects()" value="reset">Reset</button>
</span>
</div>
</form>
</div>
</div>
<br>
<?php
include 'dbcon.php';
$stmt = $pdo->query("SELECT coursenumber as 'Course No.', destitle as 'Descriptive Title', units as 'Units' FROM subjects");
?>
<div class="row">
<div class="col-md-6 col">
<table class="table">
<tr>
<th>Course No.</th>
<th>Descriptive Title</th>
<th>Unit</th>
<th></th>
</tr>
<?php
$results = $stmt->fetchAll(PDO::FETCH_ASSOC);
foreach ($results as $row) {
echo "<tr>";
echo "<td>".$row['Course No.']."</td>";
echo "<td>".$row['Descriptive Title']."</td>";
echo "<td>".$row['Units']."</td>";
echo "<td> <button class='btn btn-default' type='button'> <span class='glyphicon glyphicon-plus' aria-hidden='true'></span></button></td>";
echo "</tr>";
}
?>
</table>
</div>
<div class="col-md-6">
<table class="table">
<tr>
<th>Course No.</th>
<th>Descriptive Title</th>
<th>Unit</th>
<th>Term</th>
<th></th>
</tr>
</table>
<button class="button" type="button" value="apply">Apply</button>
</div>
</div>
</div>
<script>
function resetIdNumber(){
document.getElementById("idNumber").reset();
}
function resetSubjects(){
document.getElementById("Subjects").reset();
}
</script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.0/jquery.min.js"></script>
<script src="js/bootstrap.min.js"></script>
</body>
</html>
清理数据的示例:
$result = filter_var($row['Course No.'], FILTER_VALIDATE_INT);
var_dump($result);
我想这是一种比在将相同数据传输到数据库之前将其复制到另一个表更好、更安全的方法
让我知道这是否有用。
如果你打算继续你的方法,我会进一步研究
更新
您似乎成功地获取了数据,并将其放入如下表中:
$newDescprTitle = filter_var($row['Descriptive Title'], FILTER_SANITIZE_STRING);
echo $newDescprTitle;
th,
运输署{
右侧填充:5em;
文本对齐:左对齐;
}
课程号。
描述性标题
单元
学期
1.
Ceci不属于非描述性标题
第五单元
第一学期
课程号。
描述性标题
单元
学期
当您运行代码时会发生什么?我被这个问题弄糊涂了-看起来您已经在使用数据库内容来构建html表格了当然有办法。你认为所有这些网页在其他情况下是如何工作的?这里的问题是:既然您已经使用代码从数据库中检索值并输出这些值,为什么不简单地将它们放在html表中呢?您当前输出了表行和单元格,但忘记了打开和关闭表本身!这是令人困惑的:您是要填写标题和问题中所述的HTML表,还是要填写注释中所述的数据库表?我们可以查看您的所有代码吗?您的PDO实例和SQL查询。另外,请考虑避免数据库字段中出现空格。我也想进行验证和清理,但要求是从html表中复制它:@Yay使用一个片段更新了答案,该片段将数据从第一个表复制到第二个表。我可以在glyphicon plus按钮上使用onclick=addData吗?当然可以,当我按下按钮时,使用它不起作用:
<table class="table">
<tr>
<th>Course No.</th>
<th>Descriptive Title</th>
<th>Unit</th>
<th></th>
</tr>
<?php
$results = $stmt->fetchAll(PDO::FETCH_ASSOC);
foreach ($results as $row) {
echo "<tr>";
echo "<td>".$row['Course No.']."</td>";
echo "<td>".$row['Descriptive Title']."</td>";
echo "<td>".$row['Units']."</td>";
echo "<td> <button class='btn btn-default' type='button'> <span class='glyphicon glyphicon-plus' aria-hidden='true'></span></button></td>";
echo "</tr>";
}
?>
</table>