我可以将ajaxvar结果传递给PHP代码吗?
免责声明:我上次写代码已经有一段时间了。我的代码质量可能低于标准。您已收到警告。 你好 我正在编写一个基本表单,它使用从数据库填充的选择列表 但是,我的用户需要表单是动态的,并且希望能够选择我可以将ajaxvar结果传递给PHP代码吗?,php,Php,免责声明:我上次写代码已经有一段时间了。我的代码质量可能低于标准。您已收到警告。 你好 我正在编写一个基本表单,它使用从数据库填充的选择列表 但是,我的用户需要表单是动态的,并且希望能够选择MasterTable1或MasterTable2或MasterTable3 我没有对填充选择列表的数据库查询的表名进行硬编码,而是尝试实现一个基本的Ajax操作(使用的示例来自)…这就是我失去理智的时候 我可以在我的页面中输出,它会显示所选的正确表名 但是如何将正确的表名传递给将填充选择列表的查询 我试过了
MasterTable1
或MasterTable2
或MasterTable3
我没有对填充选择列表的数据库查询的表名进行硬编码,而是尝试实现一个基本的Ajax操作(使用的示例来自)…这就是我失去理智的时候
我可以在我的页面中输出
,它会显示所选的正确表名
但是如何将正确的表名传递给将填充选择列表的查询
我试过了
<select name="DBFilename" id="DBFilename" size="0">
<option value="">Select Filename</option>
<?php
$sql="select distinct filename from "."<div id='txtHint'></div>";
$result = mysql_query($sql);
while ($row = mysql_fetch_array($result)){ ?>
<option value="<?php echo $row['filename']; ?>"><?php echo $row['filename']; ?></option>
<?php } ?>
</select>
选择文件名
但是没有用。这是令人困惑的,因为我可以做到这一点
...
document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","gettable.php?q="+str,true);
xmlhttp.send();
}
</script></head>
<body><form><select name="SrcTbl" id="SrcTbl" size="0" onchange="showTable(this.value)">
<option value="">Select Data Table</option>
<option value=""> </option>
<option value="MasterTable1">up to 31 days old</option>
<option value="MasterTable2">62 days old</option>
</select>
</form><br /><div id="txtHint"><select name="tabList"><option></option></select> </div>
</body></html>
。。。
document.getElementById(“txtHint”).innerHTML=xmlhttp.responseText;
}
}
open(“GET”、“gettable.php?q=“+str,true”);
xmlhttp.send();
}
选择数据表
最长31天
62天大
我的表格名称将显示在选择列表“tablist”中
如何将正确的表名传递给将填充选择列表的查询?谢谢
(Pastebin=>)创建一个单独的php脚本,根据给定的表名返回选择选项->值列表。您必须记住防止sql注入。然后使用ajax检索列表并将其插入select m8,ajax主要用于用户体验,填充选择列表是一种非常简单的模式,它不应该一开始就被ajax所困扰 如果希望对用户提交的数据使用某些方法,并在服务器和客户机之间创建无缝数据交换的幻觉,并基于返回结果呈现相应的视图或视图的元素,则应该使用ajax 除非使用ajax加载视图的每个元素,否则从一开始就应该使用php填充html
<select name="DBFilename" id="DBFilename" size="whatever since style belongs to css">
<option selected="selected">Select Filename</option>
<?php
$sql="SELECT DISTINCT filename from 'wherever'";
$result = mysql_query($sql);
while ($row = mysql_fetch_array($result)){ ?>
<option value="<?php echo $row['filename']; ?>"><?php echo $row['filename'];?>
</option>
<?php } ?>
</select>
选择文件名
您对HTTP工作原理的理解存在缺陷:$sql=“从“.”中选择不同的文件名”代码>不会产生任何类似于可用SQL的结果。那
最终应该是什么?表名?只需编码表名。是的,它应该是Ajax脚本返回的表名。谢谢您的帮助。我需要重新设计应用程序的整个流程。谢谢你抽出时间。