Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
Помогите пожалуйста решить проблему (php/mysql) 14.06.05 14:54 Число просмотров: 1800
Автор: Virgo Статус: Незарегистрированный пользователь
|
Суть вопроса:
вывод типов техники в столбик. напротив каждого стоит количество единиц, соответвующих типу.
до сих пор решал так:
<?
$sql = "SELECT firm.idf, firm.name, model.idf, model.idm, model.idt, tip.idt, tip.tip1, tip.tip2, unit.idm
FROM firm, model, tip, unit
WHERE model.idf = $firma AND model.idf = firm.idf and tip.idt = model.idt
GROUP BY tip.idt
ORDER BY tip.idt ASC";
$result = mysql_query($sql);
?>
этот селект выводит перечень типов техники.
а вот вывод table, который выводит типы техники и напротив каждого типа количество единиц в типе:
<table border=0 cellspacing=3 width=100% cellpadding=3>
<tr>
<td bgcolor=#454545 class=menu>Типы</td>
<td width=50 nowrap bgcolor=#454545 align=center class=menu>Единиц</td>
</tr>
<?
while ($row = mysql_fetch_array($result,MYSQL_ASSOC)) :
?>
<?
$kolf = $row["idt"];
$sql2 = "select model.idm,
model.idt,
unit.idm,
model.idf,
unit.uniq from model, unit
where model.idt = $kolf and model.idf = $firma and model.idm = unit.idm group by unit.uniq";
$result2 = mysql_query($sql2);
$rez2 = mysql_num_rows($result2);
?>
<tr>
<td class=menu1 bgcolor=silver><font color=maroon><a href=index.php?page=models4&firm=<?print($row['idf']);?>&tip=<?print($row['idt']);?> class=menu1><? print($row['tip1']);?><br><? print($row['tip2']);?></a></font></td>
<td class=menu1><? echo $rez2; ?></td>
</tr>
<?
endwhile;
?>
</table>
все работает, но тормозит. есть мысль убрать второй select и вставить count в первый. но по причине кривости моих рук (грешу на себя), не могу понять как можно объединить оба селекта в один.
помогите пожалуйста.
|
- Помогите пожалуйста решить проблему (php/mysql) - Virgo 14.06.05 14:54 [1800]
|
|
|