termes
26.02.2009 - 20:31
Я хотел узнать сколько запросов делает мой скрипт на одной странице, и что бы подсчитать это добавил после каждого запроса
А в конце страницы написал
Теперь вопрос: Как думаете этот запрос:
PHP |
$ass_users=mysql_fetch_assoc(mysql_query(“SELECT * FROM `users` LIMIT 30”) ); |
Мне надо считать как два запроса, потому что как Вы видите с начало делается запрос:
mysql_query, а потом:
mysql_fetch_assoc. Хотелось бы узнать и Ваши мнение, заранее спасибо!
Спустя 58 минут, 13 секунд (26.02.2009 - 20:29) kirik написал(а):
Цитата (termes @ 26.02.2009 - 11:31) |
Мне надо считать как два запроса |
Почему? Ведь запрос тут только один и он - mysql_query, а mysql_fetch_assoc это разбор данных, полученных после запроса.
Спустя 1 день, 9 часов, 26 минут, 23 секунды (28.02.2009 - 05:55) qpayct написал(а):
да ещё и лимит определён.. нафик ваще счёт?
Спустя 3 дня, 6 часов, 15 минут, 15 секунд (1.03.2009 - 12:10) termes написал(а):
Цитата |
да ещё и лимит определён.. нафик ваще счёт? |
Но у меня же на одной странице очень много могут быть запросов к БД. Много инклуд файлов, так что сколько было запросов так считать легче! У меня другой вопрос: Как думаете считать-ли за запрос только mysql_query, или же и другие нап: mysql_fetch_assoc, mysql_num_query и т.д
Спустя 14 минут, 19 секунд (1.03.2009 - 12:25) kirik написал(а):
Цитата (termes @ 1.03.2009 - 04:10) |
Как думаете считать-ли за запрос только mysql_query, или же и другие нап: mysql_fetch_assoc, mysql_num_query и т.д |
Я же написал выше, что запросом является _только_ mysql_query() остальные mysql_* функции работают с результатом запроса. Тоесть если нужно посчитать именно количество запросов, то считать нужно количество вызовов mysql_query().
Для этого можно упростить задачу:
PHP |
$queries_num = 0; // где-нибудь в самом начале скрипта определяем эту переменную
// ----------------- Следующее вставляем в файл с функциями
// наш алиас функции mysql_query(), с подсчетом обращений function db_query($sql) { global $queries_num; $queries_num++;
return mysql_query($sql); }
// Теперь заменяем в скриптах все mysql_query на наш алиас db_query и echo 'Всего запросов: '.$queries_num; // Выводим число запросов |
Также можно считать время каждого запроса и пр.
Спустя 2 часа, 54 минуты, 18 секунд (1.03.2009 - 15:19) termes написал(а):
Цитата |
запросом является _только_ mysql_query() остальные mysql_* функции работают с результатом запроса. Тоесть если нужно посчитать именно количество запросов, то считать нужно количество вызовов mysql_query(). |
Спасибо, все понял.
а на счет твоей функци, что бы мне непришлось переписать вес мой
скрипт с самого начало, я как и выше писал- буду просто после
mysql_query добовлять
$_num_of_query++;... Еще раз спасибо за обяснение
Спустя 6 часов, 40 минут, 3 секунды (1.03.2009 - 21:59) kirik написал(а):
Цитата (termes @ 1.03.2009 - 07:19) |
что бы мне непришлось переписать вес мой скрипт с самого начало, я как и выше писал- буду просто после mysql_query добовлять $_num_of_query++; |
ИМХО это равнозначно
Только способ с функцией более гибкий.