动态表单操作 - 使用变量确定操作

时间:2010-08-04 13:31:35

标签: php forms action

我在CodeIgniter中有一个表单,我需要根据实际表单中的内容更改表单的Action。

即:如果<select name="type"> == business,那么我需要action="business/submit"

有一种简单的方法吗?

现在我尝试的解决方法是使用Javascript从输入中获取数据,然后将其发送到动态生成的链接 - 但是这对我的情况并不理想。

思想?

2 个答案:

答案 0 :(得分:1)

我从未参与过CodeIgniter,但我可以告诉你如何在PHP中完成它。

您必须明白,如果没有Javascript,您无法“动态”执行此操作。正如您所建议的那样,您不希望使用Javascript,我建议采用一种肮脏的方式来处理这种情况。

您无法单独使用PHP修改action属性,因此我们必须将其发布到一个PHP文件,然后根据选择(从您的选择框中),您可以包含所需的文件。您可以根据自己的喜好使用开关案例。

这只是指示性的。请不要因为没有遵守标准或不采取任何安全措施而激怒我!

<?php 
     // sample code snippet 

      if($_POST['type']=== 'something') { 
          include 'something.php'; 
      } 
      else if($_POST['type']=== 'somethingElse') { 
           include 'somethingElse.php'; 
      } 
      else { 
           include 'totallyDifferentOne.php'; 
      }

     // continue your code 

?>

答案 1 :(得分:0)

我不熟悉CodeIgniter,但您不能将表单发送到一个可以读取type的Action并将请求转发给您希望它转到哪个选项吗?