Página 1 de 2

Consulta MySql

Enviado: 17 Nov 2010, 00:20
por andreiwd
Falae Galera OCBR

Bom dia a todos,

Seguinte, estou com algumas idéias e gostaria de colocá-las em prática, porém sou novo no opencart e até agora não consegui entender sua estrutura.

Preciso fazer algum script (não quero incorporar no template para ser exibido) para executar pesquisa no banco de dados me retornando os produtos cadastrados... Como se fosse um relatório, mas o que necessito mesmo é como chamar o conteúdo das tabelas do mysql para que fosse exibidas através de um echo.

Ex:>>
<? echo $produto ?>
<? echo $imagem ?>
<? echo $preco ?>

alguém poderia me ajudar nisso ?

Abraço !

Re: Consulta MySql

Enviado: 17 Nov 2010, 08:21
por rochester
Amigo, recomendo vc copiar um controller / view que já faça isso.. Ou dá uma olhada nos models, provavelmente a consulta q vc quer já está lá..

Mas vc pode ser mais específico no que vc quer? Não entendi direito..

[]'s

Re: Consulta MySql

Enviado: 17 Nov 2010, 12:47
por andreiwd
Seguinte, uma das coisas que estou querendo fazer, é gerar um XML com 5 produtos RAND() ... para ser utilizado em slide / flash...

a Estrutura do xml seria a seguinte:
Código: Selecionar todos
<banner>
<bannerrotater 
imagem="URL DA IMAGEM"  
titulo="TITULO / NOME DO PRODUTO"  
preco="VALOR R$000,00" 
detalhes="URL PARA DETALHES DO PRODUTO" 
comprar="URL OU FUNÇÃO PARA ADICIONAR NO CARRINHO" >
<![CDATA[ **** AQUI IRIA A META DESCRIÇÃO **** ]]>
</bannerrotater >
</banner>
Se conseguir fazer isso, fica bem mais simples e dinânimo a apresentação de produtos do slide, e não precisaria colocar manualmente...

Re: Consulta MySql

Enviado: 17 Nov 2010, 12:50
por rochester
Gerar em que momento, na hora da animação? Outra forma seria gerar, por exemplo, 1 vez no dia, ou 1 vez por semana...

Pra gerar na hora da animação é menos complicado..

Não consigo imaginar um jeito que não envolva criar uma nova página no site.. Amigos, algum sugestão de função "nativa" do OC para isso?

[]'s

Re: Consulta MySql

Enviado: 17 Nov 2010, 12:54
por andreiwd
Sim, gerar o xml quando carregar com 5 produtos aleatórios...

Cada vez que alguém entrar, vai ver 5 produtos diferentes....

É uma coisa bem simples... porém acabou ficando complicado pra mim, pois me perdi no código...

Se alguem quiser analisar qual e melhor aplicação, o slide que me refiro é este....

-> http://www.generalhost.com.br/lojaagitaqua

Abraço a todos !

Se quiser, posso postar os arquivos fonte do slide...

Re: Consulta MySql

Enviado: 17 Nov 2010, 14:49
por denisth
Achei muito interessante este esquema de slideshow andreiwd, você poderia postar como se faz isso?
Parabéns ficou show de bola.

Re: Consulta MySql

Enviado: 18 Nov 2010, 00:00
por andreiwd
Ae galera, CONSEGUI fazer o slide funcionar dinamicamente....

Alterei o módulo FEATURED (produtos em destaque)...

Agora o slide vai mostrar os produtos que estiverem programados no módulo de destaque automaticamente...

Se alguém aí se propor a ajudar a melhorar, entre em contato comigo, pois creio que apesar de estar rodando direitinho, ainda acho que pode-se enxugar o código que fiz...

Arquivo feature.tpl (modificado)
Código: Selecionar todos
<div class="box">
  <div class="top"><img src="catalog/view/theme/default/image/featured.png" alt="" /><?php echo $heading_title; ?></div>
  <div class="middle">
    <?php if ($products) {
	$xml = "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n";
    $xml .="<banner>\n";
	?>
    <table cellpadding="2" cellspacing="0" style="width: 100%;">
      <?php foreach ($products as $product) { 
	  $prods = array();
	  $prods[] = "$product";
	  ?>
      
	  <tr>
        <td valign="top" style="width:1px"><a href="<?php echo str_replace('&', '&', $product['href']); ?>"><img src="<?php echo $product['image']; ?>" alt="<?php echo $product['name']; ?>" /></a></td>
        <td valign="top"><a href="<?php echo str_replace('&', '&', $product['href']); ?>"><?php echo $product['name']; ?></a>
          <?php if ($display_price) { ?>
          <br />
          <?php if (!$product['special']) { ?>
          <span style="font-size: 11px; color: #900;"><?php echo $product['price']; ?></span>
          <?php } else { ?>
          <span style="font-size: 11px; color: #900; text-decoration: line-through;"><?php echo $product['price']; ?></span> <span style="font-size: 11px; color: #F00;"><?php echo $product['special']; ?></span>
          <?php } ?>
		            <a class="button_add_small" href="<?php echo $product['add']; ?>" title="<?php echo $button_add_to_cart; ?>" >&nbsp;</a>
          <?php } ?>
          <?php if ($product['rating']) { ?>
          <br />
          <img src="catalog/view/theme/default/image/stars_<?php echo $product['rating'] . '.png'; ?>" alt="<?php echo $product['stars']; ?>" />
         <?php } ?></td>
      </tr>
      <?php   for($i = 0; $i < 5; $i++) {

         if(!isset($prods[$i])) break;
         $tirar = array("http://generalhost.com.br/lojaagitaqua/");
		 $muda = str_replace("38x38", "120x120", "{$product['image']}");
		 $muda2 = str_replace($tirar, "", $muda);
		 $tit = "{$product['name']}";
		 $tit2 = utf8_decode($tit);
		 $acento = array("á","é","ã","õ","ú","ê","ç","í","ó","à");
		 $mostra = array("a","e","a","o","u","e","c","i","o","a");
		 $titulo = str_replace($acento, $mostra, $tit2);
		    $xml .="<bannerrotater imagem=\"{$muda2}\" \n produto=\"{$titulo}\" \n preco=\"{$product['price']}\" \n detalhes=\"{$product['add']}\" \n comprar=\"{$product['href']}\" >";
            $xml .="<![CDATA[<b>Aproveite ! Preço Especial:]]>";
      	    $xml .="</bannerrotater>\n\n";
}}?>
    </table>
<?php $xml .="</banner>";

if ($file = fopen("banner.xml", "w")) {
    if (fwrite($file, "$xml") !== FALSE) {
        echo "";
    } else {
        echo "";
    }
} } ?>
  </div>
  <div class="bottom">&nbsp;</div>
</div>
Este Slide utiliza dois arquivos:
http://www.generalhost.com.br/lojaagitaqua/produtos.swf
http://www.generalhost.com.br/lojaagitaqua/banner.xml

Vocês podem utilizar configurando o arquivo xml manualmente ou alterar o "featured.tpl" e deixar o script fazer o trabalho dinamicamente...
Abraço !

Re: Consulta MySql

Enviado: 18 Nov 2010, 00:14
por rochester
Amigo, muito boa a sua solução, acho que não tenho o que melhorar aí!

[]'s

Re: Consulta MySql

Enviado: 17 Fev 2011, 10:41
por armendane
alguem poderia me dar uma dica e como instalar essa novidade?

tentei axar o arquivo xml mas ta dando erro.

abraço
.

Re: Consulta MySql

Enviado: 15 Mar 2011, 00:16
por andreiwd
Então amigo, éh só fazer as alterações no arquivo do módulo featured.... e colocar o arquivo produtos.swf na raiz da sua loja junto com o index.php ..... O arquivo xml será gerado automaticamente, não é necessário criar ou upar o arquivo....

abraço !