2016-07-29 17 views
-1

我工作的一个非常具体的问题,在我工作的地方,什么我在寻找的Perl:从数据库信息到表单(HTML)

我在寻找一直没能找到答案了从MySQL数据库中检索信息并将其添加到表单中,以便将其添加(提交)到不同的数据库中,但在提交之前,用户需要能够进行更改并将更多数据添加到检索到的信息中(想象“复制和粘贴,如果你愿意”从第一个数据库到HTML表单不提交,如果它有任何意义)

我有HTML按钮和SQL statmenet准备好了,但不知道从哪里走?

HTML:

print " <div style=\"z-index:86;\" class=\"group-shell\">"; 
print " <table>\n"; 
print " <tr><td><input class=\"dial-red-button\" id=\"importFromCAD\" type=\"submit\" value=\"Import Info\"></td></tr>\n"; 

Perl的SQL语句:

$sql_statement20 = "select * FROM CT_AL_CAD_ID where CAD='$CAD' ORDER BY KeyField DESC"; 
    $sth20 = $dbh->prepare($sql_statement20); 
    $sth20->execute(); 
    $sth20->bind_columns(undef, \$ID_data[0], \$ID_data[1], \$ID_data[2], \$ID_data[3], \$ID_data[4], \$ID_data[5], \$ID_data[6], \$ID_data[7], \$ID_data[8], \$ID_data[9], \$ID_data[10], \$ID_data[11], \$ID_data[12]); 

    $sth20->fetch(); 

我一直停留在这个问题上几天。任何帮助或想法表示赞赏。

+1

确切地说,这是不是工作? –

+0

@MarcB如何在表单字段中将检索到的信息从数据库显示给用户,以便可以修改信息,而不必先将信息提交给第二个数据库。我也有我的按钮这个jQuery代码。希望它有帮助'\ $(document).ready(function(){ \t \ $('#importFromCAD')。点击(功能(){ \t \t \ $('#importNav').val('' ); \t \t return true; ' – Allen

+0

cross post at http://perlmonks.com/?node_id=1168832 –

回答

0

在生成HTML输出之前执行您的SQL语句。然后在HTML中使用包含数据库数据的变量(@ID_data)。事情是这样的:

print " <div style=\"z-index:86;\" class=\"group-shell\">"; 
print " <table>\n"; 
foreach (0 .. $#ID_data) { 
    print "<tr><td>ID data $_:</td><td><input name=\"ID_data_$_\" value=\"$ID_data[$_]\"></td></tr>\n"; 
} 
print " <tr><td><input class=\"dial-red-button\" id=\"importFromCAD\" type=\"submit\" value=\"Import Info\"></td></tr>\n"; 

请注意,如果您了解如何使用here文档和qq(...)你的代码会更干净。

print <<END_OF_HTML; 
<div style="z-index:86;" class="group-shell"> 
<table> 
END_OF_HTML 

foreach (0 .. $#ID_data) { 
    print qq(<tr><td>ID data $_:</td><td><input name="ID_data_$_" value="$ID_data[$_]"></td></tr>\n); 
} 
print qq(<tr><td><input class="dial-red-button" id="importFromCAD" type="submit" value="Import Info"></td></tr>\n); 

如果您使用a templating engine,它会变得更干净。

相关问题