Есть код отправки email, который отправляет значение переменной $message письмом В саму переменную значения попадают из select(а). $to = "example@mail.ru, "; //адрес получателя $to .= "example@mail.ru";//еще один адрес получателя $subject = "День рождения!"; //Тема письма $message = $final_message; // значение переменной передаются в тело письма $headers = "Content-type: text/html; charset=UTF-8 \r\n"; $headers .= "From: РДЛ-Телеком <example@mail.ru>\r\n"; $headers .= "Reply-To: example@mail.ru\r\n"; mail($to, $subject, $message, $headers); // отправляем письмо. ?> Вопрос: Как мне НЕ отправлять письмо, если значение переменной $final_message пустое? То есть когда SELECT не вернул значений. Не пойму как прописать условие
с полученного запроса в бд, проверить на возвращаемое кол-во строк, которые были найдены и добавлены в результат. Дальше тривиально условие...
$result = $mysqli->query('SELECT NAME, LAST_NAME, PERSONAL_BIRTHDAY FROM b_user WHERE DATE_ADD(PERSONAL_BIRTHDAY, INTERVAL YEAR(CURDATE())-YEAR(PERSONAL_BIRTHDAY) + IF(DAYOFYEAR(CURDATE()) > DAYOFYEAR(PERSONAL_BIRTHDAY),1,0) YEAR) BETWEEN CURDATE() AND DATE_ADD(CURDATE(), INTERVAL 1 DAY);'); // запрос на выборку $count = mysqli_num_rows($result); // количество строк в запросе // Вот тут считаю кол-во строк if ($count > 1) { // а вот само условие mail($to, $subject, $message, $headers); } else { die } ?> //Сейчас вообще не отрабатывает скрипт до конца, тоесть не отправляет письмо
убери --- Добавлено --- во вторых, инструмент юзаешь на ООП, а проверяешь процедурным кодом --- Добавлено --- PHP: $resource = $db -> query( 'SELECT ...' ); if ( empty ( $resource -> num_rows ) ) { exit ( 204 ); } mail ( ... );