Ir para conteúdo

Arquivado

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

wneo

Relacionamento php/js/sql

Recommended Posts

Boa noite!!!

 

Tenho um sistema em abas,

na aba1 : cadastro assunto e descrição,

na aba2: visualizo o assunto e o id,

* ao clicar no id abro uma popUP, onde aparece a descrição que foi cadastrada na aba1,

*na mesma popUp, aparece um form para responder e um form para exibir as respostas.

 

(Tenho uma tabela com nome de "chamados" - com esses campos e tenho uma tabela come de "respostas".)

 

O que preciso:

 

O mesmo chamado precisa ser capaz de receber várias respostas, e todas serem exibidas no formulário que está na popup destinado a isso...

 

Como faço esse relacionamento pessoal?????? ajuda por favor!?!?

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, a tabela respostas, vai ter os campos sei lá:

 

id, id_chamado, texto

 

Ai vc faz um INNER JOIN entre chamado e respostas, e com um loop lista todas as respostas de um chamado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá William Bruno! obrigado pelo apoio, olha só:

 

na tabela respostas tenho:

 

id(primary key - int - auto incremento)

resposta(varchar)

id_chamado(int)

 

e na tabela chamados tenho:

 

id

assunto

descreva

id_resp

 

Então o inner join ficaria assim:

 

SELECT 'resposta'
FROM 'respostas'
INNER JOIN id' ON 'chamados' = 'descreva'
WHERE 'chamados'.'id'
AND 'respostas'.'id_chama'
...Como ficaria o inner join corretamente? creio q esse q tente aih tá bem errado...e esse loop como fica?

Compartilhar este post


Link para o post
Compartilhar em outros sites

SELECT respostas.* FROM chamados  
INNER JOIN respostas on ON respostas.id_chamado = chamados.id 
WHERE chamados.id = 13;
assim você está pegando todas as respostas do chamado de id = 13

 

O loop é normal, como vc faria qualquer outro loop, lendo de um banco de dados.

Vc já fez algum ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenho algumas noçoes mas confesso que não, mas posso dar uma estudada na questão do loop...E quanto ao innerjoin, dessa forma teria q especificar o id dentro do select, mas como seria pra ficar de uma forma global para q reconhecesse o id daquele que eu clicar?

eu poderia te passar os arquivos por skype pra vc dar uma olhada na idéia do site...?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ai vc lê do GET:

 

$id = (int)$_GET['id'];
$sql = "SELECT respostas.* FROM chamados  
INNER JOIN respostas on ON respostas.id_chamado = chamados.id 
WHERE chamados.id = {$id}";
lendo do GET da página, é só vc passar na hora de clicar:

 

<a href="ver.php?id=13">Ver id 13</a>
<a href="ver.php?id=16">Ver id 16</a>
Não cara, eu não vou conseguir olhar seus arquivos via skype, desculpe.

Continue perguntando no fórum, que mais pessoas podem te ajudar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Certo,

Então seguinte,

 

na aba 2 onde estão sendo exibidos os dados da tabela chamados (id,assunto,descreva)obs:descreva aparece quando clica no id

 

estou montando dessa forma, a qual se encontra operando:

 

<script>
function popup(URL){
var pop1=
window.open("descreva.php?id=" + URL,"", "width=715, height=320, resizable=no, scrollbars=no, left=55, top=123, menubar=no");
}
</script>
<a href="#" onclick="popup(<?php echo $row['id'];?>)">
<?php echo $row['id'];?>
Com isso consigo clicar no id e abrir a descrição que se encontra armazenada na tabela chamados...carregando somente akele id e o arquivo descreva.php, q possui o visual com os forms para resposta...
Agora posso aplicar esse q vc me enviou:
$id = (int)$_GET['id'];
$sql = "SELECT respostas.* FROM chamados
INNER JOIN respostas on ON respostas.id_chamado = chamados.id
WHERE chamados.id = {$id}"
;
com esse, posso fazer exibir dentro de um form?

Compartilhar este post


Link para o post
Compartilhar em outros sites

William Bruno,

Creio que a exibição dessa forma que voce citou:

 

$id = (int)$_GET['id'];
$sql = "SELECT respostas.* FROM chamados
INNER JOIN respostas on ON respostas.id_chamado = chamados.id
WHERE chamados.id = {$id}"
;

 

deverá operar,

 

Agora preciso relacionar as tabelas com suas respectivas chaves estrangeiras..fiz pelo phpmyadmin..mas acho q não deu certo...

 

Tabela respostas

Campos id_respoto(int,auto i) - resposta - chamado_id(int)

 

preciso estabelecer a relação entre o chamado_id que está na tabela respostas com o id_chamado da tabela chamados....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não precisa. =)

 

É só o campo existir, e vc gravar o dado corretamente. Não tem que "relacionar" nada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

com essa seleção:

 

$id = (int)$_GET['id'];
$sql = "SELECT respostas.* FROM chamados
INNER JOIN respostas on ON respostas.id_chamado = chamados.id
WHERE chamados.id = {$id}"
;

 

poderei capturar o id do chamado, dentro da tabela respostas certo?

 

Mas a questão é que o id do chamado atualmente não está aparecendo dentro da tabela respostas...

 

E desculpe minha lezera..mas toh com a tabela respostas contruida desta forma:

 

id - resposta - chamado_id

 

não consigo fazer operar a inserção das respostas se ela estiver por exemplo: id_resposta....

 

agradeço tua atenção william bruno...

 

preciso muito concluir esse projeto...

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.