URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 8337
[ Назад ]

Исходное сообщение
"переменные 0 длины"

Отправлено creapt , 06-Июл-09 01:59 
всем привет!
Прошу помощи.
запрос в mysql
$result=$dbh->prepare(q{select col_name FROM tbl_name WHERE col_name .......});
результат запроса (если делать из mysql)
Empty set (0.00 sec)

Вопрос:
мне нужно обозначить (выделить, определить) перенную, в которую записываются данные из этих запросов.
т.е., если Empty set (0.00 sec), то $result="abc".
Чтобы, можно было манипулировать с помощью if().


Содержание

Сообщения в этом обсуждении
"переменные 0 длины"
Отправлено phpcoder , 06-Июл-09 08:21 
>Вопрос:
>мне нужно обозначить (выделить, определить) перенную, в которую записываются данные из этих
>запросов.
>т.е., если Empty set (0.00 sec), то $result="abc".
>Чтобы, можно было манипулировать с помощью if().

Полагаю, что что-то вроде:

if ($dbh->numrows eq 0) {
    $result = "abc";
}

(Впрочем, могу и ошибаться, т.к. Перла не знаю, но в РНР ф-ция для подсчета количества строк в ответе сервера называется mysql_num_rows())


"переменные 0 длины"
Отправлено абырвал , 06-Июл-09 14:09 
>[оверквотинг удален]
>>Чтобы, можно было манипулировать с помощью if().
>
>Полагаю, что что-то вроде:
>
>if ($dbh->numrows eq 0) {
>    $result = "abc";
>}
>
>(Впрочем, могу и ошибаться, т.к. Перла не знаю, но в РНР ф-ция
>для подсчета количества строк в ответе сервера называется mysql_num_rows())

Вот только не нужно троллить пихпиховой тошниловкой. Она уныла чуть более, чем полностью.



"переменные 0 длины"
Отправлено angra , 06-Июл-09 09:29 
prepare не выполняет запрос, для этого есть execute. Также в DBI есть функции для получения количества строк(rows), состояния/кода ошибки(state, err) и собственно данных(различные варианты fetch). В доке по DBI все это очень подробно описано с примерами.

"переменные 0 длины"
Отправлено creapt , 06-Июл-09 16:42 
>prepare не выполняет запрос, для этого есть execute. Также в DBI есть
>функции для получения количества строк(rows), состояния/кода ошибки(state, err) и собственно данных(различные
>варианты fetch). В доке по DBI все это очень подробно описано
>с примерами.

Спасибо

Я не стал писать весь текст скрипта.

функции для получения количества строк(rows)- хорошая мысль


"переменные 0 длины"
Отправлено Pahanivo , 06-Июл-09 20:56 
>>prepare не выполняет запрос, для этого есть execute. Также в DBI есть
>>функции для получения количества строк(rows), состояния/кода ошибки(state, err) и собственно данных(различные
>>варианты fetch). В доке по DBI все это очень подробно описано
>>с примерами.
>
>Спасибо
>
>Я не стал писать весь текст скрипта.
>
>функции для получения количества строк(rows)- хорошая мысль

подкину еще пару умных мыслей
http://search.cpan.org/~capttofu/DBD-mysql-4.012/lib/DBD/mys...
http://search.cpan.org/~timb/DBI-1.609/DBI.pm