Вывод из базы вложенным циклом

shmarovoz

Новичок
Всем привет, прошу помощи вот с какой проблемой. У меня есть код, который выводит места(кружочки), у каждого кружочка есть свой ряд и свой номер. В базе хранятся записи о том, на какие кружочки нажали, их ряд и место.
Я пытаюсь сделать так, чтобы за один запрос все данные о том, на какие кружочки нажали, записывались в массив и уже потом в цикле проверяю нажимали ли на этот кружочек. Проблема в том, что вложенный цикл do...while почему-то работает всего один раз 0_о.
Кто знает, что это такое и как эту проблему решить?

Мой код:
PHP:
// ====ВЫВОД
echo "<div id='par'>";
$ryad = 1;
$mesto = 1;
$leftc = 0;
$topc = 5;
$margin = -7;


$result = mysql_query("SELECT * FROM br WHERE vu='$id' AND place='par'");
$myrow = mysql_fetch_array($result);

for ($i=1;$i<=442;$i++)
{
if ($mesto < 10) { $margin = -2;} 
if ($mesto >= 10 && $mesto < 19) {$margin = -6;}
if ($mesto > 19) { $margin = -5;}
if ($mesto == 1) { $margin = -3;}

do
{
if ($myrow['ryad'] == $ryad && $myrow['mesto'] == $mesto) 
   {
      if ($myrow['status'] == 'o') {$circle = "circleo"; $title = "Желтый";}
      if ($myrow['status'] == 'p') {$circle = "circlep"; $title = "Красный";}
   } 
     else 
   {
      $circle = "circle parcircle";
      $title = 'Свободный';
   }
}
while ($myrow = mysql_fetch_array($result));

echo '
<div class="'.$circle.'" style="left:'.$leftc.'px; top:'.$topc.'px;" title="'.$title.'"><span class="textincircle" style="width:12px;height:12px;left:50%;top:50%;position:absolute;margin-top:'.$otsuptextincircle.'px;margin-left:'.$margin.'px"> '.$mesto.' </span></div>
';

$mesto++;
if ($mesto == 9 || $mesto == 19) { $leftc = $leftc + 50;} else { $leftc = $leftc + $shuruna;}
if ($mesto == 27) { $topc = $topc+$vusota; $leftc = 0; $mesto = 1; $ryad = $ryad + 1;}
if ($i == 208) { $topc = $topc + 25; }
}
echo "</div>";
// ====КОНЕЦ
 

shmarovoz

Новичок
Я не курсы здесь обсуждаю, я то, что у меня не работает код. Если знаете ответ, пожалуйста, пишите.
 

fixxxer

К.О.
Партнер клуба
Извини, но курсы обсуждать будем. Потому что они мало что учат писать говнокод, так еще и совершенно не учат отладке.

http://phpfaq.ru/debug в помощь
 

SiZE

Новичок
Где объявлена переменная $id ? И во вторых такая конструкция цикла в любом случае выполнится хотя бы раз. Даже в случае если у вас запрос ничего не возвращает. И вам не жалко других форумчан. Как они должны угадать что у вас в базе творится? Может там вообще нет записей. Ну и согласен, с предыдущими, половину вашего кода можно сократить. :)

PHP:
// ====ВЫВОД
echo "<div id='par'>";
$ryad = 1;
$mesto = 1;
$leftc = 0;
$topc = 5;
$margin = -7;


$result = mysql_query("SELECT * FROM br WHERE vu='$id' AND place='par'");
 
Сверху