FredKeyster Posted January 26, 2013 Share Posted January 26, 2013 Olá Amigos! Estou fazendo um site, fora do presta shop! Porém quero trazer no Home de site os produtos que são inseridos na loja. Para isso fiz um select onde traz as informações: <? include("../itens/conn.php"); $lang = "1"; $lim_prod = "28"; $SQLprod = "SELECT * from ps1__product, ps1__image, ps1__image_lang WHERE (ps1__product.id_product = ps1__image.id_product) LIMIT $lim_prod "; $prod = mysql_query($SQLprod); ?> Após o select criei a lógica que vai me trazer os dados que pretendo: <? while ($p = mysql_fetch_array($prod)){ $products_id = $p['id_product']; $prodnome = $p['legend']; $pnome = substr($prodnome,0,20); $prodtit = $p['legend']; $ptit = substr($prodtit,0,24); $pimg = $p['id_lang']; $preco = $p['price']; $preco=number_format($preco,2,'.',','); ?> <div class="prod"><a href="http://dyingmusic.com/criandonovalojadm2/modules/homefeatured/homefeatured.php?id_product=<? echo $products_id; ?>" target="_blank"><img src="../criandonovalojadm2/img/p<? echo $pimg ?>" alt="<? echo $pnome ?>" style="width:120px;height:120px;border:none;" /></a> <br /> <span><? echo $pnome; ?></span> <br /> <span class="title"><? echo $ptit; ?></span><? if (strlen($ptit) > 21){ echo "...";}?> <br /> <span class="preco">R$ <? echo $preco ?></span> </div> <? } ?> Porém não estou conseguindo trazer as imagens, veja como esta: http://dyingmusic.com/site/fred_test.php Acredito que o erro esta nesse "href" : <a href="http://dyingmusic.com/criandonovalojadm2/modules/homefeatured/homefeatured.php?id_product=<? echo $products_id; ?> Alguém pode me ajudar? Grato. Fred Azevêdo! Link to comment Share on other sites More sharing options...
gapacheco Posted January 28, 2013 Share Posted January 28, 2013 Fred Não consegui visualizar sua página, mas pelo que vi falta ponto e vírgula dps de $pimg e $pnome. Verifique a sintaxe e tente ver se dá certo, depois diga o resultado. Abraços, Gabriel Pacheco Link to comment Share on other sites More sharing options...
FredKeyster Posted January 29, 2013 Author Share Posted January 29, 2013 Olá Gabriel Pacheco, fico grato pela observação, mas não é isso! Depois de várias horas consegui fazer! Vou fazer o passo a passo, para quem quer pegar o Homefacture e colocar em um Site fora do Presta shop, tipo como um include! Primeiro é importante fazer um SQL com as variáreis a serem retornadas, sendo assim: $SQLprod = "SELECT DISTINCT ps1__product.id_product, price, ps1__image.id_image, ps1__image_lang.legend FROM ps1__product INNER JOIN ps1__image ON ps1__product.id_product = ps1__image.id_product INNER JOIN ps1__image_lang ON ps1__image.id_image = ps1__image_lang.id_image WHERE (ps1__product.id_product = ps1__image.id_product) ORDER BY ps1__image.id_product DESC LIMIT $lim_prod"; $prod = mysql_query($SQLprod); Em seguida crie um laço while chamando essas variáveis: <? while ($p = mysql_fetch_array($prod)){ $id_product = $p['id_product']; $prodnome = $p['legend']; $pnome = substr($prodnome,0,20); $prodtit = $p['legend']; $ptit = substr($prodtit,0,24); $pimg = $p['id_image']; $preco = $p['price']; $preco=number_format($preco,2,'.',','); ?> <div class="prod"><a href="http://dyingmusic.com/criandonovalojadm2/product.php?id_product=<? echo $id_product; ?>" target="_blank"><img src="../criandonovalojadm2/img/p/<? echo $id_product."-".$pimg.".jpg" ?>" style="width:120px;height:120px;border:none;" /></a> <br /> <span><? echo $pnome; ?></span> <br /> <span class="title"><? echo $ptit; ?></span><? if (strlen($ptit) > 21){ echo "...";}?> <br /> <span class="preco">R$ <? echo $preco ?></span> </div> <? } ?> Vamos comentar uns pontos fundamentais nesse laço while, o primeiro deles é a linha: <a href="http://dyingmusic.com/criandonovalojadm2/product.php?id_product=<? echo $id_product; ?> Essa linha aponta para o "product.php" passando-lhe por parâmetro o "Código do Produto". Quando o usuário clicar na figura, será redirecionado para a Loja com o produto especifico pronto para adicionar ao carro de compras. Próximo código é relacionado ao que vai aparecer no <span></span>, ou seja o valor das variáveis. <img src="../criandonovalojadm2/img/p/<? echo $id_product."-".$pimg.".jpg" ?> Veja que o echo traz duas variáveis $id_product e $pimg que estão concatenados a uma string .jpg, isso se deve ao fato de que o Prestashop trabalha com caminhos path no banco de dados, ou seja, ele não armazena imagem em campo blob, armazena apenas o caminho e define um nome lógico, tipo: 1-2jpg; 1-3.jpg; 4-5.jpg; 44-77.jpg... Explicando: na figura com o nome "44-77.jpg" significa que o produto "77" tem uma imagem associada a ele que é a "44". Se não me engano tem um tópico explicando bem esse assunto aqui no fórum. Não é meu objetivo comentar isso profundamente, visto que o comentário se faz necessário para entender a linha de código acima. Por isso a lógica: echo $id_product."-".$pimg.".jpg". Feito isso, formate o CSS dessa página pra ficar do mesmo jeito do homefacture do presta shop, e é só colocar em qualquer Site fora do presta que vai funcionar perfeitamente. Espero ter sido claro e objetivo! como era uma dúvida, consegui resolver, então é justo colocar a solução para quem passar pelo mesmo problema um dia. Qualquer dúvidas ou sugestões podem comentar. Abraço a todos do fórum. Fred Azevêdo. 2 Link to comment Share on other sites More sharing options...
janaina Posted January 29, 2013 Share Posted January 29, 2013 Obrigado FredKeyster por contribuir com soluções para nossa comunidade! Abs, Janaina Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now