Итак, я пытаюсь хранить электронные письма из 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;
}
}
, что позволяет проверить, есть ли в базе данных электронные письма с той же темой, и, если они есть, будет отображаться «Электронная почта уже есть».в базе данных », и если нет возможности отобразить« Новая запись создана успешно »
Положите что-то не так, и я продолжаю получать одни и те же электронные письма в базе данных, поэтому каждый раз, когда я обновляю всю папку« Входящие »моей электронной почтывходит в базу данных