根据表单输入设置PHP变量

时间:2013-07-15 20:11:25

标签: php html

testI需要根据用户从HTML表单中的选择框中选择的选项设置变量。

HTML

 <form action="contact.php" enctype="multipart/form-data" method="post" name="contact_form" id="contact_form" novalidate>

               <select name="department" id="department">
                      <option value="0">Choose a department</option>
                      <option value="1">Enquiries</option>
                      <option value="2">Proposals</option>
                      <option value="3">Work</option>                                         
                </select>

PHP

$to = "test@machinas.com";

如果值= 1,则&to应为enquiries@website.com。 如果value = 2则&to应为proposals@website.com。 如果value = 3,则&to应为work@website.com。

我可以得到一个手,我是一个前端,只有PHP的基本知识。大多数PHP文件已编码为发送电子邮件但我错过了。谢谢!

5 个答案:

答案 0 :(得分:2)

使用开关或if-condition

switch ($_GET['department']) {
    case '1':
        $to = "...";
        break;
    case '2':
        $to = "...";
        break;
    //....
}

答案 1 :(得分:2)

您可以创建值的地图

 $map = array(
         0=>"",
         1=>"email1@somewhere.com",
         2=>"email2@somewhere.com",
         3=>"email3@somewhere.com",
         4=>"email4@somewhere.com");

然后根据匹配的帖子值

分配$
 $to = $map[(int)$_POST["department"]];

答案 2 :(得分:1)

switch ($_POST['department']) {
  case 1:
    $to = 'enquiries@website.com';
    break;
  case 2:
    $to = 'proposals@website.com';
    break;
  case 3:
    $to = 'work@website.com';
    break;
}

答案 3 :(得分:1)

您可以使用

<option value="email@mydomain.com">department</option>

然后获取帖子值。

答案 4 :(得分:0)

如下所示的关联数组:

$emails = array( "1" => "enquiries@website.com", "2" => "proposals@website.com" , "3" => "work@website.com");

// and then 

$to = $emails[$_POST["department"]];