我在Yii中实现了我的项目。我显示了搜索结果。基于不同的表和表中不同的字段值。它显示得非常好。
我从控制器发送post值,并在视图部分显示值。它只显示id,如果我给出名称,它不显示和显示错误。我在这里添加了代码。只需检查并告诉我需要在哪里相应地更改我的代码。
<?php
if(isset($getval)){
$as=$getval;
}else{
$as="";
}
if(isset($course)){
$as1=$course;
}else{
$as1="";
}
if(isset($type)){
$as3=$type;
}else{
$as3="";
}
if(isset($cuisine)){
$as4=$cuisine;
}else{
$as4="";
}
if(isset($calorie)){
$as5=$calorie;
}else{
$as5="";
}
<?php
echo '<p align="center"> Showing results for : '.'Name'.$getval.', '.'Course-'.$course.', '.'Cuisine-'.$cuisine.', '.'Type-'.$type;', ';'</p>';
echo ', '.'Calories-'.$calorie;
它运行良好,只令人不快id:如果我给像这样的id关注表值名称不显示
$query= Course::model()->find("course_id=$as1");
$course2=$query['course_name'];
$query1= Cuisine::model()->find("id=$as4");
$cuisine2=$query1['cuisinename'];
$query3= RecipeType::model()->find("id=$as3");
$type2=$query3['recipeType_name'];
请建议我合适的答案
我不确定我是否理解了你的问题,但是find方法返回了一个CActiveRecord对象,该对象具有与条件匹配的第一个值。访问列(字段)是由对象的"魔术"属性完成的。每个列都有一个属性,因此您可以通过以下方式访问"课程名称"列:
$query= Course::model()->find("course_id=$as1");
$course2=$query->course_name;
请参阅本指南,特别是"读取记录"部分
$Criteria=new CDbCriteria;
$Criteria->compare('curse_id',$as1);
$query=课程::model()->find($Criteria);
if(!empty($query))
$course2=$query->课程名称;
$post=post::model()->find('postID=:postID',array(':postID'=>10));
http://www.yiiframework.com/doc/guide/1.1/en/database.ar