将数组从html发布到php

Cra*_*893 2 html php arrays post

我是一个非常新的PHP编程,但我试图将一个多选对象im html中的值传递给PHP中的一些代码,然后通过电子邮件发送给列出的人

但是,通过帖子传递的可变量似乎只是最后选择的项目

你如何传递一些数组?

HTML代码:

<li id="li_6" >
            <label class="description" for="Names[]">Employees who should be added to this charge code: (Hold CTRL to Multi Select)</label>
            Malav, Nancy, Filiz, CJ are added by default and not on the list
            <div>
                <select name="Names" multiple>  
                    <option value="gbiy@afsafd.com">Bi,Gilbert</option>
                    <option value="jbster@asdfasds.com">Bor,Jeff</option>
                    <option value="ibett@adfasdfions.com">Bt,Ivan</option>
                    <option value="scelos@agasdgasdns.com">Caos,Sheryl</option>
                    <option value="rcarsfsfdgy@madfasdfs.com">Car,Raymond</option>
                    <option value="dcaraahers@asdfasdftions.com">Cs,Dale</option>
                    <option value="Cclesfdgsdents@mabukhyns.com">Cles,Cathy</option>
                    <option value="lcugh@madsfadsfasds.com">Cl,Lori</option>
                    <option value="rcolns@madsfasdfons.com">Cons,Renee</option>
                    <option value="ccrine@maasdfkoadsfasd.com">ine,Cassandra</option>
                    <option value="pcrett@maadsfasdfons.com">Ctt,Pamela</option>
</select>
            </div> 
        </li>
Run Code Online (Sandbox Code Playgroud)

PHP代码:

<?php
// Read POST request params into global vars
    $from = "BP@fgsdfgsons.com";
    $title = $_POST[Title] ;
    $mname = $_POST[ManagerName];
    $memail = $_POST[ManagerEmail];
    **$names= $_POST['Names']; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<**
    $other = $_POST[element_4];

    print $email;
    $to = "sfgsdfg@sdfgsdfgssbd.com" + $memail;
    $message ="Title: $title \r\nManager: $mname\r\nManager email: $memail\r\n" ;
    $headers = "From: $from";
    $today = date("m/d/Y");
    $ok = @mail($to, $subject, $message, $headers);

    echo "Your email has been sent! Please confirm with Malav if you do not receive a confrimation email in 2 hours";
?>
Run Code Online (Sandbox Code Playgroud)

azi*_*ani 10

要将其作为值数组传递,请在select元素的name属性中添加方括号.

<select name="names[]" multiple="multiple"> 
Run Code Online (Sandbox Code Playgroud)

然后你可以迭代PHP中的值.

foreach ( $_POST['names'] as $selectedOption )
Run Code Online (Sandbox Code Playgroud)