【发布时间】:2019-01-31 06:48:57
【问题描述】:
我编写了一个简单的代码来测试使用 PHP 和 jQuery 从 MySQL 表中获取数据,但是当我从搜索框中搜索 ID 时(我有 ID 1 到 4 以及用户详细信息,例如 nationalId、firstName、lastName ) 并且当我搜索 MySQL 表中存在的 1 到 4 ID 但当我搜索 ID 5 及以上(不存在于 MySQL 表中)时它显示 1 它输出“No ID found”这是正确的输出身份证。
//index.php
<DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="https://code.jquery.com/jquery-3.3.1.min.js"
integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8="
crossorigin="anonymous"></script>
<script type="text/javascript" src="js/getUser.js"></script>
</head>
<body>
Citizenship ID No.<input type="text" id="id" placeholder="Type Your CID" />
<button type="submit" id="id-submit" value="Track">TRACK</button>
<div id ="display"></div>
</form>
</body>
</html>
//连接.php
<?php
$con = mysqli_connect('localhost','root','');
mysqli_select_db($con,'user');
?>
//getUser.js
$(document).ready(function(){
$('button#id-submit').on('click', function(){
var id = $('input#id').val();
if ($.trim(id) != '') {
$.post("php/getData.php", { id: id}, function(data) {
$('div#display').text(data);
});
}
});
});
//getData.php
<?php
if (isset($_POST['id']) === true && empty($_POST['id']) === false){
require '../sql/connection.php';
$query = "SELECT * FROM userinfo WHERE ID = '". mysqli_real_escape_string($con, trim($_POST['id'])) . "'";
$result = mysqli_query($con,$query);
echo (mysqli_num_rows($result) !== 0) ? mysqli_data_seek($result, 0) : 'No ID found';
}
?>
//MyMySQL表=用户信息
id nationalID firstName lastName
1 1200345 山姆亨特
2 1200346 约翰丹佛
3 1200347 彼得·帕克
4 1200348 乔什·马修
【问题讨论】:
-
id 5 is no logner in your MySQL table = userinfo 所以如何获取 sql id number 5
-
@Sabastian Sonam Ugyen,有什么问题,你想达到什么目的?
-
@Devina Leong 我想用 HTML 表单输出用户信息。
-
@Mohammad Malek 我理解您的担忧,但我已经提到它输出“未找到 ID”,这是正确的输出。我强调的是 ID 1 到 4,当我输入 id 1 到 4 时应该输出用户信息