Preciso muito de ajuda que não consigo mais resolver. Estou montando uma rotina de cotação de preço e um determinado produto pode ter várias ofertas e assim por diante.
Estou usando INPUT='RADIO' para marcar a oferta escolhida. O problema que quando seleciono uma oferta de um produto, no próximo produto que escolher outra oferta, o radio anterior perde o foco.
Como faço para manter o radio do produto anterior selecionado e assim por diante ?
Estou usando MySql como base de dados, quando gero na tela a tabela, vários produtos tem várias ofertas.
Abaixo o código que estou usando e a imagem da tela para melhor entender.
<?php
if(!isset($_SESSION)){
session_start();}?><!-- Include_once Executa a chamada apenas uma única vez --><?php include_once("sistema/restrito_cliente.php");?><?php include_once("sistema/validar_user.php");?><?php include_once("header.php");?><?php include_once("menu.php");?><divclass="content-wrapper"><sectionclass="content-header"><h1>Cotação nº.<?php echo $cotaNumero;?> em Análise</h1><olclass="breadcrumb"><li><ahref="painel.php?exe=home/home"><iclass="fa fa-dashboard"></i> Home</a></li><liclass="active">Cotação em Análise</li></ol></section><!-- Main content --><sectionclass="content"><!-- Small boxes (Stat box) --><divclass="row"><?php
//Variável Passada da Página Anterior
$cotaNumeroGet = isset($_GET['cotaNumero'])? $_GET['cotaNumero']:false;
$cotaNumero = isset($_POST['cotaNumero'])? $_POST['cotaNumero']: $cotaNumeroGet;
$cotaStatus ='2';//Faço a pesquisa através do código ID
$sql_pegaProd ='SELECT * FROM cotacao WHERE cotaNumero = :cotaNumero AND cotaStatus = :cotaStatus';try{
$query_pegaProd = $conecta->prepare($sql_pegaProd);
$query_pegaProd->bindValue(':cotaNumero',$cotaNumero,PDO::PARAM_STR);
$query_pegaProd->bindValue(':cotaStatus',$cotaStatus,PDO::PARAM_STR);
$query_pegaProd->execute();
$resultado_pegaProd = $query_pegaProd->fetchAll(PDO::FETCH_ASSOC);}catch(PDOexception $error_pegaProd){
echo 'Erro ao pegar o Produto'.$error_pegaProd->getMessage();}//Capturo os dados que desejoforeach($resultado_pegaProd as $resProd){
$cotaId = $resProd['cotaId'];
$cotaNumero = $resProd['cotaNumero'];
$edCotaDtInicio = $resProd['cotaDtInicio'];
$edCotaHrsInicio = $resProd['cotaHrsInicio'];
$edCotaDtFim = $resProd['cotaDtFim'];
$edCotaHrsFim = $resProd['cotaHrsFim'];
$edCotaTitulo = $resProd['cotaTitulo'];}?><divclass="col-md-12"><!-- general form elements --><divclass="box box-primary"><divclass="box-header with-border"><h3class="box-title">Título: <?php echo $edCotaTitulo;?></h3></div><formrole="form"name="frm_cota"id="frm_cota"action=""enctype="multipart/form-data"method="POST"><divclass="box-body"><divclass="row invoice-info"><divclass="col-sm-2 invoice-col"><address><strong>Data Abertura:</strong><br/><?php echo date('d-m-Y', strtotime($edCotaDtInicio));?></address></div><divclass="col-sm-2 invoice-col"><address><strong>Hora Abertura:</strong><br/><?php echo $edCotaHrsInicio; date('H:i:s');?></address></div><divclass="col-sm-2 invoice-col"><address><strong>Data de Encerramento:</strong><br/><?php echo date('d-m-Y', strtotime($edCotaDtFim));?></address></div><divclass="col-sm-3 invoice-col"><address><strong>Hora de Encerramento:</strong><br/><?php echo $edCotaHrsFim; date('H:i:s');?></address></div><divclass="col-sm-3 invoice-col">
<a href="painel.php?exe=admin-cliente/cotacao/cotacao_altDataHrs&cotaNumero=<?php echo $cotaNumero ?>"
type="button" class="btn btn-warning pull-right" style="font-size: 14px;"> Alterar Data e Hora Encerramento</a></div></div></div></form><divclass="box-header"><h3class="box-title">Itens da Cotação</h3></div><!-- /.box-header --><divclass="box-body"><?php
//Traz o Código de Cliente logado
$clientes_clienteId ="$userClientes_clienteId";
$sql_pegaAtivos ='SELECT pro.codProdClie, pro.produtoDescr, pro.apres_unid,
pro.clientes_clienteId,
cota.cotacao_cotaId, cota.cotaItensId, cota.cotaNumImport,
cota.cotaNumero, cota.codProdClie,cota.cotaQtde, cota.cotaComenta,
cota.cotaReferencia
FROM cotacaoItens cota
INNER JOIN produto pro ON pro.codProdClie = cota.codProdClie
WHERE pro.clientes_clienteId = :clientes_clienteId
AND cota.cotaNumero = :cotaNumero
ORDER BY cota.cotaItensId ASC';try{
$query_pegaAtivos = $conecta->prepare($sql_pegaAtivos);
$query_pegaAtivos->bindValue(':clientes_clienteId',$clientes_clienteId,PDO::PARAM_STR);
$query_pegaAtivos->bindValue(':cotaNumero',$cotaNumero,PDO::PARAM_STR);
$query_pegaAtivos->execute();
$resultado_pegaAtivos = $query_pegaAtivos->fetchAll(PDO::FETCH_ASSOC);
$count_pegaAtivos = $query_pegaAtivos->rowCount(PDO::FETCH_ASSOC);}catch(PDOexception $error_pegaAtivos){
echo 'Erro ao pegar ativos';}foreach($resultado_pegaAtivos as $resAtivos){
$cotacao_cotaId = $resAtivos['cotacao_cotaId'];
$clientes_clienteId = $resAtivos['clientes_clienteId'];
$cotaItensId = $resAtivos['cotaItensId'];
$produtoCota = $resAtivos['codProdClie'];
$cotaNumero = $resAtivos['cotaNumero'];
$cotaNumImport = $resAtivos['cotaNumImport'];
$produtoClie = $resAtivos['codProdClie'];
$cotaQtde = $resAtivos['cotaQtde'];
$cotaComenta = $resAtivos['cotaComenta'];
$cotaReferencia = $resAtivos['cotaReferencia'];
$descrProd = $resAtivos['produtoDescr'];
$apresProd = $resAtivos['apres_unid'];?><divclass="box box-primary"><divclass="box-header with-border"style="background:#E0F2EC;"><h3class="box-title"><?php echo '<strong>'.$produtoClie.' - '.$descrProd .'</strong> - Qtde: '.$cotaQtde;?></h3><divclass="box-tools pull-right"><buttontype="button"class="btn btn-box-tool"data-widget="collapse"><iclass="fa fa-minus"style="font-size:18px;"></i></button></div></div><!-- /.box-header --><divclass="box-body"><divclass="table-responsive"><tableclass="table no-margin"><thead><tr><th><iclass="fa fa-shopping-cart"style="font-size:18px;"></i></th><th>Razão Social</th><th>ESP</th><th>Qtde</th><th>Vr Unit.</th><th>Vr Total.</th></tr></thead><?php
//Traz o Código do Produto
$codProdClie = $produtoClie;
$sql_pegaAtivos ='SELECT cl.clienteId, cl.razaoSocial, cl.faturaMinimo,
cr.cotaRespId, cr.cotaRespQtde, cr.cotaRespVlrUnit,
cr.cotaRespMarca, cr.codProdClie, cr.cotaRespObs,
cr.apres_unid, cr.clientes_clienteId,
cr.cotacaoItens_cotaItensId, cr.cotaNumero,
ci.cotaItensId, ci.codProdClie
FROM cotacaoItens ci
INNER JOIN cotacaoResposta cr ON cr.cotacaoItens_cotaItensId = ci.cotaItensId
INNER JOIN clientes AS cl ON cl.clienteId = cr.clientes_clienteId
WHERE cr.cotaNumero = :cotaNumero
AND cr.codProdClie = :codProdClie
ORDER BY cr.cotaRespVlrUnit ASC ';try{
$query_pegaAtivos = $conecta->prepare($sql_pegaAtivos);
$query_pegaAtivos->bindValue(':cotaNumero',$cotaNumero,PDO::PARAM_STR);
$query_pegaAtivos->bindValue(':codProdClie',$codProdClie,PDO::PARAM_STR);
$query_pegaAtivos->execute();
$resultado_pegaAtivos = $query_pegaAtivos->fetchAll(PDO::FETCH_ASSOC);
$count_pegaAtivos = $query_pegaAtivos->rowCount(PDO::FETCH_ASSOC);}catch(PDOexception $error_pegaAtivos){
echo 'Erro ao pegar ativos';}foreach($resultado_pegaAtivos as $resAtivos){
$cotaNumero = $resAtivos['cotaNumero'];
$faturaMinimo = $resAtivos['faturaMinimo'];
$cotaRespId = $resAtivos['cotaRespId'];
$cotaRespQtde = $resAtivos['cotaRespQtde'];
$cotaRespVlrUnit = $resAtivos['cotaRespVlrUnit'];
$cotaRespMarca = $resAtivos['cotaRespMarca'];
$cotaRespObs = $resAtivos['cotaRespObs'];
$codProdClie = $resAtivos['codProdClie'];
$apres_unid = $resAtivos['apres_unid'];
$clientes_clienteId = $resAtivos['clientes_clienteId'];
$razaoSocial = $resAtivos['razaoSocial'];?><?php
$fornecedor ="$clientes_clienteId";//Cálculo para Multiplicar e Somar o Total Geral dos Itens Cotados
$vrTotal ='0';//Variável recebe a Soma Total
$cnx = mysql_connect("localhost","root","");
mysql_select_db("siscotaweb", $cnx);
$sql ="SELECT cotaRespQtde, cotaRespVlrUnit FROM cotacaoResposta
WHERE clientes_clienteId = '$fornecedor'
AND codProdClie = $codProdClie
AND cotaNumero = '$cotaNumero' ";
$result = mysql_query($sql);//Executa a consultawhile($row = mysql_fetch_array($result)){
$qtde = number_format($row['cotaRespQtde']);
$valor = floatval(str_replace(",",".",$row['cotaRespVlrUnit']));
$total = $qtde * $valor;}?><tbody><tr><!--Opção para marcar qual oferta deseja comprar--><tdalign="left"width="10"height="10"rowspan="5">
<input type="radio" name="cpr" class="flat-red" value="<?php echo $cotaRespId;?>" />
</td><tdalign="left"width="200"height="10"><?php echo '<strong>'.$razaoSocial.'</strong>';?></td><tdalign="left"width="10"height="10"><?php echo $apres_unid ;?></td><tdalign="left"width="20"height="10"><?php echo $cotaRespQtde;?></td><tdalign="left"width="20"height="10"><?php echo number_format($cotaRespVlrUnit,2,",",".");?></td><tdalign="left"width="20"height="10"><?php echo number_format($total,2,",",".");?></td></tr><tr><tdalign="left"><?php echo 'Fat. Mínimo:<strong> '. $faturaMinimo.'</strong>';?></td><tdalign="left"colspan="4"><?php echo 'Marca: <strong>'. $cotaRespMarca.'</strong>';?></td></tr><tr><?php
$fornecedor ="$clientes_clienteId";
$cnx = mysql_connect("localhost","root","");
mysql_select_db("siscotaweb", $cnx);
$sql ="SELECT faturaValor, faturaPrazoEntrega, desc_pgto
FROM fatura
WHERE clientes_clienteId = '$fornecedor'
AND faturaCotaNumero = '$cotaNumero' ";
$result = mysql_query($sql);//Executa a consultawhile($row = mysql_fetch_array($result)){
$faturaPrazoEntrega = $row['faturaPrazoEntrega'];
$desc_pgto = $row['desc_pgto'];
$valor = floatval(str_replace(",",".",$row['faturaValor']));
$res = $valor;}if($res == $valor){?><tr><tdalign="left"><?php echo 'Prazo de Entrega:<strong> '.$faturaPrazoEntrega.'</strong> Dia(s)';?></td><tdalign="left"colspan="4"><?php echo 'Condição de Pagamento: <strong>'. $desc_pgto.'</strong>';?></td></tr><?php }?></tr><tr><tdalign="left"colspan="5"><?php echo '<strong>Observação: </strong>'. $cotaRespObs;?></td></tr></tbody><?php }//Fecha foreach ?></table><divclass="box-footer"><divclass="col-md-12"><strong>Comentário Sobre a Compra:</strong><inputtype="text"id='comenta'name="comenta"size="180"class="form-control"style="width:100%"onkeyup="up(this)"></div></div></div></div></div><?php }?><divclass="box-body"><formid="frm_itensCota"name="frm_itensCota"action=""method="post"enctype="multipart/form-data"><divstyle="text-align: right;"><inputclass="btn btn-danger"type="submit"name="voltar"id="voltar"value="Voltar"onclick="frm_itensCota.action='painel.php?exe=admin-cliente/cotacao/cotacao_lista'; frm_itensCota.submit()"title="Voltar a Lista de Cotação."/>
<input type="hidden" name="cotaId" value="<?php echo $cotaId;?>">
</div></form></div><!-- /.box button --></div><!-- / 1ª. box --></div><!-- /.col --></div><!-- fim da row --></section></div><?php include_once("footer.php");?><!--Script para Validar o Formulário --><scriptlanguage="JavaScript">function up(lstr){//converte minusculas em maiusculasvar str=lstr.value;//obtem o valor
lstr.value=str.toUpperCase();//converte as strings e retorna ao campo}</script>
Pergunta
remazela
Caros amgos do Forum Script Brasil.
Preciso muito de ajuda que não consigo mais resolver. Estou montando uma rotina de cotação de preço e um determinado produto pode ter várias ofertas e assim por diante.
Estou usando INPUT='RADIO' para marcar a oferta escolhida. O problema que quando seleciono uma oferta de um produto, no próximo produto que escolher outra oferta, o radio anterior perde o foco.
Como faço para manter o radio do produto anterior selecionado e assim por diante ?
Estou usando MySql como base de dados, quando gero na tela a tabela, vários produtos tem várias ofertas.
Abaixo o código que estou usando e a imagem da tela para melhor entender.
Grato pela ajuda.
Renato
Link para o comentário
Compartilhar em outros sites
3 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.