X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> не работает mysql_num_rows, правилен ли запрос
scva
scva
Topic Starter сообщение 13.4.2010, 15:49; Ответить: scva
Сообщение #1


запрос
[PHP]
<?
$pole = mysql_query("SELECT COUNT( * ) FROM `tovar` WHERE id_podcat =2", $db) or die("error! Записей не найдено!");
$posts = mysql_num_rows($pole);
echo "$posts";
?>
[/PHP]
выводит только 1

Что не так?
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZhukV
ZhukV
сообщение 13.4.2010, 16:09; Ответить: ZhukV
Сообщение #2


Гм, старина, а так у тя всегда будет.
Если ты используеш какие-то функции в MySQL (COUNT...), так нужно учитывать их синтаксис.
В твоем варианте можеш сделать так:
[PHP]
<?
$pole = mysql_query("SELECT * FROM `tovar` WHERE id_podcat =2", $db) or die("error! Записей не найдено!");
$posts = mysql_num_rows($pole);
echo "$posts";
?>
[/PHP]
либо:
[PHP]
<?
$pole = mysql_query("SELECT COUNT( * ) as count FROM `tovar` WHERE id_podcat =2", $db) or die("error! Записей не найдено!");
$posts = mysql_fetch_array($pole);
echo $posts['count'];
?>
[/PHP]
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
r3ntg3n
r3ntg3n
сообщение 13.4.2010, 16:18; Ответить: r3ntg3n
Сообщение #3


ZhukV, зачем создавать целый массив ради одного значения? не проще ли воспользоваться функцией list()?

[PHP]$pole = mysql_query("SELECT COUNT( * ) as count FROM `tovar` WHERE id_podcat =2", $db) or die("error! Записей не найдено!");
list ($cnt_pole) = mysql_fetch_row($pole);
echo $cnt_pole;[/PHP]
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
scva
scva
Topic Starter сообщение 13.4.2010, 16:29; Ответить: scva
Сообщение #4


(ZhukV @ 13.4.2010, 19:09) *
Гм, старина, а так у тя всегда будет.
Если ты используеш какие-то функции в MySQL (COUNT...), так нужно учитывать их синтаксис.
В твоем варианте можеш сделать так:
[php]
<?
$pole = mysql_query("SELECT * FROM `tovar` WHERE id_podcat =2", $db) or die("error! Записей не найдено!");
$posts = mysql_num_rows($pole);
echo "$posts";
?>
[/php]либо:
[php]
<?
$pole = mysql_query("SELECT COUNT( * ) as count FROM `tovar` WHERE id_podcat =2", $db) or die("error! Записей не найдено!");
$posts = mysql_fetch_array($pole);
echo $posts['count'];
?>
[/php]

воспользовался вторым вариантом, на твой взгляд какой бы ты посоветовал 1 или 2?
И еще маленький вопросик as count в двух словах что это?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
scva
scva
Topic Starter сообщение 13.4.2010, 16:32; Ответить: scva
Сообщение #5


(r3ntg3n @ 13.4.2010, 19:18) *
ZhukV, зачем создавать целый массив ради одного значения? не проще ли воспользоваться функцией list()?

[php]$pole = mysql_query("SELECT COUNT( * ) as count FROM `tovar` WHERE id_podcat =2", $db) or die("error! Записей не найдено!");
list ($cnt_pole) = mysql_fetch_row($pole);
echo $cnt_pole;[/php]

а нужно ли здесь as count, он и без него работает
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
r3ntg3n
r3ntg3n
сообщение 13.4.2010, 16:54; Ответить: r3ntg3n
Сообщение #6


as count не нужен. смело удаляй
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZhukV
ZhukV
сообщение 13.4.2010, 17:01; Ответить: ZhukV
Сообщение #7


(r3ntg3n @ 13.4.2010, 19:18) *
ZhukV, зачем создавать целый массив ради одного значения? не проще ли воспользоваться функцией list()?

А ты присмотрись на свой код. Ты ж делаеш тоже самое, вот только проганяеш через list()



(scva @ 13.4.2010, 19:32) *
а нужно ли здесь as count, он и без него работает

Если тянеш не одну запись, а несколько, включая опереации, БЕЗ ЭТОГО НЕ ОБОЙТИСЬ
Привык уж так. И плохого в этом коде, я не вижу.
(scva @ 13.4.2010, 19:29) *
И еще маленький вопросик as count в двух словах что это?

Когда ты вытаскиваеш несколько полей, то что есть после "as" передаст названия поля.
Вот к примеру:
$sql="SELECT id, log, pass, (SELECT * FROM table WHERE id='$id') as count"

Этот запрос вытащит id, log, pass и count, который обработался в другом запросе.
Короче говоря, as -- присваивает имя поля, чтоб ты потом мог его использовать.

(scva @ 13.4.2010, 19:29) *
воспользовался вторым вариантом, на твой взгляд какой бы ты посоветовал 1 или 2?

Разницы я и сам не вижу, но везде использую первый вариант. ЗВЫЧКА:rolleyes:
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
r3ntg3n
r3ntg3n
сообщение 13.4.2010, 17:04; Ответить: r3ntg3n
Сообщение #8


ZhukV,нет, не тоже самое, я не создаю массив, а всего лишь 1 переменную, что в дальнейшем использовании более удобно, поскольку не надо тянуть за собой конструкцию типа $arr['index'], а всего лишь $var - одну переменную
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZhukV
ZhukV
сообщение 13.4.2010, 17:46; Ответить: ZhukV
Сообщение #9


(r3ntg3n @ 13.4.2010, 20:04) *
ZhukV,нет, не тоже самое, я не создаю массив, а всего лишь 1 переменную, что в дальнейшем использовании более удобно, поскольку не надо тянуть за собой конструкцию типа $arr['index'], а всего лишь $var - одну переменную

Ну как нет, как ты проганяеш ее через list()?
Все же из-за чего мы начали?
Я просто указал два ваианта использования, ты показал третий, СУПЕР, если бы показывали все так свои решение.

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Запрос на бесплатные полезности
7 Tia2 1962 23.3.2024, 11:27
автор: Alexand3r
Открытая тема (нет новых ответов) Крауд-маркетинг который работает | Эффективные Ру-ссылки
1 Azyuka 1055 13.2.2024, 19:36
автор: tascha56
Открытая тема (нет новых ответов) Кто работает с партнерской программой eBay?
0 Stalser 1176 14.12.2021, 12:26
автор: Stalser
Открытая тема (нет новых ответов) Кто работает с партнеркой Кликбанк?
4 metvekot 1722 5.12.2021, 22:32
автор: adamsadriane
Открытая тема (нет новых ответов) Бесплатный аудит рекламы от специалиста с 20 летним стажем. Реклама не всегда работает.
Ваша реклама может быть больше!
0 AndyGray 6802 1.4.2021, 12:31
автор: AndyGray


 



RSS Текстовая версия Сейчас: 20.4.2024, 11:35
Дизайн