2014-12-25 3 views
-1

Я за столом tbl_month с седловиной month и year, содержащих значения, какВставить число дней в базу данных в соответствии с месяцем

month year 
    1  2015 
    2  2015 
    3  2015 
    4  2015 
    5  2015 
............ 
    12  2015 

Из приведенной выше таблиц, я выборка месяца и года и хочу вставить номер дней в таблицу tbl_days согласно месяцу, до сих пор я смогу вставить в течение 30 дней со следующим кодом:

for($count=1;$count<31;$count++) { 
    $query="INSERT INTO tbl_days (day_no, brand_id) VALUES ('".$count."','".$_POST['brand_id_'.$count]."')"; 
    mysql_query($query); 
} 

Как я могу вставить число дней в зависимости от месяца в таблицу tbl_days например, на 12-й месяц (декабрь), 31 день, а если месяц 1 (январь) снова 31 день, но за месяц 2 (февраль) 28 дней и если високосный год (февраль) 29 дней?

+1

Разве это довольно бессмысленно, если вы не хранить месяц в 'tbl_days' так или иначе? И как вы тоже не сохраняете год, февраль имеет 28 или 29 дней? –

+0

@NielsKeurentjes за месяц n год у меня есть другая таблица, из которой я собираюсь месяц и год. отредактировал и обновил вопрос. – Shehary

+0

Вы действительно застряли в течение 9 месяцев по этому вопросу? –

ответ

1

Попробуйте это:

$days = cal_days_in_month(CAL_GREGORIAN, date('m'), date('Y')); 
$query = ''; 
for($count=1; $count<=$days; $count++) { 
    $query .="INSERT INTO tbl_days (day_no, brand_id) VALUES('".$count."', '".$_POST['brand_id_'.$count]."'); \n"; 
} 
// Run query one time instead of "days" time 
mysql_query($query); 
Смежные вопросы