Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Oi Gente.
seguinte.
estou finalizando um site porem na hora da implantar os dados cadastrados via sistema, me deparei com um problema que estou com muitas dificuldades para resolver.
trata-se do seginte:
quando estava desenvolvendo criei duas tabelas para os produtos uma com o cadastro do produto e outra para cadastrar as fotos dos produtos, porem agora estou precisando exibir os dados lada a lada como em um ecommerce tipo a foto do produto e embaixo o nome e preço enfim o problema é na hora de unir os dados, ja montei um esquema para deixar o cara escolher qual a foto principal que deves ser exibida porem nao consigo unir esses dados estava tentando usar inner join porem nao tenho muito conhecimento e acabou nao saindo em nada, tenho tambem uma função para listar lado a lado.
<?php
function GeraColunas($pNumColunas, $pQuery) {
// Executa a instrução SQL
$resultado = mysql_query($pQuery);
// Inicia a tabela
echo ("<table border='0'>\n");
// Loops para gerar as colunas
for($i = 0; $i <= mysql_num_rows($resultado); ++$i) {
for ($intCont = 0; $intCont < $pNumColunas; $intCont++) {
$linha = mysql_fetch_array($resultado);
if ($i > $linha) {
if ( $intCont < $pNumColunas-1) echo "</tr>\n";
break;
}
// Coloca cada valor do banco de dados em uma variável
$codigo = $linha[0];
$foto = $linha[1];
$legenda = $linha[2];
if ($intCont == 0) {
echo "<tr>\n";
}
// Aqui vai o conteudo, ou seja, exibimos o nome do produto e seu respectivo valor
if($codigo==""){
//echo "<td height='209' align='center' valign='middle'><br><font size='2' color='red' face='arial'><span class='style11'>Não Existe Nenhuma Foto Cadastrada no Momento</span></td>";
}else{
echo "<th width='141' valign='top' scope='col' onMouseOver=this.style.background='#EAEAEA' onMouseOut=this.style.background='#FFFFFF'><a href='#'><img src='admin/cms/layout/produtos/fotos_produtos/' width='143' height='160' border='0'><br>
</a>Coldre Paddle IMI c/Trava = Polímero <br>
<a href='#'><img src='imagens/bt_detalhes.png' width='141' height='20' border='0'></a></th>
";
//echo "<th width='141' height='145' valign='top' scope='col'><a href='#'><img src='produtos/1.jpg' width='143' height='160' border='0'></a></th></tr><tr><td height='42' align='center' class='style16 style18'>Coldre Paddle IMI c/Trava = Polímero </td></tr><tr><td height='21' align='center'><a href='#'><img src='imagens/bt_detalhes.png' width='141' height='20' border='0'></a></td>";
}
if ($intCont == $pNumColunas-1 ) {
echo "</tr>\n";
} else {
$i++;
}
}
}echo ('</table>');
}
?>
porem ela nao entende pois o select dela é separado e estava tentando usar o inner mas nada feito.
normalmente quando uso ele padrao para exibir dados da mesma tabela uso um select simples tipo esse
$sql= " select * from foto where mostrar='$ms' order by cod_foto";
$exe=mysql_query($sql,$conectar);
GeraColunas(6, $sql);
e pronto porem usando as duas tabelas nao consigo mesmo...
as tabelas sao compostas dos seguintes campos
tabela
->produtos<-
pr_codigo
categoria
pr_nome
pr_preco
pr_info
destaque
tabela
->fotos_produtos<-
ft_codigo
pr_produto
ft_foto
ft_legenda
ft_principal
estava tentando usar o inner join assim
SELECT pr_produto, pr.pr_nome, ft.pr_produto , ft.ft_foto FROM produtos pr INNER JOIN fotos_produtos ft ON pr_produto = pr_produto group by pr_produto
mas como disse nao entendo muito..
se alguem puder me dar uma luz vai me dar uma grande ajuda.
agradeço desde já!!!
Carregando comentários...