在文本框中使用多个 ID 回显来自 mysql 数据库的电子邮件


Echo emails from mysql db using multiple ids in textbox

>我整理了以下脚本,该脚本将在 mysql db 中搜索在表单文本框中提交的某些成员 ID,并为找到的每条记录编写一个 mail() 字符串,但它似乎不起作用,我知道我正在连接,因为如果我在"成功连接"后删除所有内容,我将得到"成功连接"。如果我按原样运行脚本,则会出现空白屏幕。任何对逻辑的帮助都将不胜感激。

<?php
$servername = "";
$username = "";
$password = "";
$db = "";
// Create connection
$conn = new mysqli($servername, $username, $password, $db);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
} 
echo "Connected Successfully";
if(isset($_POST['Submit'])) {
    $MemberIDs = $_POST['MemberIDs']; // contains the values "100,107"
    $SearchIDs = array($MemberIDs);
    $SearchStr = implode(',', $SearchIDs); // returns 100,107
    $sql = "SELECT * FROM members where id in ({$SearchStr})";
    $sql->execute();
    $raw_results = $sql->fetchAll();
    $num_rows = count($raw_results);
    if($num_rows > 0 ){
    while($results = $sql->fetch($raw_results)) {
    echo "mail(".$results['name']." <".$results['requestemail'].", $Subject2, $message2, $headers2);";
    }
    else
    {
    echo "No results";
    }
    }
}
$conn->close();
?>

表单页 HTML

<form name="test" action="test-search.php" method="POST">
<input id="MemberIDs" name="MemberIDs" type="text" value="100,107">
<input type="submit" name="Submit" value="SUBMIT" />
</form>

您希望对$conn对象进行操作,该对象是与数据库的mysqli连接。当然,我无法测试或检查语法,但这应该可以让您接近。

if(isset($_POST['Submit'])) {
   // Create connection
   $conn = new mysqli($servername, $username, $password, $db);
   // Check connection
   if ($conn->connect_error) {
      die("Connection failed: " . $conn->connect_error);
   } 
   echo "Connected Successfully";
    $MemberIDs = $_POST['MemberIDs']; // contains the values "100,107"
    $SearchIDs = array($MemberIDs);
    $SearchStr = implode(',', $SearchIDs); // returns 100,107
    $sql = "SELECT * FROM members where id in ({$SearchStr})";
    $results = $conn->query($sql);
    if( $results->num_rows > 0 ) {
        while($row = $results->fetch_assoc()) {
            echo 'mail('.$row['name'].');';
        }
    }
    else {
        echo "No results";
    }
    $results->free();
    $conn->close();
}