^vas\/(?<param>test)|(?<param>var\/test)
System.out.println(new String(bytes, "Cp1252");
SELECT * FROM books
INNER JOIN books_authors ON books.id = books_authors.booksid
INNER JOIN authors ON books_authors.authorid = authors.id
@[^"]([0-9a-zа-я\.-]{2,}\.(?:ru|com|net)(?:\/[^\s]*)?)[^"]@miu
INSERT INTO dateplan
(id_tas_dat, date_dat)
VALUES
(16, '2015-09-14'),
(7, '2015-09-14'),
(8, '2015-09-14'),
(10, '2015-09-14'),
(11, '2015-09-14')
$inserts = '';
$date = $_POST['data_oper_tas'];
for ($i = 0, $i < count($_POST['check_func']); $i++)
{
$inserts .= '('. $_POST['check_func'][$i] .','. $date .'),';
}
$insertQuery = 'INSERT INTO dateplan (id_tas_dat, date_dat) VALUES ';
$mysqli = new mysqli('localhost', 'my_user', 'my_password', 'world');
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
$stmt = $mysqli->prepare($insertQuery . rtrim($inserts, ','));
$stmt->execute();
$stmt->close();
function THEME_preprocess_page(&$vars, $hook)
-- Генерируем временную таблицу с датами для примера
CREATE TEMPORARY TABLE temp_t (tdate DATE);
INSERT INTO temp_t (tdate) VALUES ('2015-09-02');
INSERT INTO temp_t (tdate) VALUES ('2015-09-02');
INSERT INTO temp_t (tdate) VALUES ('2015-09-05');
INSERT INTO temp_t (tdate) VALUES ('2015-09-05');
INSERT INTO temp_t (tdate) VALUES ('2015-09-07');
-- Пишим процедуру генерации дней. На вход идет дата и по ней генерируется таблица с 1 по последний день месяца этой даты
DROP PROCEDURE IF EXISTS buildMonthTable;
DELIMITER $$
CREATE PROCEDURE buildMonthTable(IN indate DATE)
BEGIN
DECLARE lastday DATE DEFAULT LAST_DAY(indate);
DECLARE startday DATE DEFAULT DATE_ADD(indate, INTERVAL - DAYOFMONTH(indate) +1 DAY);
DROP TABLE IF EXISTS temp_month_days;
CREATE TEMPORARY TABLE temp_month_days (mday DATE);
WHILE (lastday >= startday) DO
INSERT INTO temp_month_days VALUES (startday);
SET startday = DATE(DATE_ADD(startday, INTERVAL +1 DAY));
END WHILE;
END$$
DELIMITER;
-- Вызываем процедуру для генерации таблицы для текущего месяца
CALL buildMonthTable(CURDATE())
-- Соединяем две таблицы и группируем по датам
SELECT tm.mday, COUNT(tt.tdate) AS COUNT FROM temp_month_days AS tm
LEFT JOIN temp_t tt ON tm.mday = tt.tdate
GROUP BY tm.mday