Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> MySql виборка по промежутку дати! 
:(
    Опции темы
NAS
Дата 5.6.2008, 15:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 5.5.2007
Где: Ukrain/Ternopil/B am

Репутация: нет
Всего: 1



как мне создать запрос чтоб сделать виборку по дате! от одного числа до другого!
Код

"SELECT * FROM `CardVud` WHERE `login` = '".$v."' and `date`<'".$date_1."' and `date`>'".$date_2."'"


логин мне тоже нужен!
PM MAIL WWW ICQ Skype GTalk Jabber YIM   Вверх
Feldmarschall
Дата 5.6.2008, 15:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 1
Всего: 32



запрос нормальный.
PM   Вверх
NAS
Дата 5.6.2008, 17:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 5.5.2007
Где: Ukrain/Ternopil/B am

Репутация: нет
Всего: 1



Может у меня ожибка гдето в другом месте: 
Код

<?php
class card{
        private $host = "localhost";
    private $user = "root";
    private $pass = "cmos";
    private $db = "Card";
    
    protected function connect(){
            session_start();
            $con = mysql_connect($this->host,$this->user,$this->pass) or die ("Помилка конекту з сервером");
        $db = mysql_select_db($this->db) or die ("Помилка конекту з БД");
        echo '<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />'."\n";
        mysql_query("SET CHARACTER SET 'utf8'") or die ("Помилка кодування\n");
        }
    }

class cardVuv extends card{
    public function vuv($date_1, $date_2){
            $this->connect();
            $all_q = "SELECT * FROM `CardVud` WHERE `date`<'".$date_1."' and `date`>'".$date_2."'";
            $query = mysql_query($all_q) or die ("неправельний запит в сортуванні по даті!");
            while($all = mysql_fetch_array($query)){
                $login[$all['id']]=$all[login];
                
            }
            asort($login);
            $log = NULL;
            foreach($login as $k => $v){
                
                if ($log!=$v){
                    $log  = $v;
                    $q = "SELECT * FROM `CardVud` WHERE `login` = '".$v."' and `date`='".$date_1."' and `date`>'".$date_2."'";
                    $query_k = mysql_query($q) or die ("помилка в запиті, для кількості виданих карт");
                    $allCard = mysql_num_rows($query_k);
                    $Login = mysql_fetch_array($query_k);
                    echo $Login['login']." ".$Login['pip']." ".$Login['branch']." ".$allCard."<br />\n";
                }
                }
            }
    }
$card = new cardVuv;
$card->vuv("2008-05-27","2008-05-28");
?>

PM MAIL WWW ICQ Skype GTalk Jabber YIM   Вверх
bars80080
Дата 6.6.2008, 09:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 9
Всего: 315



попробуй сделать так что ли:

Код

                    $query_k = mysql_query($q) or die ("помилка в запиті, для кількості виданих карт");
                    $allCard = mysql_num_rows($query_k);
                    
                    while($Login = mysql_fetch_array($query_k)) {
                            echo $Login['login']." ".$Login['pip']." ".$Login['branch']." ".$allCard."<br />\n"; }



да и напиши, что у тебя получается, что не получается, а главное, что ты хочешь получить
PM MAIL WWW   Вверх
NAS
Дата 6.6.2008, 17:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 5.5.2007
Где: Ukrain/Ternopil/B am

Репутация: нет
Всего: 1



Спасибо за ответ! Но мне не надо штоб оно запись виводило больше 1ого раза ;) записи все одинакови і мне надо штоб вивело толко один Логин і количество полей где он находится (ето роботает!)!!!!
У меня просто не роботаєт запрос з датами! когда я передаю одну дату і ставлю = $date_1 то всьо роботает! но вот как сделать штоб оно виберало промежуток дат?!
PM MAIL WWW ICQ Skype GTalk Jabber YIM   Вверх
bars80080
Дата 6.6.2008, 17:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 9
Всего: 315



да нормально вроде составлен запрос, ты наверно путаешься с переменными

попробуй, после строчки :
Код

            $all_q = "SELECT * FROM `CardVud` WHERE `date`<'".$date_1."' and `date`>'".$date_2."'";
// вставить:
echo $all_q;
 и посмотри правильно ли соотносятся числа. то есть берёшь ли ты внутри промежутка или снаружи
PM MAIL WWW   Вверх
NAS
Дата 6.6.2008, 18:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 5.5.2007
Где: Ukrain/Ternopil/B am

Репутация: нет
Всего: 1



Всьо роботаєт! Я так всегда проверяю! 
Код

SELECT * FROM `CardVud` WHERE `date`<'2008-05-27' and `date`>'2008-05-30'

Я делаю етот запрос в phpMyadmin но он успешно виполняется но не дайот никаких полей! O_o 
Cтранно потому што дание в етой БД з такими числами есть!!!

Добавлено через 13 минут и 21 секунду
Йо-ма-йо спасибо я попутал знаки "<" i ">"!!!  Большое тебе спасибо !!!!!
PM MAIL WWW ICQ Skype GTalk Jabber YIM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Базы Данных | Следующая тема »


 




[ Время генерации скрипта: 0.0505 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.