powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / mysql_fetch_row
13 сообщений из 13, страница 1 из 1
mysql_fetch_row
    #33239845
Фотография lissyara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
// вытаскиваем рейтинг страниц из БД
$sql = mysql_query("SELECT `page`, COUNT(*) AS `count` FROM `counter_segodnya` 
WHERE `razdel` = 'site' GROUP BY `page` ORDER BY `count` DESC");
// Строим табличку по тем кого достали
while ($row_id = mysql_fetch_row($sql))
{
for ($i =  0 ; $i < mysql_num_fields($sql); $i++)
 {
 // строим sql-запрос
 $sql_kuda_prischel = "SELECT `zagolovok`, `description` FROM `site_table` WHERE `page_id` = '" . $row_id[$i] . "'";
 $massiv_kuda = mysql_fetch_array(mysql_query("$sql_kuda_prischel"));
// собственно тут вывод результатов.
// ......................................................  
}
} 
Такой код. Но. Запрос к MySQL (первый) возвращает два столбца -
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
+------+-------+
| page | count |
+------+-------+
|  10    |    125  |
|  11    |     61  |
|  21    |     59  |
|  25    |     53  |
|  14    |     53  |
|  26    |     51  |
|  24    |     49  |
Соответственно при i=1 - $row_id[$i] = 10
при i=1 - $row_id[$i] = 125
при i=1 - $row_id[$i] = 11
при i=1 - $row_id[$i] = 61
и т.д. Но мне-то надо тока по первому столбцу :(
Запрос к БД не переделаешь - MySQL4.0 - этим я максимум из неё выжал...
Идеи есть?
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
mysql_fetch_row
    #33239848
Фотография lissyara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
поправка
при i=1 - $row_id[$i] = 10
при i=2 - $row_id[$i] = 125
при i=3 - $row_id[$i] = 11
при i=4 - $row_id[$i] = 61

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
mysql_fetch_row
    #33239894
Фотография lissyara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Без идей? Лично у меня тока одна - проверять чётность i - если нечётная - делать вывод, если чётная - нет....
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
mysql_fetch_row
    #33239900
*
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
*
Гость
Накой хрен был нужен это мудёжь?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
// вытаскиваем рейтинг страниц из БД
$r = mysql_query("SELECT `page`, COUNT(*) AS `count` FROM `counter_segodnya` 
WHERE `razdel` = 'site' GROUP BY `page` ORDER BY `count` DESC");
// Строим табличку по тем кого достали
while ($d = mysql_fetch_assoc($r)) {
  $sql_kuda_prischel = "SELECT `zagolovok`, `description` FROM `site_table` WHERE `page_id` = '" . $d['page'] . "'";
  $r2 = mysql_query($sql_kuda_prischel);
  while ($d2 = mysql_fetch_assoc($r2)) {
// собственно тут вывод результатов.
// ......................................................  
  }
}
Хотя всё вполне можно было сделать и одним запросом.
...
Рейтинг: 0 / 0
mysql_fetch_row
    #33239915
Фотография lissyara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 *
Как умею - так и пишу :)
Вот чего непонял - зачем в примере второй цикл? Я обошёлся следующим куском кода:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
while ($d = mysql_fetch_assoc($sql)) {
 $sql_kuda_prischel = "SELECT `zagolovok`, `description` FROM `site_table` 
WHERE `page_id` = '" . $d['page'] . "'";
 $massiv_kuda = mysql_fetch_array(mysql_query("$sql_kuda_prischel"));
 // собственно тут вывод результатов.
 ?>
 <tr class=hilightoff onmouseover="className='hilighton';" onmouseout="className='hilightoff';">
  <td style="border-bottom: 1px solid #707680;" width="60" align="center"><?php echo $d['page']; ?><td>
  <td style="border-bottom: 1px solid #707680;" width="" align="left">
<a href="../?id=<?php echo $d['page']; ?>" title="<?php echo htmlspecialchars($massiv_kuda[description]);?>" 
target="_blank"><?php echo htmlspecialchars($massiv_kuda[zagolovok]); ?></a><td>
  <td style="border-bottom: 1px solid #707680;" width="130" align="center"><?php echo $d['count']; ?></a><td>
 </tr>
 <?php
}
А за идею большое спасибо - я давно думал как приспособить цикл к выводу более одного столбца. Только вот конкретно это понадобилось только сейчас. Вот и полез с вопросами :)
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
mysql_fetch_row
    #33242100
Фотография lissyara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
про вторую часть кода понял, после пары экспериментов :)
Более изящное решение - согласен :)
...
Рейтинг: 0 / 0
mysql_fetch_row
    #33242126
*
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
*
Гость
lissyara
Код: plaintext
1.
<a href="../?id=<?php echo $d['page']; ?>" title="<?php echo htmlspecialchars($massiv_kuda[description]);?>" 
target="_blank"><?php echo htmlspecialchars($massiv_kuda[zagolovok]); ?></a><td>

http://se.php.net/language.types.array#language.types.array.foo-bar]Почему $foo[bar] это неверно?
...
Рейтинг: 0 / 0
mysql_fetch_row
    #33242138
Фотография lissyara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
спасибо. Но я путаюсь помстоянно в кавычках - поэтому оставляю как работает :( Но по мере настругивания нового кода учту и эту статью....
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
mysql_fetch_row
    #33242176
*
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
*
Гость
lissyaraоставляю как работает :(Оно не работает. Для того, чтобы в этом убедиться, достаточно первым делом в скрипте выполнить
Код: plaintext
1.
error_reporting(E_ALL);
ini_set('display_errors','On');
Вы сразу же увидите, что PHP будет ругаться.Но я путаюсь помстоянно в кавычкахЧего там путаться - их всего два вида. И чтобы раз и навсегда запомнить - достаточно обратиться в мануал и прочесть.
Синтаксис строк
...
Рейтинг: 0 / 0
mysql_fetch_row
    #33242230
VERS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОФФТОП:

lissyaraспасибо. Но я путаюсь помстоянно в кавычках - поэтому оставляю как работает :( Но по мере настругивания нового кода учту и эту статью....
Posted via ActualForum NNTP Server 1.3

Лично я считаю, что ПХП вообще не должен обрабатывать такие массивы.
Чтобы люды так не писали, бесит меня это если честно, особенно когда приходится копаться в чужом коде с такой манерей написания массивов.
...
Рейтинг: 0 / 0
mysql_fetch_row
    #33242254
Фотография lissyara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да вот как ни странно оно работает. Может и ругается где-то внутри но что надо на экран выводит. - значит работает

P.S. согласен - неправильно.
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
mysql_fetch_row
    #33242258
*
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
*
Гость
lissyaraчто надо на экран выводит. - значит работаетСегодня - да, завтра - нет. При чём по ссылке чётко сказано, почемуКогда-нибудь в будущем команда разработчиков PHP возможно пожелает добавить еще одну константу или ключевое слово, либо вы можете ввести в ваше приложение еще одну константу и тогда у вас могут возникнуть проблемы. Например, вы уже не можете использовать таким образом слова empty и default, поскольку они являются зарезервированными ключевыми словами .
...
Рейтинг: 0 / 0
mysql_fetch_row
    #33242485
Фотография lissyara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
угу.
indeksnaya_stranitsa_razdela - обязательно зарезервируют. Как же без такого
сочетания.

Я ж сказал что признаю что неправильно. Ссылку прочитал. Проникся. Код с
которым вчера работал - поправил весь. Но лопатить сразу всё что в проекте -
нет никакого желания. По мере возможности всё исправиться.


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / mysql_fetch_row
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]