@Искандар, пойми. То что ты делаешь, в простонародье называется "через жопу". Объясни пожалуйста подробнее, зачем у тебя в БД случились две таблицы одинакового назначения (сущности). Изначальную задачу ты уже объяснил "Если в первой таблице нет данных на определённую дату, то данные нужно взять из второй таблицы", дальше ты начинаешь лепить "горбатого к стенке. Как часто добавляются/удаляются/изменяются данные в первой и второй таблицах? Почему нельзя сразу перенести данные из второй таблицы которых нет в первой таблице одним разом, зачем это всё дёргать по одной дате?
я же только что сказал. Неправильно задачу поставил изначально. Теперь про 2 таблица забудь. Как мне выводить сообщение если $a не совпадает с БД?
@Искандар ты просишь помочь в решении задачи, но отказываешься объяснить зачем нужно решать эту задачу. И описать логическую цепочку которая привела к постановке данной задачи. Поэтому про две таблицы я забыл, и про тебя тоже забыл. Удачи.
PHP: $row =mysqli_num_rows($result); if(empty($row)) { echo 'пусто'; } Else { echo 'не пусто'; } Теперь наоборот. Когда $a с БД совпадает, всё равно echo "пусто" показывает. --- Добавлено --- Спасибо. Я мне сложно объяснить. Потому что я не русский...
@Искандар дело не в русском языке, а в плохом знаний php. Я тебе советую сделать так. Вытяни любую одну строку по ее ID. вытяни оттуда дату, и сравни ее с такой же написанной тобой, я уверен покажет false. Например таблица такая: table ID - A9381368-60E4-4E19-AB4C-F31FD1372F73 Data - 2018-12-27 10:24:19.000 PHP: $result=mysql_query("SELECT date FROM table WHERE ID='A9381368-60E4-4E19-AB4C-F31FD1372F73'"); if($result['date'] == '2018-12-27'){ echo 'совпали'; }else{ echo 'не совпали'; } И они у тебя не совпадут, поэтому у тебя и запрос твой пустой. Потому что так дату не ищут. А вот так они совпадут: PHP: if(date('Y-d-m', strtotime($result['date'])) == date('Y-d-m', strtotime('2018-12-27'))){ echo 'совпали'; }else{ echo 'не совпали'; } В итоге ты просто не правильно ищешь свою дату в таблице, поэтому она всегда пустая. А чтобы посмотреть твой ответ на запрос, есть функция var_dump() PHP: $result=mysql_query("SELECT date FROM table WHERE date='2018-12-28' GROUP BY date"); var_dump($result); //в данном случаем пусто.
@Искандар, действительно расширение mysql для работы с базой MySQL устарело и удалено в новых версиях PHP. Большинство подсказок приведены для расширения mysqli. В приведённом в 1-м сообщении примере, достаточно убедиться, что функция mysql_query() вернула значение true (в переменную $result) и более, чем ноль (0) строк результирующего набора (проверяется фунцией mysql_num_rows()).
ТС, запусти дебагер, который есть в любой IDE, и тогда увидишь построчно, как исполняется код, и что лежит в переменной. Метод тыка не всегда самый правильний вариант в программировании