Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Quando clico no botão <a href="#janela1"?acao=add&id='.$ln['id'].' rel="modal" class="btvitrine">Detalhes</a> que é o botão da janela modal, a janele exibe normal e funciona mas só exibi as informações do ID 1, quando eu clico no 2 em diante só exibe as informações do ID 1.
<?php$consulta = mysql_connect('localhost', 'root', 'vertrigo');$db = mysql_select_db('lojagm', $consulta);?>
<table cellpadding="8" cellpadding="10" border="0" width="100%" > <tr><?php $LoopH = 5; $consulta = mysql_query("SELECT * FROM produtos $string"); if (isset($_POST['botbusc'])){ $consulta = mysql_query("SELECT * FROM produtos where nome like '%".$_POST['botbusc']."%'"); $count = mysql_num_rows($consulta); if ($count != 0) { }else { echo "<center><b><br><h3>Não foi encontrado nenhum PRODUTO correspondente à sua pesquisa.</h3></b></center>"; } } $registro = mysql_num_rows($consulta); $i = 1; while($ln = mysql_fetch_array($consulta)){ if($i < $LoopH){ echo' <td align="center" valign="top" bgcolor="#FFFFFF"> <strong>'.$ln['nome'].'</strong><br/> <img src="'.$ln['caminho'].$ln['foto'].'" width="226" height="170" alt="Erro na Imagem" /><br/> Valor <strong>R$: '.number_format($ln['preco'], 2, ",", ".").'</strong> Qtd: <strong>'.$ln['quantidade'].'</strong><br/><div style=" margin-top:5px;"></div> <a href="#janela1"?acao=add&id='.$ln['id'].' rel="modal" class="btvitrine">Detalhes</a> <div class="window" id="janela1"><div id="miniaturas"><div id="esconde"><div id="foto1" ><img src="'.$ln['caminho'].$ln['foto'].'" width="584" height="438" alt="IMAGEM OFF" /></div><div id="fotoi2" ><img src="'.$ln['caminho'].$ln['fotoi'].'" width="584" height="438" alt="IMAGEM OFF" /></div><div id="fotoii3" ><img src="'.$ln['caminho'].$ln['fotoii'].'" width="584" height="438" alt="IMAGEM OFF" /></div><div id="fotoiii4" ><img src="'.$ln['caminho'].$ln['fotoiii'].'" width="584" height="438" alt="IMAGEM OFF" /></div><div id="fotoiv5" ><img src="'.$ln['caminho'].$ln['fotoiv'].'" width="584" height="438" alt="IMAGEM OFF" /></div><div id="fotov6" ><img src="'.$ln['caminho'].$ln['fotov'].'" width="584" height="438" alt="IMAGEM OFF" /></div></div><ul class="lista"><li id=""><a href="#foto1"> <img src="'.$ln['caminho'].$ln['foto'].'" width="90" height="67" alt="IMAGEM OFF"></a></li><li id=""><a href="#fotoi2"> <img src="'.$ln['caminho'].$ln['fotoi'].'" width="90" height="67" alt="IMAGEM OFF"></a></li><li id=""><a href="#fotoii3"> <img src="'.$ln['caminho'].$ln['fotoii'].'" width="90" height="67" alt="IMAGEM OFF"></a></li><li id=""><a href="#fotoiii4"> <img src="'.$ln['caminho'].$ln['fotoiii'].'" width="90" height="67" alt="IMAGEM OFF"></a></li><li id=""><a href="#fotoiv5"> <img src="'.$ln['caminho'].$ln['fotoiv'].'" width="90" height="67" alt="IMAGEM OFF"></a></li><li id=""><a href="#fotov6"> <img src="'.$ln['caminho'].$ln['fotov'].'" width="90" height="67" alt="IMAGEM OFF"></a></li></ul></div><div id="otxet"><a href="#" class="fechar">Fechar</a><br><br><font size="4px" face="Trebuchet MS, Arial, Helvetica, sans-serif"><b>Formas de Pagamento:</b></font><br><br><font size="3px" face="Trebuchet MS, Arial, Helvetica, sans-serif">Temos serviços de pagamento online no MercadoPago e PagSeguro com as diversas formas de pagamento fornecido pelo site ou depósito bancário, transferência ou DOC, temos somente conta no Bradesco.</font><br><br><font size="4px" face="Trebuchet MS, Arial, Helvetica, sans-serif"><b>Formas de Envio (Serviços):PAC ou SEDEX.</b></font><br></div> </div><div id="mascara"></div> </td> '; }elseif($i = $LoopH){ echo' <td align="center" valign="top" bgcolor="#FFFFFF"> <strong>'.$ln['nome'].'</strong><br/> <img src="'.$ln['caminho'].$ln['foto'].'" width="226" height="170" alt="Erro na Imagem" /><br/> Valor <strong>R$: '.number_format($ln['preco'], 2, ",", ".").'</strong> Qtd: <strong>'.$ln['quantidade'].'</strong><br/><div style=" margin-top:5px;"></div> <a href="#janela1"?acao=add&id='.$ln['id'].' rel="modal" class="btvitrine">Detalhes</a> <div class="window" id="janela1"><div id="miniaturas"><div id="esconde"><div id="foto1" ><img src="'.$ln['caminho'].$ln['foto'].'" width="584" height="438" alt="IMAGEM OFF" /></div><div id="fotoi2" ><img src="'.$ln['caminho'].$ln['fotoi'].'" width="584" height="438" alt="IMAGEM OFF" /></div><div id="fotoii3" ><img src="'.$ln['caminho'].$ln['fotoii'].'" width="584" height="438" alt="IMAGEM OFF" /></div><div id="fotoiii4" ><img src="'.$ln['caminho'].$ln['fotoiii'].'" width="584" height="438" alt="IMAGEM OFF" /></div><div id="fotoiv5" ><img src="'.$ln['caminho'].$ln['fotoiv'].'" width="584" height="438" alt="IMAGEM OFF" /></div><div id="fotov6" ><img src="'.$ln['caminho'].$ln['fotov'].'" width="584" height="438" alt="IMAGEM OFF" /></div></div><ul class="lista"><li id=""><a href="#foto1"> <img src="'.$ln['caminho'].$ln['foto'].'" width="90" height="67" alt="IMAGEM OFF"></a></li><li id=""><a href="#fotoi2"> <img src="'.$ln['caminho'].$ln['fotoi'].'" width="90" height="67" alt="IMAGEM OFF"></a></li><li id=""><a href="#fotoii3"> <img src="'.$ln['caminho'].$ln['fotoii'].'" width="90" height="67" alt="IMAGEM OFF"></a></li><li id=""><a href="#fotoiii4"> <img src="'.$ln['caminho'].$ln['fotoiii'].'" width="90" height="67" alt="IMAGEM OFF"></a></li><li id=""><a href="#fotoiv5"> <img src="'.$ln['caminho'].$ln['fotoiv'].'" width="90" height="67" alt="IMAGEM OFF"></a></li><li id=""><a href="#fotov6"> <img src="'.$ln['caminho'].$ln['fotov'].'" width="90" height="67" alt="IMAGEM OFF"></a></li></ul></div><div id="otxet"><a href="#" class="fechar">Fechar</a><br><br><font size="4px" face="Trebuchet MS, Arial, Helvetica, sans-serif"><b>Formas de Pagamento:</b></font><br><br><font size="3px" face="Trebuchet MS, Arial, Helvetica, sans-serif">Temos serviços de pagamento online no MercadoPago e PagSeguro com as diversas formas de pagamento fornecido pelo site ou depósito bancário, transferência ou DOC, temos somente conta no Bradesco.</font><br><br><font size="4px" face="Trebuchet MS, Arial, Helvetica, sans-serif"><b>Formas de Envio (Serviços):PAC ou SEDEX.</b></font><br></div> </div><div id="mascara"></div> </td> </tr> <tr> '; $i = 0; } $i++; }?> </tr></table>
Obrigado
Veja no Site:
www.baixinhogames.com.br
Clique no botão Detalhes e em outro para ver.
Obrigado
Augue?
Aí eu tenho que modificar o Código toda hora que eu colocar algo Novo no Site? Eu só quero usar o Banco de Dados.
Não, cara.
No mesmo laço que você puxa os registros, você já cria a div do modal dinamicamente e deixa ela oculta.
Exemplificando (ao menos eu faço isso e funciona bem):
<?php
$divLista = "<h1>Lista de registro</h1><ul>";
foreach($registros as $registro)
{
$divLista .= "<li><a href=\"#modal".$registro['id']."\">Registro ".$registro['id']."</a></li>";
$divModal .= "<div id=\"modal".$registro['id']."\"><h1>Modal do registro ".$registro['id']."</h1><p>blablabla</p>";
}
$divLista .= "</ul>";
echo $divLista;
echo $divModal;
?>Acho que essa é a melhor forma (codigo feita para se você tiver usando bootstrap):
<a href="#" data-id="1" data-texto="texto que vai aparecer no modal 1" class="btvitrine">Detalhes</a>
<a href="#" data-id="2" data-texto="texto que vai aparecer no modal 2" class="btvitrine">Detalhes</a>
<a href="#" data-id="3" data-texto="texto que vai aparecer no modal 3" class="btvitrine">Detalhes</a>
<div id="modal">
Editando info <span id="id"></span>
<p id="texto"></p>
</div>
<script>
$('a').click(function() {
$('#modal #id').text($(this).attr('data-id'));
$('#modal #texto').text($(this).attr('data-texto'));
$('#modal').show();
});
</script>
Você tambem pode usar AJAX para carregar o conteudo do modal e depois abrir ele, +/- assim:
<a href="#" data-id="1" class="btvitrine">Detalhes</a>
<a href="#" data-id="2" class="btvitrine">Detalhes</a>
<a href="#" data-id="3" class="btvitrine">Detalhes</a>
<div id="modal"></div>
<script>
$('a').click(function() {
$.get('arquivo.php?id='+$(this).attr('data-id'), function(html) {
$('#modal').html(html);
$('#modal').show();
});
});
</script>OK entendo, mas eu gostaria de tentar descobrir o problema do Meu Código mesmo.
Conseguir fazer ele funcionar colocando '.$ln['id'].' no Botão Detalhes e na id="janela'.$ln['id'].'" que exibe a Modal.
...
echo'
<td align="center" valign="top">
<div id="quadromodal">
<h1><b>'.$ln['nome'].'</b></h1>
<img src="'.$ln['caminho'].$ln['foto'].'" width="226" height="170" alt="Erro na Imagem" />
<h2>Valor R$: '.number_format($ln['preco'], 2, ",", ".").' - Qtd: '.$ln['quantidade'].'</h2>
<p><a href="#janela'.$ln['id'].'" rel="modal" class="btvitrine">Detalhes</a></p>
</div>
<div class="window" id="janela'.$ln['id'].'">
<div id="miniaturas">
...
Mas apareceu outro Problema? :upset: as imagens do banner 2(id) em diante não estão mudando quando clica no banner?
Veja no console do Chrome na aba Network
Como ele está carregando as imagens, ai você vai ver se é o caminho até a imagem, o nome errado, etc
Problema Resolvido só era acrescentar o código Também:
'.$ln['id'].'
no ID das imagens, Pronto está funcionando Blz. Veja no Código:
<div id="quadromodal">
<h1><b>'.$ln['nome'].'</b></h1>
<img src="'.$ln['caminho'].$ln['foto'].'" width="226" height="170" alt="Erro na Imagem" />
<h2>Valor R$: '.number_format($ln['preco'], 2, ",", ".").' - Qtd: '.$ln['quantidade'].'</h2>
<p><a href="#janela'.$ln['id'].'" rel="modal" class="btvitrine">Detalhes</a></p>
</div>
<div class="window" id="janela'.$ln['id'].'">
<div id="miniaturas">
<div id="esconde">
<div id="foto1'.$ln['id'].'" >
<img src="'.$ln['caminho'].$ln['foto'].'" width="584" height="438" alt="IMAGEM OFF" />
</div>
<div id="fotoi2'.$ln['id'].'" >
<img src="'.$ln['caminho'].$ln['fotoi'].'" width="584" height="438" alt="IMAGEM OFF" />
</div>
<div id="fotoii3'.$ln['id'].'" >
<img src="'.$ln['caminho'].$ln['fotoii'].'" width="584" height="438" alt="IMAGEM OFF" />
</div>
<div id="fotoiii4'.$ln['id'].'" >
<img src="'.$ln['caminho'].$ln['fotoiii'].'" width="584" height="438" alt="IMAGEM OFF" />
</div>
<div id="fotoiv5'.$ln['id'].'" >
<img src="'.$ln['caminho'].$ln['fotoiv'].'" width="584" height="438" alt="IMAGEM OFF" />
</div>
<div id="fotov6'.$ln['id'].'" >
<img src="'.$ln['caminho'].$ln['fotov'].'" width="584" height="438" alt="IMAGEM OFF" />
</div>
</div>
<ul class="lista">
<li id=""><a href="#foto1'.$ln['id'].'"> <img src="'.$ln['caminho'].$ln['foto'].'" width="90" height="67" alt="IMAGEM OFF"></a></li>
<li id=""><a href="#fotoi2'.$ln['id'].'"> <img src="'.$ln['caminho'].$ln['fotoi'].'" width="90" height="67" alt="IMAGEM OFF"></a></li>
<li id=""><a href="#fotoii3'.$ln['id'].'"> <img src="'.$ln['caminho'].$ln['fotoii'].'" width="90" height="67" alt="IMAGEM OFF"></a></li>
<li id=""><a href="#fotoiii4'.$ln['id'].'"> <img src="'.$ln['caminho'].$ln['fotoiii'].'" width="90" height="67" alt="IMAGEM OFF"></a></li>
<li id=""><a href="#fotoiv5'.$ln['id'].'"> <img src="'.$ln['caminho'].$ln['fotoiv'].'" width="90" height="67" alt="IMAGEM OFF"></a></li>
<li id=""><a href="#fotov6'.$ln['id'].'"> <img src="'.$ln['caminho'].$ln['fotov'].'" width="90" height="67" alt="IMAGEM OFF"></a></li>
</ul>
</div>
<div id="otxet">
<a href="#" class="fechar">Fechar</a><br><br>
<strong>Produto: <font color="#0000FF" >'.$ln['nometitulo'].'</font></strong><br/><br>
<font size="4px" face="Trebuchet MS, Arial, Helvetica, sans-serif"><b>Formas de Pagamento:</b></font><br><br>
<font size="3px" face="Trebuchet MS, Arial, Helvetica, sans-serif">Temos serviços de pagamento online no MercadoPago e PagSeguro com as diversas formas de pagamento fornecido pelo site ou depósito bancário, transferência ou DOC, temos somente conta no Bradesco.</font><br><br>
<font size="4px" face="Trebuchet MS, Arial, Helvetica, sans-serif"><b>Formas de Envio (Serviços): PAC ou SEDEX.</b></font><br>
<a href="'.$ln['btfret'].'" class="fretecss" target="_blank">>> Calcular Custo de Envio (FRETE)</a><br><br>
<div id="botaoml"><font size="4px" face="Trebuchet MS, Arial, Helvetica, sans-serif"><b>Comprar Pelo:</b></font><br>
<a href="'.$ln['btanucioml'].'" target="_blank"><img alt="ERRO NA IMAGEM = OFF" src="imagens/botaomercadolivre.png" width="180" height="100" /></a></div>
</div>
</div>
<div id="mascara"></div>
Ai sempre ira mudar automaticamente o ID das fotos, para não repetir com os ID das fotos do Outro Banner.
Amigo, nem analisei muito seu código pq a formatação tá meio zoneada, mas acredito que CADA ID deverá ter um modal, OK? E não um modal para todos os registros.
Minha dica é fazer um modal com o ID do registro (ex: id="modal-01") e o link buscar por ele.