我在视图文件中遇到了数组问题。我试图做的是让它显示每个标题的标题和竞争者列表,现在它显示空置作为每个标题的冠军,并且每个标题的每个竞争者的TBD当我有值时应该是但不是。未回显正确的值
如果championID的值在表中为0,那么它应该显示为空值,如果不是,那么它应该得到冠军名称并显示它。对于每个竞争者,如果其中的0为数据库那么它应该显示TBD如果它不那么它应该显示他们的名字
这里的查询:
/**
* Get title champions
*
* @return object/NULL
*/
function getTitlesChampions()
{
$this->db->select('titlesList.titleName');
$this->db->select('rosterList.rosterName AS champion');
$this->db->select('con1.rosterName AS contender1');
$this->db->select('con2.rosterName AS contender2');
$this->db->select('con3.rosterName AS contender3');
$this->db->from('titlesChampions');
$this->db->join('titlesList', 'titlesList.id = titlesChampions.titlesListID');
$this->db->join('rosterList', 'rosterList.id = titlesChampions.championID', 'left');
$this->db->join('rosterList AS con1', 'con1.id = titlesChampions.contender1ID', 'left');
$this->db->join('rosterList AS con2', 'con2.id = titlesChampions.contender2ID', 'left');
$this->db->join('rosterList AS con3', 'con3.id = titlesChampions.contender3ID', 'left');
$query = $this->db->get();
if ($query->num_rows() > 0)
{
return $query->result();
}
return null;
}
值在titlesChampions表的内部是这样的:
id - 1 titlesListID - 1 championID - 1 contender1ID - 1 contender2ID - 1 contender3ID - 1
id - 2 titlesListID - 2 championID - 1 contender1ID - 0 contender2ID - 0 contender3ID - 0
id - 3 titlesListID - 3 championID - 1 contender1ID - 0 contender2ID - 0 contender3ID - 0
我运行阵列的视图文件中的print_r,这就是打印出:
Array
(
[0] => stdClass Object
(
[titleName] => Undisputed Heavyweight Title
[champion] => Kid Wonder
[contender1] => Kid Wonder
[contender2] => Kid Wonder
[contender3] => Kid Wonder
)
[1] => stdClass Object
(
[titleName] => Outlaw Title
[champion] => Kid Wonder
[contender1] =>
[contender2] =>
[contender3] =>
)
[2] => stdClass Object
(
[titleName] => Tag Team Titles
[champion] => Kid Wonder
[contender1] =>
[contender2] =>
[contender3] =>
)
)
<?php if (!is_null($titlesChampionsList)) { foreach ($titlesChampionsList AS $champion) {
echo '<tr>';
echo '<td>'.$champion->id.'</td>';
echo '<td>'.$champion->titleName.'</td>';
echo '<td>';
if ($champion->champion == 0)
{
echo 'Vacant';
}
else {
$champion->champion;
}
echo '</td>';
echo '<td>';
if ($champion->contender1 == 0)
{
echo 'TBD';
}
else {
$champion->contender1;
}
echo '</td>';
echo '<td>';
if ($champion->contender2 == 0)
{
echo 'TBD';
}
else {
$champion->contender2;
}
echo '</td>';
echo '<td>';
if ($champion->contender3 == 0)
{
echo 'TBD';
}
else {
$champion->contender3;
}
echo '</td>';
echo '<td style="text-align: center">';
$data = array('name' => 'user', 'value' => $champion->id);
echo '<a href="bios/edituser"><img src='.base_url().'assets/img/icons/packs/fugue/24x24/plus-circle.png /></a>';
echo '<img src='.base_url().'assets/img/icons/packs/fugue/24x24/cross-circle.png id="delete"/>';
echo '</td>';
echo '</tr>
'; } } ?>
任何想法?
你到底想打印出来??? – Baba 2012-04-23 16:11:30
我更新了应该打印出来的帖子。 – 2012-04-23 16:27:43