Javascript 如何使用链接从数据库中预填充表单字段?
好的,我有一个html表单。此表单用于收集用户/成员信息。它使用一个数据库,其中有几个重要的第2列用户电子邮件和发票id。在我的表单中,用户电子邮件输入是隐藏的,页面加载时等于登录用户在文件中提供的电子邮件地址的值。当用户提交多个表单提交时,将在我的数据库中创建具有相同用户电子邮件的多个记录。比如说,如果user1提交了3个表单,那么我的数据库中将有3条记录,所有记录的user_email列值都等于登录user1的电子邮件的值。试图找出一种显示链接列表的方法,当单击该列表时,将使用数据库中每个可用记录的信息预先填充表单。因此,如果user1已登录并有3条记录,则将生成/显示3个链接,单击每个链接时,将使用数据库中的记录数据预填充表单。这就是发票id输入的来源…生成的链接需要用用户发票id值为每个特定记录的值/文本进行标记或标题。请注意,用户id输入值已经自动生成,并在页面加载时预先填入唯一的序列号 为实现这一目标提供任何帮助或指出正确的方向都将是巨大的。谢谢Javascript 如何使用链接从数据库中预填充表单字段?,javascript,jquery,mysql,database,forms,Javascript,Jquery,Mysql,Database,Forms,好的,我有一个html表单。此表单用于收集用户/成员信息。它使用一个数据库,其中有几个重要的第2列用户电子邮件和发票id。在我的表单中,用户电子邮件输入是隐藏的,页面加载时等于登录用户在文件中提供的电子邮件地址的值。当用户提交多个表单提交时,将在我的数据库中创建具有相同用户电子邮件的多个记录。比如说,如果user1提交了3个表单,那么我的数据库中将有3条记录,所有记录的user_email列值都等于登录user1的电子邮件的值。试图找出一种显示链接列表的方法,当单击该列表时,将使用数据库中每个可
<form action="xxx.php" class="well" id="xxx" name"xxx" method="post">
<input type="hidden" id="user_email" name="user_email" value="xxx@email.com">
<input type="text" id="invoice_id" name="invoice_id">
<input type="text" id="other1" name="other1">
<input type="text" id="other2" name="other2">
<input type="submit" value="Submit">
您需要的是一些Ajax代码,使用JQuery将查询发送到服务器端PHP?然后返回基于电子邮件地址的数据库查询结果。结果可以作为HTML加载到div中,以便服务器端执行所有格式化等操作
function Lookup() {
var Options = {
};
Options.email= ... email address from form
$.ajax({
url: 'Lookup.php',
type: 'POST',
data: Options
}).done(function(data){
$("#ResultDiv").html(data);
});
}
加载页面后,需要调用此javascript函数:
$(document).ready(function(){
Lookup();
}
PHP代码如下所示:
... database connect stuff
$sSQL = "SELECT * FROM people WHERE user_email = '".$_POST['email']."';";
$result = RunQuery($sSQL);
if (mysqli_num_rows($result)>0) {
$iLoop = 0;
//output results from database
echo 'OK<table><tr>';
while (($iLoop <= 30) && ($aRow = mysqli_fetch_array($result))) {
extract($aRow);
echo "<tr><td><a href='".$invoice_id.".html'>".$invoice_id."</a></td><td>"
... other info as required ...."</td></tr>";
$iLoop++;
}
echo '</tr></table>';
试试这个:
// Get user from server
$.post("GetUserData", data, function (result, status) {
// Loop through each field in the returned object
$.each(result, function (key, element) {
// Append the field value to the
// correct field inside the form
$("#user_form :input[name = '" + key + "']").val(element);
});
})
.fail(function (error) {
// Retrieve the error response from the title
retrieveErrorTitle(error);
});