2015-01-14 143 views
0

簡單問題: 我正在使用Codeigniter和MySQL數據庫。 我目前在我的數據庫中有一個名爲「profiles」的表來存儲每個用戶的信息。 回到正軌,我需要在HTML表格中顯示每個位置註冊的用戶數量(「位置」是我的「配置文件」表格中的一個字段)。sql count display number

我試過這個,到目前爲止: MODEL:

function asia_count() 
{ 
    $query = "SELECT COUNT(*) FROM profiles WHERE location = 'Asia'"; 
    return $query; 
} 

控制器:

public function admin_m_reports_users_loc() 
{ 
    $data['asia_count'] =$this->help_model->asia_count(); 
    $this->load->view('squidtopus1-admin-reports-users-location',$data); 
} 

VIEW: (相關行:)

<tr> 
    <td><a href="#">Asia</a></td> 
    <td><?php echo $asia_count; ?></td> 
    </tr> 

在問候VIEW(相關線路),我需要它顯示爲亞洲| 1(1是示例結果)

...但我無法追查我出錯的地方。有人能請我指出正確的方向嗎? 非常感謝。

回答

0

您錯過result()result_array()。你可以試試這個,使用這個代碼作爲你的模型。

function asia_count() 
{ 
    $query = "SELECT COUNT(*) as Total FROM profiles WHERE location = 'Asia'"; 
    $result = $query->result_array(); 
    return $result[0]['Total']; 
} 

如果你想列出所有位置算你可以試試這個

型號

function asia_count() 
{ 
    $query = "SELECT location, COUNT(*) as Total FROM profiles GROUP BY location"; 
    return $query->result_array(); 
} 

查看

foreach ($lists as $index => $row) { 
    echo $row['location'] . ':' . $row['Total']; 
} 
+0

感謝您的RESP onse,但我編輯了該職位的澄清。我需要在網頁上顯示count()結果,這是我的目標。 –

+0

你想列出你所有的位置? – lighter

+0

謝謝你。查詢返回正確,但您認爲有一種方法可以顯示COUNT(*)的數字結果嗎?因爲我已經在已列出相應國家/地區的網頁上創建了一個表格。我現在需要的是一種方法來檢索由COUNT(*)生成的號碼並在我的表格中顯示該號碼。是否有可能做到這一點? –

1
$query = $this->db->query("SELECT COUNT(*) FROM profiles WHERE location = 'Asia'"); 

if ($query->num_rows() > 0) 
{ 
$row = $query->row_array(); 
echo $row['COUNT(*)']; 
} 
+0

@LeonBaños可以幫助你:) – Priyank