В настоящее время я разрабатываю систему, которая будет уведомлять пользователя о том, что в ближайшее время гарантия их продукта истекла. Если дата меньше 45 дней, тогда мне будет автоматически отправлено электронное письмо. Пока я использую ниже код для отправки электронной почты. Он может работать без проблем.Код для чтения каждой строки даты в таблице базы данных
$days = (strtotime("2013-9-23") - strtotime(date("Y-m-d")))/(60 * 60 * 24);
if ($days<45)
include 'sendmail.php';
else {
echo "Problem!";
}
Это может быть невозможно скопировать дату по одному. Итак, я думаю, что система может читать каждую строку даты в самой таблице, но я не собираюсь это делать. Что я должен делать, так что приведенный выше код может считывать данные без конкретных его как «2013-9-23» и т.д.
Мой полный код:
// set database server access variables:
$host = "localhost";
$user = "root";
$pass = "";
$db = "master_inventory";
// open connection
$connection = mysql_connect($host, $user, $pass) or die ("Unable to connect!");
// select database
mysql_select_db($db) or die ("Unable to select database!");
// create query
$query = 'SELECT Lap_PC_Name, Lap_War_Expiry FROM laptop';
$date = 'SELECT Lap_War_Expiry FROM laptop';
// execute query
$result = mysql_query($query) or die ("Error in query: $query. ".mysql_error());
// see if any rows were returned
if (mysql_num_rows($result) > 0)
$days = (strtotime($date) - strtotime(date("Y-m-d")))/(60 * 60 * 24);
if ($days<45)
include 'sendmail.php';
else {
echo "Problem!";
}
while($row = mysql_fetch_array($result)) {
$Lap_PC_Name = $row['Lap_PC_Name'];
$Lap_War_Expiry = $row['Lap_War_Expiry'];
}
Мой sendmail.php код:
<?php
// set database server access variables:
$host = "localhost";
$user = "root";
$pass = "";
$db = "master_inventory";
// open connection
$connection = mysql_connect($host, $user, $pass) or die ("Unable to connect!");
// select database
mysql_select_db($db) or die ("Unable to select database!");
// create query
$query = "SELECT * FROM laptop";
// execute query
$result = mysql_query($query) or die ("Error in query: $query. ".mysql_error());
// see if any rows were returned
if (mysql_num_rows($result) > 10) {
for ($query=1; $query<=$result; $query++){
while($row = mysql_fetch_array($result)) {
$Lap_PC_Name = $row['Lap_PC_Name'];
$Lap_War_Expiry = $row['Lap_War_Expiry'];
}
}
$to = '[email protected]';
$subject = 'Testing sendmail';
$message = 'The Following licensed will expired in less than one month. PC
Name:'.$Lap_PC_Name. '.The license will expire on '.$Lap_War_Expiry;
$headers = 'From: [email protected]';
if (mail($to, $subject, $message, $headers)) {
echo "Email sent.";
}
else {
echo "Email sending failed.";
}
}
?>
Ваш вопрос непонятен. Пожалуйста, обновите свой вопрос с подробностями и большим количеством кода. –
@sala Uddin Я отредактировал мой вопрос и объяснил больше об этом. Спасибо, что упомянул. – user2810332