Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

aantunesl

Somar quantidade de linhas na categoria dentro de uma tabela

Recommended Posts

Amigos, senhores!
Tdo bem?

Esto precisando somar (em php) a quantidade de linhas existentes em uma categoria dentro de uma tabela.

BANCO
|________tabela: users
| |______________categoria: driver ( quero imprimir na tela a qtde de linhas ).
|_______________categoria: client ( quero imprimir na tela a qtde de linhas ).


Conseguem me ajudar?

Tentei:

<?php
$result = mysql_query("SELECT driver, COUNT(driver) AS Quantidade FROM users GROUP BY driver; ", $link);
$num_rows = mysql_num_rows($result);

echo "$num_rows \n";

?>

Mas não deu certo.

Obrigado pela ajuda!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenta assim:

$result = mysql_query("SELECT driver, COUNT(driver) AS Quantidade FROM users GROUP BY driver; ", $link);
$num_rows = mysql_num_rows($result); 
$qtd_lines = $num_rows[driver]; 
echo "$qtd_lines \n"; 

[]s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenta assim:

$result = mysql_query("SELECT driver, COUNT(driver) AS Quantidade FROM users GROUP BY driver; ", $link);
$num_rows = mysql_num_rows($result); 
$qtd_lines = $num_rows[driver]; 
echo "$qtd_lines \n"; 

[]s

Não rolou santos_s.

 

Apresenta o erro:

--------------------------

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/taxiex/public_html/arq/admin/index.php on line 439( exatamente a linha do codigo )

 

consegue me ajudar a resolver este erro?

Compartilhar este post


Link para o post
Compartilhar em outros sites
$result = mysql_query("SELECT driver, COUNT(driver) AS Quantidade FROM users GROUP BY driver; ", $link);
$num_rows = mysql_num_rows($result); 
$qtd_lines = $num_rows['driver']; 
echo "$qtd_lines \n"; 

tenta agora, tinha esquecido ' '.

 

[]s

Compartilhar este post


Link para o post
Compartilhar em outros sites
$result = mysql_query("SELECT driver, COUNT(driver) AS Quantidade FROM users GROUP BY driver; ", $link);
$num_rows = mysql_num_rows($result); 
$qtd_lines = $num_rows['driver']; 
echo "$qtd_lines \n"; 

tenta agora, tinha esquecido ' '.

 

[]s

 

 

Prezado santos_s

Não funcionou, continua apresentando o erro. Este é o código:

 

<div class="count green"><?php $result = mysql_query("SELECT driver, COUNT(driver) AS Quantidade FROM users GROUP BY driver; ", $link);
$num_rows = mysql_num_rows($result); 
$qtd_lines = $num_rows['driver']; 
echo "$qtd_lines \n"; ?> </div>

Onde estou errando?

O erro que aparece é este:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in ...public_html/admin/index.php on line 442 ( linha 442: $num_rows = mysql_num_rows($result); )

 

Consegue me ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites
$sql = mysql_query("SELECT COUNT(driver) FROM users");
echo mysql_result($sql ,0);

[]s

 

 

 

Desculpa amigo, não está funcionando:

 

<span class="count_top"><i class="fa fa-user"></i>CADASTRADOS:</span>
<div class="count green"><?php $sql = mysql_query("SELECT COUNT(driver) FROM users");
echo mysql_result($sql ,0); ?> </div>

O seguinte erro, persiste:

Warning: mysql_result(): supplied argument is not a valid MySQL result resource in /home/usuario/public_html/admin/index.php on line 442

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sua sua tabela parece que está vazia, executa tem select direto no banco,ou tenta assim:

$sql = mysql_query("SELECT COUNT(driver) FROM users");
$num_reg = mysql_num_rows($sql);
if($num_reg){
echo mysql_result($sql ,0);
}else{
echo "Tabela vazia";
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

Sua sua tabela parece que está vazia, executa tem select direto no banco,ou tenta assim:

$sql = mysql_query("SELECT COUNT(driver) FROM users");
$num_reg = mysql_num_rows($sql);
if($num_reg){
echo mysql_result($sql ,0);
}else{
echo "Tabela vazia";
}

 

Amigo, a tabela não está vazia. Dentro da tabela USERS existem duas categorias, são elas:

Client e Empresa.

 

Na categoria Client, existem: 4 cadastros

Na categoria Empresa, existem: 361 cadastros

 

Eu queria exibir na página ( front end ) assim:

 

Clientes cadastrados: 4 --> Resultado da consulta ao mysql

Empresas cadastradas: 361 --> Resultado da consulta ao mysql

 

Não estou conseguindo, e seu último script não rolou denovo:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/usuario/public_html/admin/index.php on line 442
Tabela vazia

Compartilhar este post


Link para o post
Compartilhar em outros sites

se apareceu isso:

 

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/usuario/public_html/admin/index.php on line 442
Tabela vazia
Não foi encontrado nenhum registro.
[]s

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
--
-- Base de Dados: `admin`
--
-- --------------------------------------------------------
--
-- Estrutura da tabela `users`
--
CREATE TABLE IF NOT EXISTS `users` (
`user_id` int(11) NOT NULL AUTO_INCREMENT,
`user_name` varchar(100) NOT NULL,
`password` varchar(100) NOT NULL,
`user_email` varchar(100) NOT NULL,
`user_num` varchar(100) NOT NULL,
`category` varchar(100) NOT NULL,
`dateinc` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=408 ;
--
-- Extraindo dados da tabela `users`
--
INSERT INTO `users` (`user_id`, `user_name`, `password`, `user_email`, `user_num`, `category`, `dateinc`) VALUES
(27, 'Demo', '654321', '01@empresacom', '99991111', 'empresa', '2016-04-05 14:38:59');
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

se apareceu isso:

 

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/usuario/public_html/admin/index.php on line 442
Tabela vazia
Não foi encontrado nenhum registro.
[]s

 

 

Veja a tabela:

-----------------------

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
--
-- Base de Dados: `admin`
--
-- --------------------------------------------------------
--
-- Estrutura da tabela `users`
--
CREATE TABLE IF NOT EXISTS `users` (
`user_id` int(11) NOT NULL AUTO_INCREMENT,
`user_name` varchar(100) NOT NULL,
`password` varchar(100) NOT NULL,
`user_email` varchar(100) NOT NULL,
`user_num` varchar(100) NOT NULL,
`category` varchar(100) NOT NULL,
`dateinc` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=408 ;
--
-- Extraindo dados da tabela `users`
--
INSERT INTO `users` (`user_id`, `user_name`, `password`, `user_email`, `user_num`, `category`, `dateinc`) VALUES
(27, 'Demo', '654321', '01@empresacom', '99991111', 'empresa', '2016-04-05 14:38:59');
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

Compartilhar este post


Link para o post
Compartilhar em outros sites

de onde vem o campo driver?

SELECT COUNT(driver) FROM users

tenta assim:

SELECT COUNT(user_id) FROM users

[]s

Compartilhar este post


Link para o post
Compartilhar em outros sites

de onde vem o campo driver?

SELECT COUNT(driver) FROM users

tenta assim:

SELECT COUNT(user_id) FROM users

[]s

 

 

Da forma que você descreveu, ele imprime na tela todos os cadastros, porem "misturados" empresa e clientes.

 

Deveria imprimir assim:

Clientes: 4 | Empresas: 361

 

Esta imprimindo assim:

Users: 365 ( juntando as duas categorias e dando o resultado )

 

Entendeu?

Compartilhar este post


Link para o post
Compartilhar em outros sites

de onde vem o campo driver?

SELECT COUNT(driver) FROM users

tenta assim:

SELECT COUNT(user_id) FROM users

[]s

 

de onde vem o campo driver?

SELECT COUNT(driver) FROM users

tenta assim:

SELECT COUNT(user_id) FROM users

[]s

 

 

Amigo santos_s

 

percebi no sistema, que tem uma referência:

 

------------------------------------------------------

<?php
$db->allCustomer(); /*refere-se aos clientes cadastrados
?>

Será que por meio desta referência, não ajuda a solucionar a questão?

------------------------------------------------------

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.