Ir para conteúdo

POWERED BY:

Arquivado

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

Célio A.

trabalhando com view no php

Recommended Posts

Tenho um BD com dados de atletas de karate, com esta base de dados eu gero uma categoria para competição filtrando as informaçoes necessarias.

 

Antes eu usava um select para listar os atletas criando uma categoria e gerando uma chave esportiva, minha idéia é modificar criando apenas uma visão, assim a categoria fica salva em forma de visão.

 

O usuario do sistema seleciona o evento e tera a opção de cadastrar um atleta, cadastrar uma categoria e gerenciar a categoria gerando a lista de atletas e a chave.

 

tentei o seguinte:

 

//cria uma visão	
mysql_query("CREATE VIEW `cat_$evento-$dados[0]` AS
SELECT 
id_$evento.id AS id, 
id_$evento.nome AS nome,
(YEAR($dados2[0]) - YEAR(dn)) - (RIGHT(CURDATE(),5) < RIGHT(dn,5)) AS idade 
FROM id_2 HAVING idade BETWEEN 25 AND 30");

 

$evento é a id do evento e $dados a id da categoria, até ai beleza, é criada uma view tipo cat_01-2. Tentei exibir a visão desta forma:

 

mysql_select_db("$banco", $conexao);
$query = mysql_query("SELECT * FROM cat_2-1 ORDER BY id");
$dados = array();
while($lista = mysql_fetch_array($query)){
   $dados[] = $lista ['id']." ".$lista ['nome']; 
 echo $lista['id'].' '.$lista['nome'].'<br>';
}

 

dai nada!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Minha duvida realmente é sobre PHP. No MYSQL ta ok.

 

Este script ta ok, cria a visão:

mysql_query("CREATE VIEW `cat_$evento-$dados[0]` AS 
SELECT id As id, 
nome As nome,
(YEAR(CURDATE()) - YEAR(dn)) - (RIGHT(CURDATE(),5) < RIGHT(dn,5)) AS idade 
FROM id_2 HAVING idade BETWEEN 25 AND 30");

 

no mysql workbench e no phpmyadmin eu consigo ver o resultado da view exibindo o id, nome, idade corretamente. A questão é exibir este resultado pelo php

 

tava tentando assim (sem sucesso)

$result = mysql_query("SELECT * FROM cat_2-8 ORDER BY id");
if (empty($result)) { 
   echo "Nenhum registro encontrado.";
}

while($row = mysql_fetch_array($result)) {
    echo $row['id'].' '.$row['nome'].'<br>';	 
 }

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ops

 

Ja resolvi... depois de inumeros testes consegui desta forma

 

$query = mysql_query("SELECT * FROM `$cat` ORDER BY id");

while($lista = mysql_fetch_array($query)){
echo $lista['id'].' '.$lista['nome'].'<br>';

 

acho que era o (`) ao selecionar a tabela.

Compartilhar este post


Link para o post
Compartilhar em outros sites

preciso gerenciar as categorias de competição. Eu uso uma unica tabela para cadastrar os atletas com dados suficientes para filtrar as informaçoes me retornando a lista dos atletas.

 

As categorias tem que ter filtro por:


  •  
  • modalidade
  • genero
  • graduação
  • idade
  • peso etc.

 

A forma que encontrei de fazer isso foi atraves de um formulario, com uma view tenho categorias prontas para usar em qualquer evento e a possibilidade de criar novas categorias pelo formulario. Assim quando precisar da lista de atletas por categoria e das chaves eu uso a view sem a necessidade de preencher o formulario

 

Assim eu posso trabalhar com varios eventos (campeonatos) usando o mesmo codigo

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.