SOS 我正在尝试向选定的电子邮件发送消息(按表单发布),因此表单会将student_id传递给php脚本,该脚本会获取相应的student_email地址(由student_id引用) ,,, 我非常感谢你的帮助。 这是我每次都得到的错误消息,
刷新无效:您必须提供at 至少一个收件人邮箱地址。 消息未发送PHP Mailer错误: 您必须至少提供一个 收件人电子邮件地址。
代码:
<?php require_once("connection.php"); ?>
<?php require_once("functions.php"); ?>
<?php require("class.phpmailer.php");?>
<?php
// START FORM PROCESSING
if( isset($_POST['submit'])) { // Form has been submitted.
$student = trim(mysql_prep($_POST['student']));
$re_mail =$student["email"];
$mail = new PHPMailer();
$mail->PluginDir = './';
$mail->IsSMTP();
$mail->Port = 465;
$mail->Host = "smtp.gmail.com";
$mail->IsHTML(true);
$mail->Mailer = "smtp";
$mail->SMTPSecure = "ssl";
$mail->SMTPAuth = true;
$mail->Username = "xxxxx@gmail.com";
$mail->Password = "xxxxxxxxxx";
$mail->SingleTo = true; // if you want to send mail to the users individually so that no recipients can see that who has got the same email.
$mail->From = "xxxxxx@gmail.com";
$mail->FromName = "xxxxxxxxx";
$mail->addAddress($re_mail );
$mail->Subject = "Testing PHP Mailer with localhost ";
$mail->Body = "Hi,This system is working perfectly.";
if(!$mail->Send())
echo "Message was not sent PHP Mailer Error: " . $mail->ErrorInfo;
else
echo "Message has been sent";}
?>
<html>
<body>
<form id="form1" name="form1" method="post" action="">
<span id="spryselect1">
<label>Email:
<select name="student" id="student" tabindex="1">
<?php
$students = get_all_students();//this function works fine
while ($student = mysql_fetch_array($students)) {
echo "<option value=\"{$student["id"]}\"> {$student["first_name"]}</option> ";
}
?>
</select>
</label>
<p>
<label>
<input type="submit" name="submit" id="submit" value="Submit" />
</label>
</p>
</form>
</body>
</html>
注意: 我在function.php中有这个功能
function get_all_students() {
global $connection;
$query = "SELECT *
FROM student ORDER BY first_name ASC";
$student_set = mysql_query($query, $connection);
confirm_query($student_set);
return $student_set;
}
答案 0 :(得分:2)
最后我得到了答案,,,感谢大家在这里提供帮助:)
<?php require_once("connection.php"); ?>
<?php require_once("functions.php"); ?>
<?php require("class.phpmailer.php");?>
<?php
// START FORM PROCESSING
if( isset($_POST['submit'])) { // Form has been submitted.
$student = trim(mysql_prep($_POST['student']));
$re_to_student=get_student_by_id($_POST['proposer']);
//this is another function i have in my function.php
$st_email = $re_to_student["email"];
$mail = new PHPMailer();
$mail->PluginDir = './';
$mail->IsSMTP();
$mail->Port = 465;
$mail->Host = "smtp.gmail.com";
$mail->IsHTML(true);
$mail->Mailer = "smtp";
$mail->SMTPSecure = "ssl";
$mail->SMTPAuth = true;
$mail->Username = "mymail@gmail.com";
$mail->Password = "mypassword";
$mail->SingleTo = true; // if you want to send mail to the users individually so that no recipients can see that who has got the same email.
$mail->From = "mymail@gmail.com";
$mail->FromName = "myweb.com";
$mail->addAddress($st_email);
$mail->Subject = "test";
$mail->Body = "Hi,This system is working perfectly.";
if(!$mail->Send())
echo "Message was not sent PHP Mailer Error: " . $mail->ErrorInfo;
else
echo "Message has been sent";}
?>