use*_*770 14 javascript mysql database ajax
我有一个动态构建html页面的JavaScript.在html页面中有用于输入信息的textarea框.信息已经存在于数据库中.我想用mysql数据库中的数据库填充textarea框.我有PHP代码将连接到数据库并构建一个带有数据的html表,所以我知道如何使用PHP,但我不知道如何从javascrip这样做.我已经研究了ajax get requests等,但我仍然不确定如何做到这一点.
wla*_*oth 19
可能最简单的方法是让一个php文件返回JSON.所以假设你有一个档案query.php,
$result = mysql_query("SELECT field_name, field_value
FROM the_table");
$to_encode = array();
while($row = mysql_fetch_assoc($result)) {
$to_encode[] = $row;
}
echo json_encode($to_encode);
Run Code Online (Sandbox Code Playgroud)
如果你被限制使用document.write(正如你在下面的评论中所说),那么给你的字段一个id属性,如下所示:<input type="text" id="field1" />.您可以使用此jQuery引用该字段:$("#field1").val().
这是HTML的完整示例.如果我们假设你的领域被称为field1和field2,然后
<!DOCTYPE html>
<html>
<head>
<title>That's about it</title>
</head>
<body>
<form>
<input type="text" id="field1" />
<input type="text" id="field2" />
</form>
</body>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>
<script>
$.getJSON('data.php', function(data) {
$.each(data, function(fieldName, fieldValue) {
$("#" + fieldName).val(fieldValue);
});
});
</script>
</html>
Run Code Online (Sandbox Code Playgroud)
在构建HTML之后插入,这可能是最简单的.如果您想在动态构建HTML时填充数据,那么您仍然希望PHP文件返回JSON,您只需将其直接添加到value属性中即可.
要使用 javascript,你可以这样做:
<script type="Text/javascript">
var text = <?= $text_from_db; ?>
</script>
Run Code Online (Sandbox Code Playgroud)
然后你可以在 javascript 中使用你想要的任何内容将文本 var 放入文本框中。