我有一个包含2个必填字段和一个可选字段的表单。
我想在此表单之外添加一个提交按钮,这样当我们有一个folder_name的值并点击它时,它会运行php并搜索该服务器下的所有文件:
<form name="runConsultation" method="post" action="">
<input type="text" name="folder_name">
<select name="files" size="3">
<?php
// pupulate the list with values found outside the form
?>
<select>
<select name="category">
<option value="">Select...</option>
<option value="a">A</option>
<option value="b">B</option>
</select>
<input type="submit" name="run-consultation" value="RUN CONSULTATION">
</form>
<input type="submit" name="find-files" value="FIND FILES">
我的问题是,如果不使用2个表单,我就不知道如何做到这一点。
如果我添加2个表单,我需要将folder_name与字段分开,当我运行咨询时,我将无法访问folder_name。
有人可以帮忙吗?提前谢谢。
示例:
<form name="fileSearch" method="post" action="" >
<input type="text" name="folder_nr">
<input type="submit" value="Search For Files" name="search-folder">
</form>
<form name="runConsultation" method="post" action="">
<select name="files" size="3">
<?php
// building my list with the files found using the first form
?>
...
<input type="submit" name="run-consultation" value="Run Consultation">
</form>
当我运行seach-folder时,folder_number消失。
答案 0 :(得分:1)
只需将提交按钮放在表单中,然后检查是否单击了按钮
if (isset($_POST['find-files']) && $_POST['find-files']) {
// find files..
}
else
{
// run consulation
}
答案 1 :(得分:0)
您只能使用PHP执行此操作,或者您可以添加一些javascript + Ajax。
清洁HTML&amp; PHP解决方案:
在表单中放置2个提交按钮,具有相同的名称但不同的值。
<form method="POST">
<!-- code omitted on purpose -->
<input type="submit" name="btnSubmit" value="RUN CONSULTATION" />
<input type="submit" name="btnSubmit" value="FIND FILES" />
</form>
按下每个按钮将提交表格。在服务器端,您可以通过检查$_POST['btnSubmit]
来检查按下了哪个按钮。
值可以是:
根据您获得的值,您可以最初显示表单(1),运行咨询(2),或使用选项填充选项(3)显示表单。
Javascript + Ajax解决方案:
我不会给你代码,而是告诉你这涉及的步骤:
click
事件&#34;查找文件&#34;按钮; folder_nr
文本字段的值。这些是步骤。您可以使用普通的Javascript执行此操作,或者您可以使用任何javascript库,如jQuery。