// Mysql connect
$opt = [ PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION];
$conn = new PDO(
"mysql:host=".$settings['db']['host'].";dbname=".$settings['db']['name'].";port=".$settings['db']['port'].";",
$settings['db']['user'],
$settings['db']['password'],
$opt
);
...
После этого смотреть что вылазит в ошибках. Но в sqlite дата записывается в формате YYYY-MM-DD.Это не в sqlite, это исо стандарт записи даты.
В таблице в столбце date записана дата в формате DD.MM.YYYYВ таблице в столбце date записана дата в формате DD.MM.YYYYНу, то есть вы знали что есть формат конкретный формат, но все равно сделали через ж, в угоду собственному чувству прекрасного?
Мне нужно получить сроки на неделю вперед от сегодняшней датыИ вот мы приходим к самому интересному: почему запись в стандартном виде будет работать нормально, а в вашей записи все... очень плохо? Дело в том, что в большинстве бд дата сравнивается как строка, именно по этому запись идет как год.месяц.день, так как при сравнении 2 строк в таком формате любое сравнение 2 дат будет корректно сравнивать 2 строки с правильным результатом. Тем более что в sqlite нет типа данных date, но с правильным форматом содержимого он особо не нужен. Меняйте формат хранения и будет вам щастие.
SELECT v.product, , v.link FROM v_product v WHERE v.id = 5463 ORDER BY v.product ASC;
SELECT i.id as info_id, i.link_to_site FROM infograph v WHERE id = 5463;
SELECT i.info, description, title, price, first_letter FROM baseinfo v WHERE id = 5463;
Хорошо, но почему хрень?Не надо закрывать соединение, драйвер сам сбросит коннект при завершении скрипта, а закрытие вручную во первых лишняя операция, во вторых вполне возможно что после закрытия соединения код будет требовать какие-то данные из бд, понятное дело, безуспешно.
Может, есть какие-нибудь методы или способы, которые помогли бы найти проблему?Для начала - попробовать на другой машине, например на самом дешевом хостинге. Вангую, что там будет все ок, и проблема в локальной машине.
Как можно вывести точно такой же результат, но с повторами ID 2, например?Если с самого начала проектировать бд в нормальной форме, а не то что получилось, то задача вполне нормально решается. Создается таблица отношений наборов к блюдам, и объединяется как многие ко многим, и всё будет нормально выбираться. А кажущаяся "оптимальность" хранения идентификаторов строкой в одном поле - ошибка почти всех новичков, тем не менее это отвратительная практика, рожденная некомпетентностью и ленью. Меняйте структуру, пока не поздно, на этапе разработки это сделать проще, чем когда уже внесете кучу данных в рабочий говнопроект. Делайте сразу хорошо, чтобы потом не страдать.
мне надо что бы с переменными sql, тоесть не указывать самому дату, а надо что бы в запросе автоматом курдейт был, т е сегодня.будет что-то типа
SELECT *
from `table`
where DATE(dateTimeField) = DATE(now()),
and TIME(dateTimeField) >= '18:30'
and TIME(dateTimeField) <= '19:00'
SELECT concat(c.name,',',GROUP_CONCAT(e.name)) cn
FROM `companies` c
LEFT JOIN `employees` e
ON c.id = e.company_id
GROUP BY c.name