electronik
Новичок
Добрый день!
Данный код выводит вот такую таблицу
Проблема в том что я не могу понять как сделать привязку по номеру блюда и по пользователю. Чтобы если данного блюда нет у пользователя, то он выводил бы пустую ячейку. Сейчас если все блюда есть у всех пользователей, но они выстраиваются правильно, а если нет,как например у test user то просто идут подряд(там позиции 2.03 и 2.05). Подскажите пожалуйста как сделать.
PHP:
<?php
include './config.php';
include './header.php';
$conn=mysql_connect($dbhost,$dbuser,$dbpass)
or die("Could not connect : " . mysql_error());
mysql_select_db($dbname) or die("Could not select database");
mysql_query("SET NAMES utf8");
$query=mysql_query("SELECT m.menu_num, m.menu_id
FROM dishs d
LEFT JOIN menu m ON m.menu_id = d.menu_id
LEFT JOIN users u ON u.user_id = d.user_id
WHERE d.deleted = '0'
AND m.deleted = '0'
AND u.deleted = '0'
GROUP BY m.menu_id")
or die("Query failed : " . mysql_error());
$query2=mysql_query("SELECT d.dish_id, d.user_id, d.time_date, m.menu_num, m.menu_name, d.dish_count,
d.dish_count_sp, u.user_name
FROM dishs d
LEFT JOIN menu m ON m.menu_id = d.menu_id
LEFT JOIN users u ON u.user_id = d.user_id
WHERE d.deleted = '0'
AND m.deleted = '0'
AND u.deleted = '0'
GROUP BY d.user_id")
or die("Query failed : " . mysql_error());
?>
<html>
<table border=0 cellspacing=0 cellpadding=0>
<tr valign="top">
<td>
<table name="menu" border=1 cellspacing=0 cellpadding=0>
<tr>
<th> </th>
</tr>
<tr>
<th>№ Блюда</th>
</tr>
<?php while($row=mysql_fetch_array($query)){
$menu_id_pr = $row['menu_id'];
$menu_num_pr = $row['menu_num'];
?>
<tr>
<th><?php echo $menu_num_pr; ?></th>
</tr>
<?php } ?>
</table>
</td>
<td>
<?php
while ($row2 = mysql_fetch_array($query2)){
$user_id_pr = $row2['user_id'];
$user_name_pr = $row2['user_name']; ?>
<table name="data" align="top" border=1 cellspacing=0 cellpadding=0>
<tr>
<th colspan="3"><?php echo "$user_name_pr"; ?></th>
</tr>
<tr>
<th>Ср</th>
<th>Ост</th>
<th>Заявка</th>
</tr>
<?php
$query3=mysql_query("SELECT d.dish_id, d.user_id, d.time_date, m.menu_num, m.menu_name, d.dish_count,
d.dish_count_sp, u.user_name
FROM dishs d
LEFT JOIN menu m ON m.menu_id = d.menu_id
LEFT JOIN users u ON u.user_id = d.user_id
WHERE d.deleted = '0'
AND m.deleted = '0'
AND u.deleted = '0'
AND d.user_id = $user_id_pr
ORDER BY d.user_id, m.menu_id")
or die("Query failed : " . mysql_error());
while($row3 = mysql_fetch_array($query3)){
$dish_count_sp_pr=$row3['dish_count_sp'];
$dish_count_pr=$row3['dish_count']; ?>
<tr>
<td align=center><?php echo $dish_count_sp_pr; ?></td>
<td align=center><?php echo $dish_count_pr; ?></td>
<td align=center><?php echo " " ; ?></td>
</tr>
<?php } ?>
</table>
</td>
<td>
<?php } ?>
</td>
</tr>
</table>
</html>

Проблема в том что я не могу понять как сделать привязку по номеру блюда и по пользователю. Чтобы если данного блюда нет у пользователя, то он выводил бы пустую ячейку. Сейчас если все блюда есть у всех пользователей, но они выстраиваются правильно, а если нет,как например у test user то просто идут подряд(там позиции 2.03 и 2.05). Подскажите пожалуйста как сделать.