0

ここで選択を行おうとしていますが、データが表示されていません。次のように、postgre me のテーブルで選択カウントを実行する必要があります。このフィールドには、null ではないこのフィールドを選択するレコードの数が表示されます。ゼロ以外のレコードの数。同様の関数が既にありますが、すべてのレコードがあり、ゼロ以外のレコードのみを伝えるためにこれを行うことはできません。コードは次のとおりです。これは、ユーザーに表示されるものです。

    <?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 #」を返します。誰が何ができるか知っていますか?

4

2 に答える 2

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;
于 2013-07-23T13:42:01.870 に答える
-1

カウント (*) は遅くなる可能性があります

$sql = "select * from TableName";

$res = pg_query($sql);

$count = pg_num_rows($res);

echo "行数 = ".$count;

于 2014-04-29T10:08:44.563 に答える