Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.04.2012, 10:04   #1
balalay12
Пользователь
 
Аватар для balalay12
 
Регистрация: 11.03.2010
Сообщений: 24
По умолчанию Mysql даты

Всем привет. Столкнулся с проблемой когда начал делать отчеты.
Проблема вот в чем, когда я пытаюсь через POST передать дату либо несколько дат для периода отчетности значения из базы не достаются, а если в переменные сразу прописать дату то значения из БД достаются.

Пример:
PHP код:
    $date1 $_POST['date1'];
    
$date2 $_POST['date2'];    
    
$sql "SELECT * FROM zakaz WHERE date_zakaza between '$date1' and '$date2'";
    
$res mysql_query($sql);
    
    while(
$myrow mysql_fetch_assoc($res))
            {
                
printf("%s"$myrow['id_zakaza']);
            } 
balalay12 вне форума Ответить с цитированием
Старый 19.04.2012, 11:51   #2
Cronos20
Форумчанин
 
Регистрация: 08.07.2010
Сообщений: 679
По умолчанию

Какой тип данных у столбца с датами?
В каком формате передаете дату в POST
Покажите что выдает var_dump ($_POST) и какую ошибку mysql
P.S. between вообще неправильный и скорее всего не к месту
Cronos20 вне форума Ответить с цитированием
Старый 19.04.2012, 12:25   #3
balalay12
Пользователь
 
Аватар для balalay12
 
Регистрация: 11.03.2010
Сообщений: 24
По умолчанию

Тип данных date.
Дату передают в формате yyyy-mm-dd.

var_dump:
для обычно запроса по 1 дню
PHP код:
array(1) { ["date"]=> string(10"2012-04-16" 
для between
PHP код:
array(2) { ["date1"]=> string(10"2012-04-16" ["date2"]=> string(10"2012-04-18" 
Еще одна особенность что когда делаю все в 1 файле значения в базе достаются,а когда переношу в MVC то сразу ничего не происходит.

PHP код:
<html>
    <head>
    </head>
    <body>
        <form method="POST" action="">
            <input type="text" name="date1" />
            <br>
            <input type="text" name="date2" />
            <br>
            <input type="submit" />
        </form>
    </body>
</html>

<?php

    $hostname 
'127.0.0.1';
    
$username 'root';
    
$password 'root';
    
$dbName '_himchistka';

    
//Языковая настройка.
    
setlocale(LC_CTYPE"ru_RU.utf8");;

    
mysql_connect($hostname$username$password) or die ('Сервер не доступен');
    
mysql_query('SET NAMES utf8');
    
mysql_select_db($dbName) or die ('База данных не найдена');

    
session_start();

    
$res var_dump($_POST);
    echo 
$res;

    
$date1 $_POST['date1'];
    
$date2 $_POST['date2'];    
    
$sql "SELECT * FROM zakaz WHERE date_zakaza between '$date1' and '$date2'";
    
$resql mysql_query($sql);
    
    while(
$myrow mysql_fetch_assoc($resql))
            {
                
printf("%s"$myrow['id_zakaza']);
            }

?>
balalay12 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сделать так чтобы не отображались даты Даты вместо Цифр в ЕКСЕЛЬ? d88n Помощь студентам 1 17.06.2011 05:16
Определить среднее значение продаж от даты до даты СтепКо Microsoft Office Excel 1 26.02.2011 20:08
Сравнение даты (PHP MYSQL) Нужна идея реализации! YuZi_2009 PHP 6 11.02.2011 14:55
Автоматизация заполнения даты и зависимость ячейки времени к ячейке даты. Каравай Microsoft Office Excel 14 11.03.2010 18:11
обновление в блоге - Работа с MySQL в С++ с использованием библиотеки mysql++ Pblog Обсуждение статей 0 16.08.2009 16:00