Php 从数据库中获取电子邮件地址并将其发送到所有地址
我是PhP新手,正在尝试编写一个代码,可以从db中的表中获取所有电子邮件,并将它们写入电子邮件客户端的BCC字段(我正在使用Outlook)。 首先,我创建了HTML代码。例如,若选择的值是Partneri,那个么我想从类别为Partner的表中获取所有电子邮件Php 从数据库中获取电子邮件地址并将其发送到所有地址,php,html,Php,Html,我是PhP新手,正在尝试编写一个代码,可以从db中的表中获取所有电子邮件,并将它们写入电子邮件客户端的BCC字段(我正在使用Outlook)。 首先,我创建了HTML代码。例如,若选择的值是Partneri,那个么我想从类别为Partner的表中获取所有电子邮件 <select name="email"> <option value="Uposlenik"> Uposlenici <br/> <option value="Partner"> Pa
<select name="email">
<option value="Uposlenik"> Uposlenici <br/>
<option value="Partner"> Partneri <br/>
<option value="Limari Montazeri"> Limari montažeri <br/>
<option value="Gradjevinske firme"> Građevinske firme <br/>
<option value="Krovopokrivacke firme"> Krovopokrivačke firme <br/>
<option value="Preradzivaci lima"> Preradživači lima <br/>
<option value="Limarske radionice"> Limarske radionice <br/>
<option value="Stovarista-Trgovci"> Stovarišta-Trgovci
</select>
乌波斯尼基
Partneri
利马里蒙塔泽里
格拉埃文斯克公司
Krovopokrivačke firme
普雷拉德živači利马
Limarske radionice
斯托瓦里什塔·特尔戈维奇
在这之后,我创建了php文件,并且没有出现任何错误。我得到的结果只是选择值,没有其他显示
<?php
$host="localhost"; // Host name
$username="***"; // username
$password="***"; // password
$database="***"; // Database name
$tbl_name="clanovi"; // Table name
$link=mysql_connect("$host", "$username", "$password");
if (!$link) {
die('Could not connect: ' . mysql_error());
}
$db_selected = mysql_select_db("$database");
if (!$db_selected) {
die ('db is not selected : ' . mysql_error());
}
$kategorija=$_POST['email'];
//check post
echo $kategorija;
$query= "SELECT `EMAIL` FROM `clanovi` WHERE `KATEGORIJA`='$kategorija'";
$result=mysql_query($query) or die ("Error, query failed!");
mysql_close($link);
$row=1;
$numrows=mysql_num_rows($result);
$bccfield="Bcc:".mysql_result($result,0,"email");
while($row<$numrows)
{
$email=mysql_result($result, $row,"email");
$bccfiled="," .$email;
$row++;
Print "<a href=mailto:test@test.com?bcc=".$bccfield." /> " ;
}
$bccfield .="\r\n";
?>
试试这个
mysql_result($result,0,"EMAIL");
.....^
而不是
mysql_result($result,0,"email");
您的代码中有一个小故障。它应该是$bccfiled.=“,”$email
,请注意=
之前的
,否则将覆盖循环每次迭代中的变量内容。但更好的方式是将地址存储在一个数组中,然后像这样内爆()
它们:内爆(',',$bccfields)
因此,脚本的下半部分应该是这样的:
<?php
// ...
$query= "SELECT `EMAIL` FROM `clanovi` WHERE `KATEGORIJA`='$kategorija'";
$result=mysql_query($query) or die ("Error, query failed!");
while(FALSE!==($row=mysql_fetch_assoc($result))) {
$bccfields[] = $row['EMAIL'];
}
echo sprintf("<a href=mailto:test@test.com?bcc=%s />\n",
urlencode(implode(',',$bccfields)));
?>
注意,我没有测试这个,只是把它打下来。但是你应该在学习的时候得到这个想法 您应该从$row=0开始代码>而不是$row=1代码>。否则,您将忽略从数据库中检索到的最后一行。为了将来的参考,请不要粘贴您的用户名和密码!好的,谢谢你的建议脚本中有很多很多问题需要解决。我们无法为您解决这一切。我们所能做的就是给你指出正确的方向。看一看我在回答中添加的脚本片段,这应该会引导您走向正确的方向。阿卡斯卡非常感谢您。你让我走上了正轨,我已经解决了这个问题。。