php - 如何使用 JavaScript 将数据加载到表单?

标签 php javascript ajax json

我想将数据从 MySql 数据库加载到 HTTP 表单 当我在文本中输入时,它应该加载人名

<html>
<head>
    <script type="text/javascript">
    function FetchUser(str)
{
if (str=="")
  {
  document.getElementById("txtHint").innerHTML="";
  return;
  }
if (window.XMLHttpRequest)
  {
  xmlhttp=new XMLHttpRequest();
  }
else
  {
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    var data = JSON.parse(xmlhttp.responseText);
  }
  }
xmlhttp.open("GET","finduser.php?q="+str,true);
xmlhttp.send();
}
this.form.name.value=data.name;
this.form.age.value=data.age;
</script>
</head>
<body>
<form method="post" >
Id<input type="text"  name="id" size="5" />    </br>
Name<input type="text" id="name" name="name"  onclick="Fetchuser(this.form.id.value)" ></br>
Age<input type="text" id="age" name="" size="2" /></br>
</form>
</body>
</html>

相应的 PHP 代码。

<?php
$q=$_GET["q"];
$con = mysql_connect('localhost', 'root', '125');
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("test", $con);

$sql="SELECT * FROM wow WHERE id = '".$q."'";
$resul = json_encode(mysql_query($sql));
echo $resul;
?> 

我的问题是如何将姓名和年龄输入到文本框中。 我尝试了这个,但仍然无法加载数据

最佳答案

您可以使用 json_encode 返回包含所有相关字段的 json,并在 javascript 中将每个字段放在其所属的位置。

$result = json_encode(mysql_query($sql));
echo $result; // don't forget to push the output or responseText is null.

在 JavaScript 中:

var data = JSON.parse(xmlhttp.responseText);

然后您可以使用 data.name_of_the_field 访问您的数据

关于php - 如何使用 JavaScript 将数据加载到表单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11225462/

相关文章:

php - 从 swf 生成图像

php - 如何将 Unicode 转义序列(如 "\u00ed")解码为正确的 UTF-8 编码字符?

javascript - 如何防止第一次重新渲染 Formik

javascript - 显示按表单构建的数组的总数组元素

javascript - 只刷新页面的一部分并更改 URL?查询?这可能吗?

PHP tot MySQL 图片上传不工作

javascript - 如何从 JQuery 返回的数组中确定复选框的选中状态?

php - 如何设置从另一个页面通过 AJAX 调用的下拉列表的默认值?

javascript - WebStorm 11 - Unresolved 方法

javascript - 如何迭代这个 JSON 响应文件