我在SQL中有一个列,我使用odbc进行连接,其中包含一个像这样的格式的数据
1 | 2 | 3 | 4 | 5
每个数字都说明每个工人的身份。顺便提一下,这个问题与我之前的问题有关。见下面的链接
因此,如果我选择该列,它将返回类似上面的输出。在编辑中,我需要首先将其爆炸,然后将其作为某种类型的字符串内爆,如此
1,2,3,4,5
现在,问题是我将如何创建一个循环,它将根据字符串内的每个sting(1,2,3,4,5)选择worker的firstname和lastname,然后回显一个表,其中如果他们的ID包含在列表中,将检查相应的复选框。这是我的代码,
$que = "SELECT assignedto FROM PROJECTS where projectname = '$projname'";
$queres = odbc_exec($conn,$que);
$res = odbc_result($queres, 1);
$analysts_arr = explode("| ", $res);
$analysts = implode(",", $analysts_arr);
//die($analysts);
$que2 = "DECLARE @s VARCHAR(MAX)
DECLARE @d VARCHAR(MAX)
SET @s='$analysts'
set @d = 'select id, firstname, lastname from Accounts where id in('+@s+')'
exec (@d)";
//die($que2);
$query = odbc_exec($conn,$que2);
echo odbc_result_all($query);
$result = odbc_result_all($query);
echo "<table class='table table-striped table-bordered table-hover' id='dataTables-example' style='margin-top:10px;'>
<thead>
<tr>
<th>ID</th>
<th>Last Name</th>
<th>First Name</th>
</tr>
</thead>;";
foreach($result as $val){
$user_id = $val['id'];
$users[$id] = $val;
echo "<tbody>
<tr class='odd gradeX'>
<td><input type='checkbox' value='<?php echo odbc_result($queres, 1); ?>' name='analyst[]'/></td>
<td></td>
<td></td>
</tr>
</tbody>";
}
我的代码返回错误显示在
下面警告:odbc_result_all():此结果索引没有可用的元组
警告:odbc_result_all():此结果索引中没有可用的元组 ;
警告:为foreach()提供的参数无效
答案 0 :(得分:1)
为我的问题找到了解决方法。将其发布给其他人也可以作为他们的指南。
这是我做的解决方法。
$que = "SELECT assignedto FROM PROJECTS where projectname = '$projname'";
$queres = odbc_exec($conn,$que);
$res = odbc_result($queres, 1);
$analysts_arr = explode("| ", $res);
//print_r($analysts_arr);
echo "<table class='table table-striped table-bordered table-hover' id='dataTables-example' style='margin-top:10px;'>
<thead>
<tr>
<th>ID</th>
<th>Last Name</th>
<th>First Name</th>
</tr>
</thead>";
foreach($analysts_arr as $analysts) {
//foreach($analysts_arr as $idan){
$quean = "SELECT lastname,firstname FROM ACCOUNTS where id = '$analysts'";
$queresan = odbc_exec($conn,$quean);
$resas = odbc_result($queresan, 1);
$resasf = odbc_result($queresan, 2);
echo "<tbody>
<tr class='odd gradeX'>
<td>";
echo $analysts;
echo "</td>
<td>";
echo $resas;
echo "</td>
<td>";
echo $resasf;
echo "</td>
</tr>
</tbody>";
//}
}