Jump to content
Fórum Script Brasil
  • 0

Listar Serviços Somente de Empresa Especifica


renatosilva94
 Share

Question

Olá, estou fazendo uma rede social e preciso listar serviços somente da empresa selecionada, estou cadastrando os serviços normalmente, porém na hora de lista-los independente da empresa ele mostra todos, não sei se é algo com inner join.

Minha tabela servicos tem

idservico, valor, descricao, titulo

Minha classe ServicoDAL tem

public function listarServicos() {

include 'Classes/incConecta.php';
$str = "SELECT * FROM servico";
$query = mysqli_query($conecta, $str);
if ($query) {
return $query;
} else {
return false;
}
}

(sei que ali é algo relacionado com WHERE IDSERVICO... porém não consegui)

Agora a página que é listada os Serviços

<table class="listas" border="2px" bordercolor="#FF0000">

<thead>
<tr>
<td>Titulo</td>
<td>Valor</td>
<td>Descrição</td>
</tr>
</thead>
<tbody>
<?php
include 'Classes/DAL/ServicoDAL.php';
function listarServicos(){
$objDAL = new ServicoDAL();
$sql = $objDAL->listarServicos();
return $sql;
}
$sql = listarServicos();
while ($linha = mysqli_fetch_array($sql)){
?>
<tr>
<td class="codigo">
<?php echo $linha['titulo']; ?>
</td>
<td>
<?php echo $linha['valor']; ?>
</td>
<td>
<?php echo $linha['descricao']; ?>
</td>
</tr>
<?php
}
?>
</tbody>
</table>

Alguém sabe como proceder para quando eu for na página daquela empresa eu ver os serviços que ELA cadastrou?

Obrigado desde já :)

Link to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 0

/* Aviso: ainda estou aprendendo php */

É uma única tabela?

O programa está selecionando todos porque é o que você está pedindo :

SELECT * FROM servico

Se for uma única tabela, você seleciona pelo idservico:

SELECT * from servico WHERE idservico = $id
Link to comment
Share on other sites

  • 0

Como está a tua estrutura de tabelas, para além da tabela serviço?

Sem essa informação vai ser difícil ajudar. No entanto, fica uma ideia:

Se for possível a mesma empresa prestar diferentes serviços, vais ter de ter uma tabela intermédia (por ex. EmpresaServico), onde registas o ID da empresa e o ID do serviço. Fazendo isso, consegues ir buscar os serviços para determinada empresa com algo semelhante a isto:

SELECT Servico.Titulo, Empresa.Nome FROM Servico
INNER JOIN EmpresaServico ON Servico.IdServico = EmpresaServico.IdServico
INNER JOIN Empresa ON Empresa.IdEmpresa = EmpresaServico.IdEmpresa
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Forum Statistics

    • Total Topics
      149.8k
    • Total Posts
      646.6k
×
×
  • Create New...