好吧,我有一个由许多元素组成的表单,我希望用户能够动态地向表单添加内容(理想情况下不使用JS来不显示SQL查询和其他内容)。目前我正在php中尝试这样做,代码示例如下:
假设其中有一个表单和一个表t1,通过按下按钮或w/e,一个相同的表,t2到一个集合tn,到具有更改id的表单(这很简单)
这在多大程度上可能不暴露SQL内容,也不需要重新加载页面?
<form ...>
...
echo'<table id="t1" ...>
<tr>
<td>Text</td>
<td>Text</td>
<td>Text</td>
<td>Text</td>
</tr>
<tr>
<td>';
$query = "SELECT * FROM randomTable";
$exec = mysql_query($query ) or die(mysql_error());
$num = 0;
while ($row= mysql_fetch_array($exec))
{
if ($num == 0)
{
echo '<select id="t1_show">
<option value="" selected="selected">
<option value="' . $row['id'] . '">'
. $row['name'] . '</option>';
$num ++;
}
else
{
echo '<option value="' . $row['id'] . '">'
. $row['name'] . '</option>';
$num ++;
}
}
if ($num > 0) echo '</select>';
echo '</td>
<td><input id="t1_input1" type="text"/></td>
<td><input id="t1_input2" type="text"/></td>
<td><input id="t1_input3" type="text"/></td>
</tr>
</table>';
...
理想情况下,不使用JS来不显示SQL查询和其他内容。
使用JS,特别是ajax,不会公开任何内容,只需调用一个php脚本,该脚本在后台完成所有DB工作,然后返回结果。
我建议您看看jquery和jquery.ajax(),这正是您所需要的。
只需将一个点击事件绑定到按钮并发送一个ajax请求。