我正试图从两个不同的表中获取数据,第一个表我正在获取名称,第二个表我想获取id。但我遇到了一个错误。
这是我的代码
try {
$value=$cluster;
$cohort_query = "select cohort from vu_institutes_details where cluster=$value";
$cohort=array();
$queryResult = db_query($cohort_query);
foreach ($queryResult as $row) {
$cohort = $row->cohort;
}
foreach ($cohort as $value) {
$cohid="select id from mdl_cohort where name=$value";
$queryResul = db_query($cohid);
foreach ($queryResul as $ro) {
$cohids=array();
$cohids = $ro->id;
}
}
但是我得到了一个错误,那就是cohids不存在。
根据我的观点,查询不返回任何记录。您可以在foreach范围之外定义您的"$cohids",并尝试使用带条件的num_rows进行检查。
foreach 内部还有一个问题
foreach ($queryResul as $ro) {
$cohids=array();
$cohids = $ro->id;
}
尝试使用这个
foreach ($queryResul as $ro) {
$cohids=array();
$cohids[] = $ro->id;
}
或
foreach ($queryResul as $ro) {
$cohids = $ro->id;
}
当您将队列和cohids声明为数组时,请像数组一样使用它。:
foreach ($queryResult as $row) {
$cohort[] = $row->cohort;
}
还有:
$cohids[] = $ro->id;