2013-07-18 37 views
1

我想在這裏做一個選擇,但我們不顯示任何數據,如下所示,我需要做一個選擇計數在一個表在Postgre我在哪裏它顯示有多少記錄選擇這個非空的字段,只有多少記錄非零。 已經有一個類似的功能,但它有所有的記錄,我沒有做到這一點,只告訴記錄非零。該代碼如下: 這是顯示用戶:顯示數據從Postgres的選擇計數與功能

<?php 
    require_once 'chklogado.php'; 
    require_once 'model.php'; 
    $funcao = $_SESSION['funcao']; 
    $model = new Model(); 
    $cont = array(); 
    $cont['promocoes'] = $model->get_count('promocoes'); 
    $cont['promocoes_novos'] = $model->get_promonovos('promocional'); 
    $cont['seminovos'] = $model->get_count('seminovos'); 
    $cont['noticias'] = $model->get_count('noticias'); 
    $cont['news'] = $model->get_count('contatos_newsletter'); 
    $cont['banner'] = $model->get_count('banner'); 
    $cont['pwd'] = $model->get_count('passwd'); 
    ?> 

    <ul> 

    <?php if($funcao<4) { // todos menos marketing?> 
    <li class="inovos"><a href="promocoes-novos.php" title=""><span>Promoções de Carros Novos</span></a><span class="numberMiddle"><?php echo get_value($cont, 'promocoes_novos'); ?></span></li> 
    <?php } //endif ?> 

    <?php if($funcao==1 or $funcao==3) { // administrador e vendas ?> 
    <li class="iOrders"><a href="lista-promocoes.php" title=""><span>Promoções</span></a><span class="numberMiddle"><?php echo get_value($cont, 'promocoes'); ?></span></li> 
    <?php } //endif ?> 

    <?php if($funcao==1 or $funcao==4) { // administrador e marketing ?> 
    <li class="iStat"><a href="lista-banners.php" title=""><span>Cadastro Banners</span></a><span class="numberMiddle"><?php echo get_value($cont, 'banner'); ?></span></li> 
    <?php } //endif ?> 

    <?php if($funcao<4) { // todos menos marketing?> 
    <li class="iMes"><a href="lista-seminovos.php" title=""><span>Add Seminovo</span></a><span class="numberMiddle"><?php echo get_value($cont, 'seminovos'); ?></span></li> 
    <?php } //endif ?> 

    <?php if($funcao==1 or $funcao==4) { // administrador e marketing ?> 
    <li class="inoticias"><a href="lista-noticias.php" title=""><span>Notícias</span></a><span class="numberMiddle"><?php echo get_value($cont, 'noticias'); ?></span></li> 
    <?php } //endif ?> 


    <?php if($funcao==1 or $funcao==4) { // administrador e marketing ?> 
    <li class="iNews"><a href="lista-newsletter.php" title=""><span>Mala direta</span></a><span class="numberMiddle"><?php echo get_value($cont, 'news'); ?></span></li> 
    <?php } //endif ?> 


    <?php if($funcao==1) { // administrador ?> 
    <li class="iUser"><a href="lista-usuarios.php" title=""><span>Admin Usuário</span></a><span class="numberMiddle"><?php echo get_value($cont, 'pwd'); ?></span></li> 
    <?php } //endif ?> 
</ul> 

這是函數,它的選擇:

function get_count($table = ''){ 
    return $table ? pg_fetch_result($this->get_all($table, '', 'COUNT(*) as total'), 0, 'total') : 0; 
} 

function get_promonovos($table = ''){ 
    //return $result=pg_query($sql="SELECT count(venda) FROM promocional where venda>0;"); 
    //$sql=("select * from promocional where venda is not null;"); 
    //$resultado = pg_fetch_array($sql); 
    //return pg_free_result($resultado); 
    //$data = pg_Fetch_Object($result, 0); 
    //return pg_fetch_array($result, $sql); 
    //return pg_free_result($result); 

    $result = pg_query("select count(*) from promocional where venda is not null;"); 

    $count = pg_fetch_result($result); 
} 

你可以看到函數「get_Count」使帳戶,這個函數「get_promonovos」是我需要顯示選擇的結果,但在這裏測試,或者他返回一個null或「Release id#」。 任何人都知道可以是什麼?

+0

難以閱讀,很難找到我們的*問題是什麼*。請澄清。 –

回答

1

設法解決只是改變這樣的功能:

$sql = "SELECT COUNT(venda) AS TOTAL FROM promocional WHERE venda is not null"; 
$query = pg_query($sql); 
while($row = pg_fetch_array($query)){ 
$total = $row["total"]; 
} 
echo $venda. $total; 
-1

COUNT(*)可能會比較慢

$ SQL = 「從表名SELECT *」;

$ res = pg_query($ sql);

$ count = pg_num_rows($ res);

echo「#of Row =」。$ count;