2013-11-13 6 views
-2

Я пытаюсь отобразить данные из двух разных таблиц Mysql в той же таблице html. Сделайте это, я поставил цикл while внутри другого цикла while. Проблема в том, что в таблице данные второго цикла отображаются только на первом сыром таблице html. Я действительно не знаю, что не так. Спасибо за вашу помощь.В то время как внутри другого в то время как

<?php 
    while($results = mysql_fetch_array($raw_results)){ 


echo '<td>'; 
echo '<a href="linkto.php?data='.ucfirst($results['song_name']).'" class="iframe"><img src="icons/1384070574_95.png"> '; 
echo '<a href="'.ucfirst($results['song_name']).'" class="clapping">'; 
echo '<img src="icons/Hand-icon.png" id="songs'.$pictureid.'" onClick="action(\'songs'.$pictureid.'\')"/></a>'; 
echo '</td>'; 
echo '</tr>'; 
if (isset($userid)){ 

echo '<td> 
     <div id="cssmenu">        
       <ul> 
       li class="has-sub><a href="#"><span><img src="icons/1384074758_document_music_add.png"></span></a> 
       <ul> 
       <li class="has-sub"><a href="#" class="newplaylist"><span>Create a Playlist</span></a></li>';  

      while($playlist = mysql_fetch_array($raw_playlist)){ 

       echo'<li class="has-sub"><a href="#"><span>'.ucfirst($playlist['title']).'</span></a></li>'; 

       } 
echo'</ul> 
</li> 
</ul> 
</div>     
</td>'; 
        } 
echo' </tr> 
       '; 
$pictureid = $pictureid + 1; 
$songid= $songid + 1; 
        } 
echo '</tbody>'; 

    ?> 
+0

FYI: $ raw_playlist не запрос внутри петли –

+0

пут $ raw_playlist запроса внутри вашего, если условие и сравнить $ Идентификатор_пользователя или что вы хотите соответственно .... – Dev

+0

Привет DEV, вы имеете в виду полный запрос Mysql ? – anto0522

ответ

0

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

Однако ваш HTML-код является беспорядочным, не хватает некоторых открывающих и закрывающих тегов, что может означать, что некоторые данные отправляются в браузер, но не отображаются. Вы посмотрели источник страницы в браузере, чтобы проверить, нет ли данных? До тех пор, пока вы это сделаете, мы не можем быть уверены, что недостающие данные являются ошибкой HTML, SQL или PHP.

По этой причине вы должны попытаться ограничить количество HTML, которое вы получили echo из PHP, и я немного прибрал его и добавил недостающие теги ниже. Посмотрите, помогает ли это вообще.

<?php while ($results = mysql_fetch_array($raw_results)) : ?> 
<tr> 
    <td> 
    <a href="linkto.php?data=<?php echo ucfirst($results['song_name']); ?>" class="iframe"><img src="icons/1384070574_95.png"></a> 
    <a href="<?php echo ucfirst($results['song_name']); ?>" class="clapping"><img src="icons/Hand-icon.png" id="songs<?php echo $pictureid; ?>" onClick="action('songs<?php echo $pictureid; ?>')" /></a> 
    </td> 
</tr> 
<?php if (isset($userid)) : ?> 
<tr> 
    <td> 
    <div id="cssmenu">        
     <ul> 
     <li class="has-sub><a href="#"><span><img src="icons/1384074758_document_music_add.png"></span></a> 
      <ul> 
      <li class="has-sub"><a href="#" class="newplaylist"><span>Create a Playlist</span></a></li> 
<?php while ($playlist = mysql_fetch_array($raw_playlist)) : ?> 
      <li class="has-sub"><a href="#"><span><?php echo ucfirst($playlist['title']); ?></span></a></li> 
<?php endwhile; ?> 
      </ul> 
     </li> 
     </ul> 
    </div>     
    </td> 
<?php endif; ?> 
</tr> 
<?php 
$pictureid++; 
$songid++; 
endwhile; 
Смежные вопросы