运行 PHP 代码以根据文本元素的值从数据库中获取值
Run a PHP code to get a value from a database according to a value of a text element
我正在构建一个基于Web的系统。在这里,我在想我是否可以根据我在文本框中输入的数字获取名称。我尝试如下。我知道这是行不通的。会有另一种解决方法吗?请帮忙...
HTML 代码是
Item No:<input name="iNo" type="text" id="iNo" size="40" maxlength="6" onblur="namesrch()">
Item Name:<input name="na" type="text" id="na" size="40" maxlength="40" disabled>
这是我的JavaScript
function namesrch(){
iNumber = document.getElementById('iNo').value;
document.getElementById('na').value="<?php $SQL="SELECT iName FROM item Where iNo='iNumber'" ; $run=mySQL_Query($SQL,$con) or die ("SQL error"); while($rec=mySQL_fetch_array($run)){echo $rec{'iName'}}?>";
}
希望你能理解我想做什么。提前谢谢..
JavaScript 是一种客户端语言,而 PHP 是一种服务器端语言。你不能像这样在 JavaScript 中运行 PHP。你需要的是Ajax。
下面是一个快速示例:
爪哇语
$('#iNo').on('update', function() {
$.ajax({
type: 'POST',
url: 'ajax.php',
data: { no: $(this).val() }
success: function(name) {
$('#na').val(name);
}
});
});
阿贾克斯.php
$dbConn = new MySqli($host, $username, $passwd, $dbName);
$no= filter_input(INPUT_POST, "no", FILTER_VALIDATE_INT);
$query = "SELECT iName FROM item WHERE iNo = $no";
$result = $dbConn->query($query);
$name = '';
if($dbConn->errno) {
//An error occurred
} elseif($result->num_rows) {
$row = $result->fetch_assoc();
$name = $row['iNo'];
$result->free();
}
echo $name;
你会注意到我使用了MySQLi,而不是MySQL。MySQL 已折旧,不应再使用。值得你花时间学习使用MySQLi或PDO。
我希望这有所帮助。
你不能混合使用 php 和 js。假设您希望所有代码都放在一个文件中:
文件名.php(未测试)
<?php
if (isset($_GET['iNumber'])) {
$mysqli = new mysqli("localhost", "my_user", "my_password", "database_name");
// You need to check for sql injection here
$SQL = "SELECT iName FROM item Where iNo = '".$_GET['iNumber']."'' LIMIT 1";
$result = $mysqli->query($query);
$row = $result->fetch_assoc();
echo json_encode(array('iName' => $row['iName']));
exit();
}
?>
<html>
<head>
<title></title>
</head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<body>
Item No:<input name="iNo" type="text" id="iNo" size="40" maxlength="6" onblur="namesrch()">
Item Name:<input name="na" type="text" id="na" size="40" maxlength="40" disabled>
<script type="text/javascript">
function namesrch() {
iNumber = document.getElementById('iNo').value;
$.getJSON('filename.php?iNumber='+iNumber, function(response) {
$('#na').value(response.name);
});
}
</script>
</body>
</html>
相关文章:
- 每隔5秒从数据库获取数据,并通过AJAX将其发送到视图
- 使用自动完成文本框从mysql数据库获取表记录并显示在文本字段中
- 尝试在移动优先应用程序中从 SQL 数据库获取数据时出错
- 如何在不刷新页面的情况下从 PHP 中的 SQL Server 数据库获取数据
- 如何根据屏幕尺寸从数据库获取数据
- 更新后,Laravel/Ajax从数据库获取值
- 从AngularJs中的数据库获取并显示数据
- 从sqlite数据库获取结果
- 如何使用ajax从数据库获取数据
- 滚动时从数据库获取图像 (HTML)
- 如何使从数据库获取的 Ruby 代码在 JS 中工作
- 从数据库获取所有纬度和长度以显示谷歌地图上的所有位置
- 如何从索引数据库获取所有值
- 通过 AJAX 从数据库获取 JSON
- 谁能告诉我如何使用 JavaScript 选择从数据库获取的所有项目到复选框中
- 从数据库获取数据后在谷歌地图上显示标记
- 是否可以使用 JavaScript 从 Django 模型数据库获取数据
- 使用 Ajax 从数据库获取数据
- 如何以 15 分钟的间隔在系统时间从数据库获取数据
- 从 MySQL 数据库获取数据时节点.js流不正确