如何在php中为消息传递系统选择多个用户



我在PHP&HTMl中为消息传递系统工作。为了从数据库获取用户列表,我使用了选择查询和 while 循环来列出 html 下拉列表中的用户名。我的问题是,如何一次选择两个或多个用户向他们发送消息。谁能在这方面指导我。

<div class="content">
<h1>New Personnal Message</h1>
<form action="message.php" method="post">
    Please fill the following form to send a personnal message.<br /><br />
    <label>Title</label>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    <div class="text">
    <input type="text" value="<?php echo htmlentities($otitle, ENT_QUOTES, 'UTF-8'); ?>" id="title" name="title" /><br /><br /></div>
    <label for="recip">Recipient<span class="small">&nbsp;(Username)</span></label>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    <div class="text">
    <input type='checkbox' onclick="checkall()" id="selectall">
    <?php 
    $sql2 = "SELECT fname FROM REGISTRATIONFORM";
    $result2 = $conn->query($sql2);

    echo "<select name='username'>";
    while ($row = $result2->fetch_assoc())
    {
        echo "<option value='".$row['fname']."'>" .$row['fname']."</option>";
    }
    echo "</select>";
    ?>
    <br /><br />
    </div>
    <?php
    else
    {
    ?>
    <label for="recip">Recipient<span class="small">&nbsp;(Username)</span></label>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    <div class="text">
    <input type="text" readonly value="<?php echo $email; ?>" id="recip" name="recip" /><br /><br /></div>
    <?php
    }
    ?>
    <label for="message">Message</label>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    <div class="text">
    <textarea cols="40" rows="5" id="message" name="message"><?php echo htmlentities($omessage, ENT_QUOTES, 'UTF-8'); ?></textarea></div><br /><br />
    <div class="text">
    <input type="submit" value="Send" class="btn btn-info"/><br /><br /><br />
    </div>
</form>

添加多个属性选择成这样

 echo "<select name='username[]' multiple>";

使用 Ctrl+单击选择更多

如果你的问题是如何使用PHP发送邮件,你可以在这里找到更多 https://www.w3schools.com/php/func_mail_mail.asp

在处理多选下拉列表时要记住两件事:

echo "<select name='username[]' multiple>";

多选下拉列表的name必须是一个array,以便它可以在其中保存多个值。其中还提到了多个属性。

你可以在 php 中获取它的值,例如:

$usernames = $_REQUEST['username'];
foreach($usernames as $username)
{
    // your logic here
}

最新更新