Eu tive que aprender a usar php muito rápido para desenvolver um projeto numa cadeira e cheguei a um ponto que travei total :((((
Como precisei aprender rápido para adaptar, acredito que estou realizando um erro até que bem idiota, mas como não tive tempo de aprender todo o básico para começar a desenvolver preciso saber: como imprimir um relacionamento NxN numa tabela?
Na minha aplicação, na hora de cadastrar um produto, os surfactantes são pegos numa multi seleção e salvos numa tabelo "produto_surfactante" colocando apenas codProd e codSurf.
*Ver imagem anexada*
Na imagem eu deixei o nome de marca aparecendo só para não ficar vazio, contudo o objetivo é aparecer todos os nomes (nomeSurf) dos surfactantes que foram salvos, porém eu tentei diversas sugestões e nenhuma delas consegui implementar direito, e por isto preciso de ajuda :x
**tentei usar um produtosurfview para ter todos os nomes fáceis de pegar, mas se tiver uma alternativa melhor sou 10000000000000000000% a favor!
*Código da função que mostra os valores na tabela*
public function dataviewProd($query)
{
$stmt = $this->conn->prepare($query);
$stmt->execute();
if($stmt->rowCount()>0)
{
while($row=$stmt->fetch(PDO::FETCH_ASSOC))
{
//takes the name of "Marca"
$codM = $row['codMarca'];
$stmtM = $this->conn->prepare("SELECT nomeMarca FROM marca WHERE codMarca = :codM;");
$stmtM->execute(array(":codM"=>$codM));
$nomeMarca = $stmtM->fetch(PDO::FETCH_ASSOC)['nomeMarca'];
////takes the name of "Tipo de produto"
$codTP = $row['codTipoProd'];
$stmtTP = $this->conn->prepare("SELECT nomeTipoProd FROM tipodeproduto WHERE codTipoProd = :codTP;");
$stmtTP->execute(array(":codTP"=>$codTP));
$nomeTipoProd = $stmtTP->fetch(PDO::FETCH_ASSOC)['nomeTipoProd'];
//this one should take the names of all "surfactantes" separated by ","
$nomeProd = $row['nomeProd'];
//$stmtPSV = $this->conn->prepare("SELECT s.nomeSurf
//FROM produtosurfview psv
// INNER JOIN surfactante s
// ON psv.Surfactante = s.codSurf
//WHERE psv.NomeProduto = {$nomeProd};");
//$stmtPSV->execute(array(":nomeProd"=>$nomeProd));
//$stmtPSV->setFetchMode(PDO::FETCH_ASSOC);
//$prodsurf = $stmtPSV->fetch(PDO::FETCH_ASSOC);
?><tr><td><?php print($row['codProd']);?></td><td><?php print($row['nomeProd']);?></td><td><?php print($row['tipoCab']);?></td><td><?php print($nomeMarca);?></td><td><?php print($nomeTipoProd);?></td><td><?php print($nomeMarca);?></td><tdalign="center">
<a class='btn btn-warning btn-sm' href="alterarProduto.php?edit_id=<?php print($row['codProd']);?>" role='button'>
<spanclass='glyphicon glyphicon-pencil'aria-hidden='true'></a></td><tdalign="center">
<a class='btn btn-danger btn-sm' href="deletarProduto.php?delete_id=<?php print($row['codProd']);?>" role='button'>
<spanclass='glyphicon glyphicon-trash'aria-hidden='true'></span></a></td></tr><?php
}}else{?><tr><td>Nada ainda cadastrado...</td></tr><?php
}}
O que ficou como comentário foi um último teste que tentei realizar e acabei deixando parte dele aí.
Pergunta
shiroyamacah
Oi!
Eu tive que aprender a usar php muito rápido para desenvolver um projeto numa cadeira e cheguei a um ponto que travei total :((((
Como precisei aprender rápido para adaptar, acredito que estou realizando um erro até que bem idiota, mas como não tive tempo de aprender todo o básico para começar a desenvolver preciso saber: como imprimir um relacionamento NxN numa tabela?
Na minha aplicação, na hora de cadastrar um produto, os surfactantes são pegos numa multi seleção e salvos numa tabelo "produto_surfactante" colocando apenas codProd e codSurf.
*Ver imagem anexada*
Na imagem eu deixei o nome de marca aparecendo só para não ficar vazio, contudo o objetivo é aparecer todos os nomes (nomeSurf) dos surfactantes que foram salvos, porém eu tentei diversas sugestões e nenhuma delas consegui implementar direito, e por isto preciso de ajuda :x
**tentei usar um produtosurfview para ter todos os nomes fáceis de pegar, mas se tiver uma alternativa melhor sou 10000000000000000000% a favor!
*Código da função que mostra os valores na tabela*
O que ficou como comentário foi um último teste que tentei realizar e acabei deixando parte dele aí.
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.