如何将电子邮件输入 mysql 数据库
How to input emails into mysql database
所以我正在尝试存储来自 gmail 的电子邮件,我已经连接了所有内容并且我设法将所有电子邮件内容存储到数据库中但是现在我遇到了问题,每次我刷新页面时相同的电子邮件都存储在数据库。
$bodyText = imap_fetchbody($inbox,$email_number,1.2);
if(!strlen($bodyText)>0){
$bodyText = imap_fetchbody($inbox,$email_number,1);
}
$subject = imap_headerinfo($inbox,$email_number);
$subject = $subject->subject;
$stripped = str_replace('*', '<br>', $bodyText);
$sql = "SELECT id, subject, body FROM emails";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
$email_subject = $row['subject'];
if ($subject == $email_subject) {
echo "Email already in database";
}else{
$sql = "INSERT INTO emails (subject, body)
VALUES ('".$subject."', '".$stripped."')";
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
}
}
} else {
echo "0 results";
}
所以我尝试使用这个
if ($subject == $email_subject) {
echo "Email already in database";
}else{
$sql = "INSERT INTO emails (subject, body)
VALUES ('".$subject."', '".$stripped."')";
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
}
应该检查数据库中是否有相同主题的邮件,如果有则显示"Email already in database",如果没有则显示"New record created successfully"
输入有误,我一直在数据库中收到相同的电子邮件,所以每次刷新我的电子邮件的整个收件箱都会进入数据库
所以我正在尝试存储来自 gmail 的电子邮件,我已经连接了所有内容并且我设法将所有电子邮件内容存储到数据库中但是现在我遇到了问题,每次我刷新页面时相同的电子邮件都存储在数据库。
$bodyText = imap_fetchbody($inbox,$email_number,1.2);
if(!strlen($bodyText)>0){
$bodyText = imap_fetchbody($inbox,$email_number,1);
}
$subject = imap_headerinfo($inbox,$email_number);
$subject = $subject->subject;
$stripped = str_replace('*', '<br>', $bodyText);
$sql = "SELECT id, subject, body FROM emails";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
$email_subject = $row['subject'];
if ($subject == $email_subject) {
echo "Email already in database";
}else{
$sql = "INSERT INTO emails (subject, body)
VALUES ('".$subject."', '".$stripped."')";
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
}
}
} else {
echo "0 results";
}
所以我尝试使用这个
if ($subject == $email_subject) {
echo "Email already in database";
}else{
$sql = "INSERT INTO emails (subject, body)
VALUES ('".$subject."', '".$stripped."')";
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
}
应该检查数据库中是否有相同主题的邮件,如果有则显示"Email already in database",如果没有则显示"New record created successfully"
输入有误,我一直在数据库中收到相同的电子邮件,所以每次刷新我的电子邮件的整个收件箱都会进入数据库