I have two mysql tables… Students and Batches
Batches table :
<code>id | unique_id | batch_name
1 ABCD Monday
2 EDFG Tuesday
3 HIJK Wednesday
4 LMNO Thursday
5 PQRS Friday
6 TUVW Saturday
</code>
<code>id | unique_id | batch_name
1 ABCD Monday
2 EDFG Tuesday
3 HIJK Wednesday
4 LMNO Thursday
5 PQRS Friday
6 TUVW Saturday
</code>
id | unique_id | batch_name
1 ABCD Monday
2 EDFG Tuesday
3 HIJK Wednesday
4 LMNO Thursday
5 PQRS Friday
6 TUVW Saturday
Students Table :
<code>reg_id | batches_selected | student_name
1 ABCD,HIJK,TUVW Mr X
2 EFGH,PQRS Mr Y
</code>
<code>reg_id | batches_selected | student_name
1 ABCD,HIJK,TUVW Mr X
2 EFGH,PQRS Mr Y
</code>
reg_id | batches_selected | student_name
1 ABCD,HIJK,TUVW Mr X
2 EFGH,PQRS Mr Y
On Students details page of Mr X, I want to show Batches Selected as Monday, Wednesday, Saturday.
What can be mysql query ?
I tried
<code> <?php
$batch_unique_id = $memberdata['batches_selected']; // From students table
$string = $batch_unique_id;
$idsArray = explode(",", $string);
$idsQuoted = array_map(function ($id) {
return "'{$id}'";
}, $idsArray);
$idsString = join(", ", $idsQuoted);
$query = "select * from batches where unique_id in ($idsString) order by batch_name asc";
$resc = $database->get_results($queryc);
?>
<ul>
<?php foreach ($resc as $batchdata){
$batch_name_rcvd = $batchdata['batch_name'];
?>
<li><?php echo $batch_name_rcvd;?> </li>
<?php } ?>
</ul>
</code>
<code> <?php
$batch_unique_id = $memberdata['batches_selected']; // From students table
$string = $batch_unique_id;
$idsArray = explode(",", $string);
$idsQuoted = array_map(function ($id) {
return "'{$id}'";
}, $idsArray);
$idsString = join(", ", $idsQuoted);
$query = "select * from batches where unique_id in ($idsString) order by batch_name asc";
$resc = $database->get_results($queryc);
?>
<ul>
<?php foreach ($resc as $batchdata){
$batch_name_rcvd = $batchdata['batch_name'];
?>
<li><?php echo $batch_name_rcvd;?> </li>
<?php } ?>
</ul>
</code>
<?php
$batch_unique_id = $memberdata['batches_selected']; // From students table
$string = $batch_unique_id;
$idsArray = explode(",", $string);
$idsQuoted = array_map(function ($id) {
return "'{$id}'";
}, $idsArray);
$idsString = join(", ", $idsQuoted);
$query = "select * from batches where unique_id in ($idsString) order by batch_name asc";
$resc = $database->get_results($queryc);
?>
<ul>
<?php foreach ($resc as $batchdata){
$batch_name_rcvd = $batchdata['batch_name'];
?>
<li><?php echo $batch_name_rcvd;?> </li>
<?php } ?>
</ul>
But it is returning only First Record…..