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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Способы фильтрации данных 
:(
    Опции темы
alloha
Дата 19.9.2007, 12:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Каким образом можно осуществить фильтрацию данных полученных из бд?
Если можно покажите примерчик.
PM MAIL   Вверх
console
Дата 19.9.2007, 12:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 307
Регистрация: 12.2.2007
Где: Belarus::Minsk

Репутация: 2
Всего: 3



MySQL cookbook:

Код

mysql> SELECT t, srcuser, srchost  FROM mail WHERE srchost = 'venus';
+---------------------+---------+---------+
| t                   | srcuser | srchost |
+---------------------+---------+---------+
| 2006-05-14 09:31:37 | gene    | venus   |
| 2006-05-14 14:42:21 | barb    | venus   |
| 2006-05-15 08:50:57 | phil    | venus   |
| 2006-05-16 09:00:28 | gene    | venus   |
| 2006-05-16 23:04:19 | phil    | venus   |
+---------------------+---------+---------+
mysql> SELECT t, srcuser, srchost FROM mail WHERE srchost LIKE 's%';
+---------------------+---------+---------+
| t                   | srcuser | srchost |
+---------------------+---------+---------+
| 2006-05-11 10:15:08 | barb    | saturn  |
| 2006-05-13 13:59:18 | barb    | saturn  |
| 2006-05-14 17:03:01 | tricia  | saturn  |
| 2006-05-15 17:35:31 | gene    | saturn  |
| 2006-05-19 22:21:51 | gene    | saturn  |
+---------------------+---------+---------+





--------------------
user posted image
Nothing is impossible
My WeBlog
PM MAIL WWW ICQ   Вверх
VeNICK
Дата 19.9.2007, 13:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



А если поконкретней. Что именно нужно сотрировать.

Код

select name from t1 order by name (ASC | DESC)

PM MAIL   Вверх
Guedda
Дата 19.9.2007, 14:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Подрывник
****


Профиль
Группа: Завсегдатай
Сообщений: 3137
Регистрация: 27.12.2005
Где: Ростов-на-Дону

Репутация: 13
Всего: 78



Цитата(VeNICK @  19.9.2007,  14:57 Найти цитируемый пост)
А если поконкретней. Что именно нужно сотрировать.

Здесь не про сортировку говорят, а про фильтрацию... 
Пользоваться надо методом LIKE
Гугли!


--------------------
Ll 2
PM MAIL WWW ICQ Skype GTalk   Вверх
console
Дата 19.9.2007, 14:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 307
Регистрация: 12.2.2007
Где: Belarus::Minsk

Репутация: 2
Всего: 3



Разве WHERE не подходит для фильтрации?


--------------------
user posted image
Nothing is impossible
My WeBlog
PM MAIL WWW ICQ   Вверх
Guedda
Дата 19.9.2007, 14:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Подрывник
****


Профиль
Группа: Завсегдатай
Сообщений: 3137
Регистрация: 27.12.2005
Где: Ростов-на-Дону

Репутация: 13
Всего: 78



Цитата(console @  19.9.2007,  15:12 Найти цитируемый пост)
Разве WHERE не подходит для фильтрации?

Я про связку WHERE LIKE. Так вроде как будет лучше фильтрация, и всегда верная ;)


--------------------
Ll 2
PM MAIL WWW ICQ Skype GTalk   Вверх
alloha
Дата 19.9.2007, 15:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(Guedda @ 19.9.2007,  14:43)
Цитата(console @  19.9.2007,  15:12 Найти цитируемый пост)
Разве WHERE не подходит для фильтрации?

Я про связку WHERE LIKE. Так вроде как будет лучше фильтрация, и всегда верная ;)

Верно говорите, не сортировка а именно фильтрация. Сам механизм мне понятен! Только вот такая вот штука, вот код:

Код

$db = pg_query("select datep from konkurs where datep>='".$date."' and datep<='".$end_date."' group by datep order by datep DESC"); \\\\\\ Вот тут происходит фильрация по полю datap (дата подачи), все отлично работает

$npp=1;
foreach($db as $datep){                                                                                      \\\\\\ А вот начиная от сюда должна идти расфасовка в табличку, но она не происходит, отображается только поле "дата подачи", то по которому идет сортировка! Не пойму в чем трабла, все вроде правильно делаю!

    $date=$datep['datep'];
    $query="select * from konkurs where datep='".$date."' order by datep;";
    $drivers=db_query($con, $query);
    foreach($drivers as $rez){
        echo '<tr>';
        echo '<td class="events"><p class="text">'.($npp++).'</td>';
        echo '<td class="events"><p class="text">' .$rez['date'].'<br></td>';
        echo '<td class="events"><p class="text">' .$rez['clients'].'<br></td>';
        echo '<td class="events"><p class="text">' .$rez['tipe'].'<br></td>';
        echo '<td class="events"><p class="text">' .$rez['links'].'<br></td>';
        echo '<td class="events"><p class="text">' .$rez['op'].'<br></td>';
        echo '<td class="events"><p class="text">' .$rez['datep'].'<br></td>';
        echo '<td class="events"><p class="text">' .$rez['otv'].'<br></td>';
        echo '<td class="events"><p class="text">' .$rez['rez'].'<br></td>';
        echo '</tr>';


Может есть у кого мнение? Подскажите в чем может быть трабла!
PM MAIL   Вверх
ewolf
Дата 19.9.2007, 15:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 389
Регистрация: 15.8.2006
Где: г. Москва

Репутация: 8
Всего: 18



Сначала вы вызываете pg_query, причем не указывая линк на соединение с базой, потом какую-то функцию db_query, которая использует соединение с базой. После pg_query  вы не используете pg_fetch_row для получения записей, да и после db_query тоже (допускаю, что это ваша функция, сразу возвращающая массив).

Определитесь с тем, что вы все-таки вызываете.

Это сообщение отредактировал(а) ewolf - 19.9.2007, 15:46
PM MAIL ICQ   Вверх
alloha
Дата 19.9.2007, 16:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(ewolf @ 19.9.2007,  15:46)
Сначала вы вызываете pg_query, причем не указывая линк на соединение с базой, потом какую-то функцию db_query, которая использует соединение с базой. После pg_query  вы не используете pg_fetch_row для получения записей, да и после db_query тоже (допускаю, что это ваша функция, сразу возвращающая массив).

Определитесь с тем, что вы все-таки вызываете.

Функция db_query совершает запрос к базе данных, то же что и pg_query, честно говоря разници я не знаю, но в другом скрипте работате. в данном случае соединение с базой происходит, т.к. дату подачи видно же. Каким образом в данном случае я могу это использовать (pg_fetch_row)

есть еще вот такой вариант, но он тоже выводит только дату подачи:

Код

while ($rez = pg_fetch_array($db)){
   echo "<tr align=center>";
{
$a++;
echo '<tr align=center class="row' . ($a%2+1) . '">';
echo '<td class="events"><p class="text">' .$a. '<br></td>';
echo '<td class="events"><p class="text">' .$rez['date'].'<br></td>';
echo '<td class="events"><p class="text">' .$rez['clients'].'<br></td>';
echo '<td class="events"><p class="text">' .$rez['tipe'].'<br></td>';
echo '<td class="events"><p class="text">' .$rez['links'].'<br></td>';
echo '<td class="events"><p class="text">' .$rez['op'].'<br></td>';
echo '<td class="events"><p class="text">' .$rez['datep'].'<br></td>';
echo '<td class="events"><p class="text">' .$rez['otv'].'<br></td>';
echo '<td class="events"><p class="text">' .$rez['rez'].'<br></td>';
}
echo '</tr>';
}
echo '</table>';


Добавлено через 1 минуту и 26 секунд
я честно говоря с php не так давно общяюсь может чего и недопонимаю!
PM MAIL   Вверх
ewolf
Дата 19.9.2007, 16:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 389
Регистрация: 15.8.2006
Где: г. Москва

Репутация: 8
Всего: 18



Добавте после строки

Код

while ($rez = pg_fetch_array($db)){
 

строчку

Код

var_dump($res);


Посмотрите, что выводит.

PM MAIL ICQ   Вверх
alloha
Дата 19.9.2007, 16:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(ewolf @ 19.9.2007,  16:17)
Добавте после строки

Код

while ($rez = pg_fetch_array($db)){
 

строчку

Код

var_dump($res);


Посмотрите, что выводит.

Сверху таблички появилась надпись NULL
PM MAIL   Вверх
ewolf
Дата 19.9.2007, 16:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 389
Регистрация: 15.8.2006
Где: г. Москва

Репутация: 8
Всего: 18



Ну, я имел ввиду переменную $rez, естественно - опечатка у меня.
PM MAIL ICQ   Вверх
alloha
Дата 19.9.2007, 16:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Это как?
PM MAIL   Вверх
alloha
Дата 19.9.2007, 17:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Выводит значение NULL

Это сообщение отредактировал(а) alloha - 20.9.2007, 08:31
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




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


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

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