「ラップトップ」という名前のテーブルと、「Lap_War_Expiry」という名前のテーブル内の列があります。コードは、以前の投稿で編集したものと同じようにうまく実行されます。電子メールで複数のデータを取得するにはどうすればよいですか? . ただし、コードは 45 個のデータに対してのみ実行されます。100個のデータであるはずで、ユーザーにメールを送信しました。(メールが多すぎるように聞こえるかもしれませんが、データを 1 つのメールに結合する前に、まずすべてのデータが取得されていることを確認する必要があります)
以下の php.ini 設定を変更しようとしましたが、必要なメールをすべて取得できません。これ以外に変更すべきところはありますか?それとも私の設定が正しくないのでしょうか?
max_execution_time = 0 ; Maximum execution time of each script, in seconds
max_input_time = 0 ; Maximum amount of time each script may spend parsing request data
;max_input_nesting_level = -1 ; Maximum input variable nesting level
memory_limit = 128M ; Maximum amount of memory a script may consume (128MB)
これは、電子メールを送信するための私のコーディングです:
<?php
//class.phpmailer.php here
// ======== get database data ==================
$link = mysql_connect("localhost","root","");
$database="master_inventory";
mysql_select_db ($database,$link) OR die ("Could not open $database" );
$query2 = 'SELECT Lap_PC_Name, Lap_War_Expiry FROM laptop';
name.
$result1 = mysql_query($query2);
while($row = mysql_fetch_array($result1)) {
$Lap_PC_Name = $row['Lap_PC_Name'];
$Lap_War_Expiry = $row['Lap_War_Expiry'];
$date=$row['Lap_War_Expiry'];
// $date is get from table
$date = date ('d-m-Y')||('d/m/Y') + (7 * 24 * 60 * 60);
$newdate = strtotime ( '+45 days' , strtotime ( $row['Lap_War_Expiry']) ) ;
$newdate = date ( 'd/m/Y' , $newdate );
if ($newdate <45) {
$mail->Username = "myemail@gmail.com";
$mail->Password = "password";
//sent email code is here
if(!$mail->Send())
echo "Message was not sent <br />PHPMailer Error: " . $mail->ErrorInfo;
else
echo "Message has been sent";
}
else {
echo "No PC expired less than 45 days for today. ";
}
}
?>