Создать отдельные гиперссылки для group_concat и отобразить результаты в одной ячейке таблицы

У меня есть следующий код, который успешно создает отдельную ссылку для каждого из объектов group_concat, но вместо того, чтобы поместить их в одну ячейку таблицы, он помещает их в отдельные ячейки. Может кто-нибудь мне помочь? Вот полный код:

<?php
if (isset($search))
{
    $count=mysqli_num_rows($query) ;
    if($count>=1){
        $search_output .= "<hr  color=red />$count results for <strong>$search</strong><hr color=red />";


        while ($row = mysqli_fetch_array($query,MYSQLI_ASSOC)) {
             $Title = $row['Title'];
             $Year = $row['Year'];
             $Authors = $row['Authors'];
             $Journal=$row['Journal'];
             $Genes=explode(',', $row['Genes']);
             $Data_Type=$row['Data_Type'];

             echo"<tr>";
             echo "<td>".htmlspecialchars($row['Title'])."</td>";
             echo "<td>".htmlspecialchars($row['Year'])."</td>";
             echo "<td>".htmlspecialchars($row['Authors'])."</td>";
             echo "<td>".htmlspecialchars($row['Journal'])."</td>";

            foreach($Genes as $aGenes){
            echo "<td><a target=\"_blank\" href='http://www.ncbi.nlm.nih.gov/gene/?term=" .$aGenes."'> ".$aGenes." </a> </td>";

            }

             echo "<td>".htmlspecialchars($row['Data_Type'])."</td>";
             echo"</tr>";

        }


    }else{
         $search_output = "<hr />0 results for <strong>$search</strong><hr />";
    }
    echo "$search_output";      

}
?>

1 ответ

Решение

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

foreach($Genes as $aGenes){
        echo "<td><a target=\"_blank\" href='http://www.ncbi.nlm.nih.gov/gene/?term=" .$aGenes."'> ".$aGenes." </a> </td>";

        }

вместо этого делай это

    echo '<td>';
foreach($Genes as $aGenes){
            echo "<a target=\"_blank\" href='http://www.ncbi.nlm.nih.gov/gene/?term=" .$aGenes."'> ".$aGenes." </a> ";

            }
echo '</td>';

То есть вывести тег td из цикла for each, чтобы они отображались только один раз для каждого элемента цикла while

Другие вопросы по тегам