使用 AJAX 和 PHP 将 MYSQL 中的数据显示到文本字段中
Posted
技术标签:
【中文标题】使用 AJAX 和 PHP 将 MYSQL 中的数据显示到文本字段中【英文标题】:Display data from MYSQL into text field using AJAX and PHP 【发布时间】:2021-08-23 20:55:06 【问题描述】:我想使用 AJAX 将我在 getword.php 中调用的数组数据显示到 index.php 的文本字段中。但是如何?
这是 index.php
<body>
<div class="container" >
<h2>View data</h2>
<h4>Word List : </h4>
<div class="form-group">
<input id="wordlist" type="text" class="form-control" name="wordlist">
</div><br>
<button id="display" title="Generate Word">Generate</button>
<div class="input-single">
</div>
<script type="text/javascript">
$(document).ready(function()
$("#display").click(function()
$.ajax(
type: "POST",
url: "getword.php",
dataType: "json",
success: function($result)
$('#wordlist').val('');
);
);
)
</script>
这是从数据库中获取数据到数组中的 sql 查询 (getword.php)
<?php
$host = "localhost";
$user = "root";
$password = "";
$dbname = "wordlist";
$con = mysqli_connect($host, $user, $password, $dbname);
if (!$con)
die("Connection failed: " . mysqli_connect_error());
$sql = "select kata from word";
$res = mysqli_query($con,$sql);
$result = array();
while($row = mysqli_fetch_array($res))
$result[]= $row[0];
echo json_encode(array('kata'=>$result));
mysqli_close($con);
?>
【问题讨论】:
现在的错误是什么? 数据在$result
变量中。在成功处理程序中尝试console.log($result);
。
【参考方案1】:
我建议你编写如下 PHP 代码,这样会更简单
<?php
$host = "localhost";
$user = "root";
$password = "";
$dbname = "wordlist";
$con = mysqli_connect($host, $user, $password, $dbname);
if (!$con)
die("Connection failed: " . mysqli_connect_error());
$sql = "SELECT kata FROM word";
$res = $con->query($sql);
while($row = mysqli_fetch_array($res))
$dataToSend = $row[0];
mysqli_close($con);
echo json_encode($dataToSend);
?>
现在脚本是这样的,将结果放在文本框中
$.ajax(
type: "POST",
url: "getword.php",
dataType: "json",
success: function($result)
var val = JSON.parse($result);
console.log(val); // see console in browser to check what is sent back
var txtBox = docuent.getElementById('wordlist');
txtBox.value = val;
);
在这里,我猜 PHP 文件中的数据将是单个值,因为您使用的是单个文本框。如果有多个值,则使用数组在 PHP 中存储数据并将其发送到 json_encode() 本身。
希望这对您有所帮助。
【讨论】:
以上是关于使用 AJAX 和 PHP 将 MYSQL 中的数据显示到文本字段中的主要内容,如果未能解决你的问题,请参考以下文章
AJAX PHP MYSQL 更新/编辑记录 (jQuery)