У меня есть таблица с D_Number, которая соответствует номеру дня в году.День года в месте где
Date D_Number Schedule
9/24/2015 267 3T
10/15/2015 288 2R
11/5/2015 309 PR
У меня есть следующий запрос.
$day_num=date("z")+1;
$query_Recordset2 = "SELECT * FROM b_schedule_dates WHERE
b_schedule_dates.D_Number = $day_num";
В принципе, если сегодня было 10/15/2015 или день № 267, график выполнения должен быть 3Т.
У меня есть второй запрос, который ищет расписание для эха.
$day= date('w');
$day_num=date("z")+1;
$sched=$row_Recordset2['Schedule'];
$d_number=$row_Recordset2['D_Number'];
if($day_num === $d_number){
$s=$sched;
}else {
$s="2R";
}
if (isset($s)) {
$colname_Recordset1 = $s;
}
$query_Recordset1 = sprintf("SELECT * FROM b_schedule WHERE b_schedule.Schedule =%s"
Что я делаю неправильно? Кажется, он не распознает 1-й запрос $ day_num. Я просто хочу, чтобы он соответствовал соответствующему расписанию, если дата происходит, причем каждая дата имеет свой собственный график. Если это не так, просто нужно следовать графику 2R. b_schedule имеет разное расписание с разными начальными и конечными временами, основанными на расписании.
Start End Schedule
8:00:00 9:30:00 3T
8:00:00 10:30:00 2R
8:00:00 2:30:00 PR
Вы пытались помещать кавычки вокруг своей переменной? вы действительно должны посмотреть на параметрирование вашего запроса –
У вас была ошибка вставки? Где находится остальная часть вызова 'sprintf'? – Barmar
Тест 'isset ($ s)' не нужен. 'If / else' перед этим ** всегда ** устанавливает' $ s'. – Barmar