我正在尝试获取具有相同ID的所有行, 这是表格的一个例子:
Curs_ID Cursistnr payed
Excel 2 500
Internet 3 100
C# 2 200
我想摆脱桌面的是Cursistnr
为2的所有内容
所以我需要的是它的两行:
Excel 2 500
C# 2 200
编辑:
是的,请允许我提出不同的问题。 这是表:curs_code|Cursistnr|cijfer|payed
Internet 50 5 2000.00
Internet 88 7 2000.00
Word 50 9 3300.00
Word 88 9 3300.00
Niam 88 6 850.00
我尝试从cursistnr 88获取每一行的所有内容 所以:
Internet,88,7,2000.00 Niam,88,6,850.00 字,88,9,3300.00
如果我尝试SELECT * FROM c_regel WHERE cursistnr ='$ id'
我只得到:
array (size=8)
'curs_code' => string 'Internet' (length=8)
0 => string 'Internet' (length=8)
'cursistnr' => string '88' (length=2)
1 => string '88' (length=2)
'cijfer' => string '7' (length=1)
2 => string '7' (length=1)
'betaald' => string '2000.00' (length=7)
3 => string '2000.00' (length=7)
我正在使用的PHP代码:
function cursusDone($magazijn, $id){
$sql = "SELECT curs_code FROM c_regel WHERE cursistnr='$id'";
$query = $magazijn->query($sql);
return $query->fetch();
}
$done = cursusDone($magazijn,$id);
var_dump($done);
我认为它与sql表有关,
如果我尝试SELECT * FROM c_regel我只得到第一行。 不知道这里有什么问题
答案 0 :(得分:0)
SELECT Curs_ID, payed
FROM TAB -- insert your table
WHERE Cursistnr = 2
答案 1 :(得分:0)
只需添加基本WHERE
声明
SELECT Curs_ID, Cursistnr, payed
FROM yourtable
WHERE Cursistnr = 2
答案 2 :(得分:0)
我非常确定$query->fetch();
只会获取结果的第一行。
如果您可以尝试此cursusDone
功能的修改版本:
function cursusDone($magazijn, $id){
$sql = "SELECT curs_code FROM c_regel WHERE cursistnr='$id'";
$query = $magazijn->query($sql);
var_dump($query->fetch());
var_dump($query->fetch());
//return $query->fetch();
}
这应该将结果集的前两行输出为数组转储。
如果我是对的,你可以遍历$query->fetch()
,直到它返回false或空数组(取决于数据库类的内部工作方式)。