Php 如何使用codeigniter循环从mysql检索数据
我有一个问题,我将在我的sql中检索几个数据,例如,我有9个数据,但我的问题是,在我的foreach中,将要处理的数据和foreach放在我的控制器中 这是我的控制器:Php 如何使用codeigniter循环从mysql检索数据,php,mysql,codeigniter,Php,Mysql,Codeigniter,我有一个问题,我将在我的sql中检索几个数据,例如,我有9个数据,但我的问题是,在我的foreach中,将要处理的数据和foreach放在我的控制器中 这是我的控制器: function getPhaseData() { try { $this->SessionCheck(); $this->user->initialize($this->session->userdata('userid'));
function getPhaseData() {
try
{
$this->SessionCheck();
$this->user->initialize($this->session->userdata('userid'));
$this->load->model('project_model', 'Project');
$ProjectID = $this->input->post('ProjectID');
/***************** Intialize Project model ******************/
$this->Project->Initialize($ProjectID);
$Options = Work_breakdown_structure::$WithBaseTaskID;
//$PhaseTaskID = (int)$this->input->get_post('TaskID',TRUE);
//$PhaseTaskID = $this->Project->getPhaseBaseTaskID($ProjectID);
$postlist->phaseList = $this->Project->LatestApplicablePlan->WBS->GetPhaseList($Options);
$PhaseList = $this->Project->LatestApplicablePlan->WBS->GetPhaseList($Options);
foreach($PhaseList as $row)
{
$postlist->taskList = $this->Project->LatestApplicablePlan->WBS->GetWBS($Iterate['TaskID'], $Options);
}
/*if($PhaseTaskID == null)
{ }
else
{
foreach($PhaseTaskID as $index=>$value)
{
$finalArr[$value['baseTaskID']] = $value['baseTaskID'];
//echo $finalArr[$value['baseTaskID']].' ';
$postlist->taskList = $this->Project->LatestApplicablePlan->WBS->GetWBS($finalArr[$value['baseTaskID']], $Options);
}
}*/
$postlist->project = $ProjectID;
return $this->load->view('MyToDoPhaseDropdown', $postlist);
}
这是我的视图,我将在选择下拉列表中显示从控制器获取的数据
if($project == 0) {
echo '<td style="padding-top:5x;font-size:14px;" colspan="2"> <br> Phases : ';
echo '<select disabled id="phases_select" style="width:400px;" onchange="search_filter()" >';
echo '<option value="0" selected="selected"> Select Project Phase </option>';
echo '</select>';
echo '</td>';
}
else
{
foreach($taskList as $iterate)
{
echo ' TaskID: '. ' '.$iterate['TaskID'] .' -- TaskName: '. $iterate['TaskName'].'<br>' ;
}
/*foreach($phaseList as $row) {
echo 'TaskID: '. $row['TaskID'].' '.$row['TaskName'].'<br>';
if(preg_match("/^CYCLE/", strtoupper($row['TaskName'])))
{
foreach($row['Child'] as $child) {
echo 'TaskID: '. $child['TaskID'].' '.$child['TaskName'].'<br>';
}
}
}*/
echo '<td style="padding-top:5x;font-size:14px;" colspan="2"> <br> Phases : ';
echo '<select id="phases_select" style="width:400px;" onchange="search_filter()" >';
echo '<option value="0" selected="selected"> Select Project Phase </option>';
foreach($phaseList as $row)
{
if(preg_match("/^CYCLE/", strtoupper($row['TaskName'])))
{
foreach($row['Child'] as $child)
{
if($Iterate['BaseTaskID'] != $child['TaskID'])
{
echo '<option value="'. $child['TaskID']. '">';
echo $row['TaskName'].' > '.$child['TaskName']. '</option>';
}
foreach($taskList as $Iterate)
{
if($child['TaskID'] == $Iterate['BaseTaskID'])
{
echo '<option value="'. $Iterate['TaskID']. '">';
echo $row['TaskName'].' > '.$child['TaskName'].' '.$Iterate['IterationNumber']. '</option>';
}
}
}
}
else
{
if($Iterate['BaseTaskID'] != $row['TaskID'])
{
echo '<option value="'. $row['TaskID']. '">';
echo $row['TaskName'].'</option>';
}
foreach($taskList as $Iterate)
{
if($row['TaskID'] == $Iterate['BaseTaskID'] )
{
echo '<option value="'. $Iterate['TaskID']. '">';
echo $row['TaskName'].' '.$Iterate['IterationNumber']. '</option>';
}
}
}
}
echo '</select>';
echo '</td>';
}
这不是确切的答案,但这将有助于理解codeigniter中的MVC结构 模型 控制器 看法
希望这对您有所帮助。您好,先生,是的,我知道MVC结构是如何工作的。但是,如果我在控制器中不使用foreach来检索数据,那么当我将变量传递到$postlist->taskList=$this->Project->LatestApplicablePlan->WBS->GetWBS$Iterate['TaskID']时,我会收到一个错误,$Options;如果我在这里不用foreach。我不会从数据库中获取数据。你能做一个$PhaseList的vardump并发布结果吗。并发布您收到的错误消息。vardump的结果将仅为一个数据,事实上,它不仅是一个数据,而且数据库中有多个数据,例如,它有9个数据。但在foreach内部,它只回显一个数据。
function get_city_list(){
$this->db->select('city_id, name');
$this->db->where('status', 1);
$this->db->order_by("name", "asc");
$this->db->from('city');
$query = $this->db->get();
$result = $query->result();
return $result;
}
function listing(){
$data['city'] = $this->home->get_city_list();
$this->load->view('property_listing', $data);
}
foreach($city as $cty){
echo $cty->name;
echo $cty->city_id;
}