Sistema de cadastro com INNER JOIN nao consigo trazer o ID do jogo
27/07/2017
0
Ola a todos..... 1° Passo o ID do jogos por GET para poder visualizá-lo ou editá-lo ou apagá-lo até ai esta normal..
.
Obrigado a todos sou novo em php estou estudando e treinando...
Pagina de " Listar jogos " $resultado=mysqli_query($conectar, "SELECT * FROM jogos ORDER BY 'id'"); $linhas=mysqli_num_rows($resultado); while($linhas = mysqli_fetch_array($resultado)) echo "<td>".$linhas['id']."</td>"; A clico no botao <a href='administrativo.php?link=20&id=<?php echo $linhas['id']; ?>'><button type='button' '>Visualizar </button></a> Passo o id pra pagina ....." Visualizar " ate ai vai tudo normal... visualizo, edito tudo certo.. $id = $_GET['id']; $result = mysqli_query($conectar, "SELECT * FROM jogos WHERE id = '$id' LIMIT 1"); $resultado=mysqli_fetch_assoc($result); so que assim recebo todos os dados normal eu vejo somente o ID da pushisher ....eu queria ver o nome da publisher ..então fiz o seguinte --------------------------------------------------------------------------------- USANDO INNER JOIN Na pagina " Listar " fiz o seguinte: $resultado=mysqli_query($conectar, "SELECT * FROM jogos INNER JOIN publishers ON publishers.id=jogos.publisher_id ORDER BY 'id'"); $linhas=mysqli_num_rows($resultado); while($linhas = mysqli_fetch_array($resultado)) echo "<td>".$linhas['id']."</td>"; agora recebo o nome da publisher ao inves do ID. Ai clico no botão <a href='administrativo.php?link=20&id=<?php echo $linhas['id']; ?>'><button type='button' '>Visualizar </button></a> ..........AGORA QUE DA O ERRO QUANDO clico em algum jogo pra visualizar todos seus conteúdos ele da os erros...... Ele não traz mais o ID do jogo dei um vardump C:\\wamp\\www\\credito\\visual_jogo.php:17:string '5' (length=1) C:\\wamp\\www\\credito\\visual_jogo.php:23:boolean false ( ! ) Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in C:\\wamp\\www\\credito\\visual_jogo.php on line 25 Call Stack # Time Memory Function Location 1 0.0010 361712 ( ) ...\\administrativo.php:0 2 0.0100 421368 include( 'C:\\wamp\\www\\creditogames.com.br\\visual_jogo.php' ) ...\\administrativo.php:46 3 0.0110 421400 mysqli_fetch_assoc ( ) ...\\visual_jogo.php:25 C:\\wamp\\www\\credito\\visual_jogo.php:26:null LInha 25: $resultado=mysqli_fetch_assoc($result);
Obrigado a todos sou novo em php estou estudando e treinando...
Jonas Nascimento
Curtir tópico
+ 0
Responder
Posts
02/08/2017
Fabio Rocha
Jonas,
Como esta modelada as suas tabelas pelo que entendi agora não vem o id no resultado da sua lista.
Verifique se as suas tabelas jogos e publisher exitem uma coluna ambígua (id.
Antes você somente selecionava a tabela jogos que possui uma coluna id, agora voce faz o join e ambas tem coluna id.
tente fazer o seguinte:
Utilize um alias SQL para poder renomear no caso de exitirem colunas iguais.
Abraços
Como esta modelada as suas tabelas pelo que entendi agora não vem o id no resultado da sua lista.
Verifique se as suas tabelas jogos e publisher exitem uma coluna ambígua (id.
Antes você somente selecionava a tabela jogos que possui uma coluna id, agora voce faz o join e ambas tem coluna id.
tente fazer o seguinte:
$resultado=mysqli_query($conectar, "SELECT *,jogos.id as id_jogo FROM jogos INNER JOIN publishers ON publishers.id=jogos.publisher_id ORDER BY 'id'"); <a href='administrativo.php?link=20&id=<?php echo $linhas['id_jogo']; ?>'><button type='button' '>Visualizar </button></a>
Utilize um alias SQL para poder renomear no caso de exitirem colunas iguais.
Abraços
Responder
Clique aqui para fazer login e interagir na Comunidade :)