美好的一天, 我正在尝试创建一个将在mysql DB中搜索结果的表单,并使用循环显示结果。我有两个搜索选项,一个使用ID,一个使用字符串.ID搜索工作正常,因为ID是唯一的,一个结果是返回,我可以打印出来,但我试图适应这个我可以使用的函数,因为字符串应该返回一个需要循环的列表结果。结果是作为一个对象返回,这就是我在努力获取循环以给出每个结果的属性和键列表的地方,因为它为每个键循环=>值很好,但需要知道如何首先遍历每个对象,然后是key => Value。
在我的班级中,这是我正在使用的查找代码:
public static function find_by_qual_id($qual_id){
global $database;
$clean_qual_id = $database->escape_value($qual_id);
$result_array = static::find_by_sql("SELECT * FROM sdp WHERE qual_id='{$clean_qual_id}' LIMIT 1");
return !empty($result_array) ? array_shift($result_array) : false;
return $result_array;
}
在页面上,这是循环(不起作用):
if(isset($qual_id)){
$qual_info = Qual_lookup::find_by_qual_id($search_qual_id);
if($qual_info != null){
echo "<h4>RESULTS FOUND FOR \"{$search_qual_id}\"</h4>";
echo "<div><form name=\"found_qual\"><table>";
foreach($qual_info as $qual){
foreach($qual as $key => $value){
echo "<tr><td>{$key} : </td><td">{$value}</td></tr>";
}
}
} else {
echo "No results found for \"{$search_qual_id}\"";
}
echo "</table></form></div>";
}
答案 0 :(得分:0)
好的我发现了问题...由于某种原因,我在课堂上有2个返回语句:
return !empty($result_array) ? array_shift($result_array) : false;
return $result_array;
现在删除第一个return语句会使这个工作......似乎。