Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Leo Quintino

Javascript de envio de form não funciona no chrome

Recommended Posts

Olá pessoal,

 

Esse script funciona no Firefox e IE, mas não no chrome. A variável f2 funciona, mas a f1 não.

 

O que estou fazendo de errado?

 

Valeu.

 

Sds,

Leo.

 

<script language="JavaScript1.3">
function sendForm() {
var f1 = document.ff;
var f2 = document.ff2;
var radioButton = f2.pagamento;
var temp = new Number();
 for (counter = 0; counter < radioButton.length; counter++)	{
    if (radioButton[counter].checked) {
  	  radio_choice = radioButton[counter].value; 
	}
 }
  if (radio_choice == "pc") {
    temp = parseFloat(f1.valorTitulo.value);
	temp = temp + 45;
	temp = temp / 3;
    var novoValor = Math.ceil(temp);
	f1.valorTitulo.value = novoValor;
	f2.novoValor.value = novoValor;
   }
   else {
   f2.novoValor.value = f1.valorTitulo.value;
  } 
  
  f1.submit();
  f2.submit();
}
</script>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Na verdade é um php, bem grande. O script começa na linha 171 e os forms estão logo abaixo.

 

<?php
//session_start();
require_once("_config/db_config.php");
require_once("_includes/JMFW_Date-Time.php");

$cliID = $_REQUEST["cli"];
$trm  = trim($_POST['turma']);
$hoje = date("Y-m-d");
$agora = date("H:i:s");

  $cpf = trim($_POST['cpf']);
  $nom = htmlentities(trim($_POST['nome']),ENT_QUOTES);
  $mai = htmlentities(trim($_POST['email']),ENT_QUOTES);
  $sex = trim($_POST['sexo']);
  $nsc = formatDate(trim($_POST['dtnascimento']),"db");
  $frm = trim($_POST['formacao']);
  $tpi = trim($_POST['tipo']);
  $cep = trim($_POST['cep']);
  $tlg = trim($_REQUEST['tp_lg']);
  $lgr = trim($_REQUEST['endereco']);
  $num = trim($_POST['numero']);
  $cmp = trim($_POST['complemento']);
  $bai = htmlentities(trim($_POST['bairro']),ENT_QUOTES);
  $cid = htmlentities(trim($_POST['cidade']),ENT_QUOTES);
  $uf = trim($_POST['uf']);
  $ddf = trim($_POST['dddf']);
  $tel = trim($_POST['telefone']);
  $ddc = trim($_POST['dddc']);
  $cel = trim($_POST['celular']);


 $conn = mysql_connect($DB_hostname,$DB_username,$DB_passwd) or die($err_mesg);
   mysql_select_db($DB_name) or die($err_mesg2);

// Checa se o cliente ja esta cadastrado para o caso de refresh nao criar duplicata
function checkUser($cpfusr) {
 $sqlFn = "select id from imc_cadastro where cpf=$cpfusr";
 $resFn = mysql_query($sqlFn);
 
 if (mysql_num_rows($resFn) > 0) {
    $output = mysql_result($resFn,0);
   }
   else {
    $output = false;
  }
  return $output;
}

// Checa se ja existe inscricao para esta turma por este cliente, evita duplicidade no caso de refresh
function checkSubscription($intTurma,$intCliente) {
 $sqlFn = "select id from imc_inscricoes where turmaID=$intTurma and alunoID=$intCliente";
 $res = mysql_query($sqlFn);
 
  if (mysql_num_rows($res) > 0) {
    $output = mysql_result($res,0);
   }
   else {
    $output = 0;
  }
  
  return $output;
}

// Ajusta os valores do curso em função da data corrente
 $sql3 = "select ic.nome,dtDesc1,vlDesc1,dtDesc2,vlDesc2,dtDesc3,vlDesc3,DATE_FORMAT(dtInicial,'%d'),DATE_FORMAT(dtFinal,'%d/%m/%Y'),DATE_FORMAT(dtInicial,'%d/%m/%Y') from imc_cursos ic, imc_turmas it where it.idCurso=ic.id and it.id=$trm";
  $res = mysql_query($sql3);
  $curso = mysql_fetch_array($res);
  mysql_free_result($res);
  //echo "<p>$sql3<hr>".mysql_error()."</p>";  
  for ($x=1;$x<=5;$x+=2) {
    if ($curso[$x] >= $hoje) {
	  $dtVenc = $curso[$x];
	  $valor = $curso[$x+1];
	  break;
	}
  }

// Ajusta a data de vencimento do curso para o dia útil anterior ao início
   $iCrs = split("/",$curso[9]);
   $diaAnterior = mktime (0, 0, 0, $iCrs[1], $iCrs[0]-1, $iCrs[2]);
   $diaSemana = getdate($diaAnterior);

   switch ($diaSemana[weekday]) {
    case "Saturday" : 
     $diaReal = mktime (0, 0, 0, $iCrs[1], $iCrs[0]-2, $iCrs[2]);
     $venc = date("Y-m-d",$diaReal);
     break;
  
    case "Sunday" :
     $diaReal = mktime (0, 0, 0, $iCrs[1], $iCrs[0]-3, $iCrs[2]);
     $venc = date("Y-m-d",$diaReal);
     break;
 
    default :
     $diaReal = mktime (0, 0, 0, $iCrs[1], $iCrs[0]-1, $iCrs[2]);
     $venc = date("Y-m-d",$diaReal);
   }

// Checa se não existe cadastro prévio do cliente pelo CPF informado
if (!isset($cliID) || empty($cliID)) {
 // Evita a duplicidade de cadastro em caso de refresh da pagina
  if (checkUser($cpf) == false) {
   $sql  = "insert into imc_cadastro (id,cpf,nome,email,sexo,dtNasc,formacao,tp_logra,logradouro,numero,comp,bairro,cidade,uf,cep,dddFone,fone,dddCel,celular,dtCriacao,dtAlteracao,status) ";
   $sql .= "values ('','$cpf','$nom','$mai','$sex','$nsc','$frm','$tlg','$lgr','$num','$cmp','$bai','$cid','$uf','$cep','$ddf','$tel','$ddc','$cel',NOW(),NOW(),'A')";
    mysql_query($sql);
 
  	  if (mysql_affected_rows() > 0) {
	    $cliID = mysql_insert_id();
	  }
   }
   else {
     $cliID = checkUser($cpf);
  }
}

// Se a inscricao for de pessoa juridica, primeiro verificamos se já existe a relação emp x fun
  if ($tpi == "PJ") {
    $empID = trim($_POST['empresa']);
    $sqlEF = "select id from imc_emp_fun where empID=$empID and funID=$cliID";
	$resEF = mysql_query($sqlEF);
	
	if (mysql_num_rows($resEF) < 1) {
	  $sqlInEF = "insert into imc_emp_fun (id,empID,funID) values ('',$empID,$cliID)";
	  mysql_query($sqlInEF);
	  //echo "<p style=\"border: 1px solid #000000;\">$sqlInEF<hr>".mysql_error()."</p>";
	 }
	 else {
	  //echo "<p style=\"border: 1px solid #000000;\">Já existe a relação funcionario x empresa.</p>";
	}
  }
  
// Checa se ja existe inscricao com estes dados e evita duplicidade de inscricao 
if (checkSubscription($trm,$cliID) == 0) {
  $sqlIns  = "insert into imc_inscricoes (id,tipo,turmaID,alunoID,dtInsc,hrInsc,boleto,valor,dtPagto,status) ";
  $sqlIns .= "values ('','$tpi',$trm,$cliID,'$hoje','$agora','',$valor,'','A')";
   mysql_query($sqlIns);

   if (mysql_affected_rows() > 0) { 
     $inscID = mysql_insert_id();
	   
	   if ($tpi == "PJ") {
         $sqlBol = "insert into imc_boletos (id,inscricao,cliente,turma,dtEmissao,dtVenc,valor,instrucao1,instrucao2,instrucao3,instrucao4,instrucao5,status,dtPagto) ";
	     $sqlBol .= "values ('',$inscID,$cliID,$trm,'$hoje','$dtVenc',$valor,'Curso: $curso[0]','Data : $curso[7] a $curso[8]','Func: $nom','Sr. Caixa, favor nao receber apos o vencimento.','','AG','0000-00-00')";
	    }
		else {
         $sqlBol = "insert into imc_boletos (id,inscricao,cliente,turma,dtEmissao,dtVenc,valor,instrucao1,instrucao2,instrucao3,instrucao4,instrucao5,status,dtPagto) ";
	     $sqlBol .= "values ('',$inscID,$cliID,$trm,'$hoje','$dtVenc',$valor,'Boleto referente ao curso :','$curso[0]','Data : $curso[7] a $curso[8]','Sr. Caixa, favor nao receber apos o vencimento.','','AG','0000-00-00')";		
	   }
	   mysql_query($sqlBol);
	   $nossoNum = mysql_insert_id();
	   //echo "<p style=\"border: 1px solid #000000;\">$sqlBol<hr>".mysql_error()."</p>";
       
	   $mesg .= "Matrícula realizada com sucesso! <br>A confirmação de sua matrícula está vinculada a identificação de seu pagamento.";
       $msg_img = "information.png";

      }
    else {
     $mesg .= "Não foi possível processar sua solicitação. tente novamente !";
     $msg_img = "exclamation.png";
    }
  }
 else {
   $inscID = checkSubscription($trm,$cliID);
   $sqlNnum = "select id from imc_boletos where inscricao=$inscID and turma=$trm and cliente=$cliID";
   $resNnum = mysql_query($sqlNnum);
   $nossoNum = mysql_result($resNnum,0);
} 

require_once("_includes/header.php");
?>
<script language="JavaScript1.3">
function sendForm() {
var f1 = document.ff;
var f2 = document.ff2;
var radioButton = f2.pagamento;
var temp = new Number();
 for (counter = 0; counter < radioButton.length; counter++)	{
    if (radioButton[counter].checked) {
  	  radio_choice = radioButton[counter].value; 
	}
 }
  if (radio_choice == "pc") {
    temp = parseFloat(f1.valorTitulo.value);
	temp = temp + 45;
	temp = temp / 3;
    var novoValor = Math.ceil(temp);
	f1.valorTitulo.value = novoValor;
	f2.novoValor.value = novoValor;
   }
   else {
   f2.novoValor.value = f1.valorTitulo.value;
  } 
  
  f1.submit();
  f2.submit();
}
</script>
<div class='texto' align='justify' style='width:100%'>

<h2>Inscrição</h2>
<h3><font color="#808080">Curso:</font> <?=$curso[0]?></h3>

<hr size="1" style="color: #e0e0e0">
<br />
<div class="conteudo">
<form method="POST" name="ff" action="https://geraboleto.sicoobnet.com.br/geradorBoleto/GerarBoleto.do" target="_blank" >
<?php
 if ($tpi == "PF") {
?>
<!-- Dados do sacado -->
  <input type="hidden" size="50" maxlength="50" NAME="nomeSacado" value="<?=$nom?>">
  <input type="hidden" size="14" maxlength="14" NAME="cpfCGC" value="<?=$cpf?>">
  <input type="hidden" size="40" maxlength="40" NAME="endereco" value="<?=$tlg?> <?=$lgr?> <?=$num?> <?=$cmp?>">
  <input type="hidden" size="15" maxlength="15" NAME="bairro" value="<?=$bai?>">
  <input type="hidden" size="15" maxlength="15" NAME="cidade" value="<?=$cid?>">
  <input type="hidden" size="8" maxlength="8" NAME="cep" value="<?=$cep?>">
  <input type="hidden" size="2" maxlength="2" NAME="uf" value="<?=$uf?>">
<!-- Dados do cedente -->  
  <input type="hidden" name="dataEmissao" value="<?=date('Ymd')?>">
  <input type="hidden" name="codTipoVencimento" value="1">
  <input type="hidden" name="dataVencimentoTit" value="<?=str_replace("-", "", $dtVenc)?>">
  <input type="hidden" name="codEspDocumento" value="DM">
  <input type="hidden" name="valorTitulo" value="<?=$valor?>">
  <input type="hidden" name="valorAbatimento" value="0">
  <input type="hidden" name="valorIOF" value="0">
  <input type="hidden" name="numContaCorrente" value="8290016">
  <input type="hidden" name="coopCartao" value="4156">
  <input type="hidden" name="numCliente" value="13455">
  <input type="hidden" name="seuNumero" value="<?=$nossoNum?>">
  <input type="hidden" name="numCGCCPFSacador" value="65171886000181">  
  <input type="hidden" name="chaveAcessoWeb" value="7B1A9C1A-5328-4606-B0E9-C6031843D690">
  <input type="hidden" name="codMunicipio" value="1009">
  <input type="hidden" name="descInstrucao1" value="Boleto referente ao curso :">
  <input type="hidden" name="descInstrucao2" value="<?=$curso[0]?>">
  <input type="hidden" name="descInstrucao3" value="Data : <?=$curso[7]?> a <?=$curso[8]?>">
  <input type="hidden" name="descInstrucao4" value="Sr. Caixa, favor no receber apos o vencimento.">
<?php
  }
  else {
   $sqlEmp = "select cnpj,fantasia,tp_logra,logradouro,numero,comp,bairro,cidade,uf,cep from imc_empresas where id=$empID";
   $resEmp = mysql_query($sqlEmp);
   $vetEmp = mysql_fetch_array($resEmp);
?>
<!-- Dados do sacado -->
  <input type="hidden" size="50" maxlength="50" NAME="nomeSacado" value="<?=$vetEmp[1]?>">
  <input type="hidden" size="14" maxlength="14" NAME="cpfCGC" value="<?=$vetEmp[0]?>">
  <input type="hidden" size="40" maxlength="40" NAME="endereco" value="<?=$vetEmp[2]?> <?=$vetEmp[3]?> <?=$vetEmp[4]?> <?=$vetEmp[5]?>">
  <input type="hidden" size="15" maxlength="15" NAME="bairro" value="<?=$vetEmp[6]?>">
  <input type="hidden" size="15" maxlength="15" NAME="cidade" value="<?=$vetEmp[7]?>">
  <input type="hidden" size="8" maxlength="8" NAME="cep" value="<?=$vetEmp[9]?>">
  <input type="hidden" size="2" maxlength="2" NAME="uf" value="<?=$vetEmp[8]?>">
<!-- Dados do cedente -->  
  <input type="hidden" name="dataEmissao" value="<?=date('Ymd')?>">
  <input type="hidden" name="codTipoVencimento" value="1">
  <input type="hidden" name="dataVencimentoTit" value="<?=str_replace("-", "", $dtVenc)?>">
  <input type="hidden" name="codEspDocumento" value="DM">
  <input type="hidden" name="valorTitulo" value="<?=$valor?>">
  <input type="hidden" name="valorAbatimento" value="0">
  <input type="hidden" name="valorIOF" value="0">
  <input type="hidden" name="numContaCorrente" value="8290016">
  <input type="hidden" name="coopCartao" value="4156">
  <input type="hidden" name="numCliente" value="13455">
  <input type="hidden" name="seuNumero" value="<?=$nossoNum?>">
  <input type="hidden" name="numCGCCPFSacador" value="65171886000181">  
  <input type="hidden" name="chaveAcessoWeb" value="7B1A9C1A-5328-4606-B0E9-C6031843D690">
  <input type="hidden" name="codMunicipio" value="1009">
  <input type="hidden" name="descInstrucao1" value="Curso: <?=$curso[0]?>">
  <input type="hidden" name="descInstrucao2" value="Data: <?=$curso[7]?> a <?=$curso[8]?>">
  <input type="hidden" name="descInstrucao3" value="Func: <?=$nom?>">
  <input type="hidden" name="descInstrucao4" value="Sr. Caixa, favor no receber apos o vencimento.">
<?php
 }
?>
</form>

		<div>			
			<span class="infoInscricao">Escolha a forma de pagamento e clique no botão Finalizar para efetuar a inscrição.</span>
			<br><br>
			<div class="tituloConteudo">Dados da inscrição</div>
			<br>
<table width="500">
<?php
 if ($tpi == "PF") {
?>
  <tr>
    <td width="100" style="vertical-align: top;" class="label" >
	  <label for="Q0_cpf">CPF </label>
	</td>
    <td style="_" class="cursos"  colspan='1'>
	  <span style='font-size: 11px; font-family: tahoma' class=''><?=$cpf?></span>
	</td>
  </tr>
  <tr>
    <td style="vertical-align: top;" class="label" >
	  <label for="C1_nome">Nome</label>
	</td>
    <td style="_" class="cursos"  colspan='1'>
	  <span style='font-size: 11px; font-family: tahoma' class=''><?=$nom?></span>
	</td>
  </tr>
<?php
  }
  else {
?>
  <tr>
    <td width="100" style="vertical-align: top;" class="label" >
	  <label for="Q0_cpf">CNPJ </label>
	</td>
    <td style="_" class="cursos"  colspan='1'>
	  <span style='font-size: 11px; font-family: tahoma' class=''><?=$vetEmp[0]?></span>
	</td>
  </tr>
  <tr>
    <td style="vertical-align: top;" class="label" >
	  <label for="C1_nome">Empresa</label>
	</td>
    <td style="_" class="cursos"  colspan='1'>
	  <span style='font-size: 11px; font-family: tahoma' class=''><?=$vetEmp[1]?></span>
	</td>
  </tr>
  <tr>
    <td style="vertical-align: top;" class="label" >
	  <label for="C1_nome">Funcionário</label>
	</td>
    <td style="_" class="cursos"  colspan='1'>
	  <span style='font-size: 11px; font-family: tahoma' class=''><?=$nom?></span>
	</td>
  </tr>  
<?php
 }
?>
  <tr>
    <td style="vertical-align: top;" class="label" >
	  <label for="O2_periodo">Turma</label>
	</td>
    <td style="_" class="cursos"  colspan='1'>
	  <span style='font-size: 11px; font-family: tahoma' class=''>IMC-<?=str_pad($trm, 6, "0", STR_PAD_LEFT)?> - <?=$curso[7]?> a <?=$curso[8]?></span>
	</td>
  </tr>
   <tr>
    <td style="vertical-align: top;" class="label" >
	  <label for="O2_periodo">Forma de pagamento</label>
	</td>
    <td style="_" class="cursos"  colspan='1'>
	 <form name="ff2" method="post" action="confirma.php">
        <input type="hidden" name="nNum" value="<?=$nossoNum?>"> 
		<input type="hidden" name="inscricao" value="<?=$inscID?>">
		<input type="hidden" name="novoValor" value="">
		<input type="hidden" name="tipo" value="<?=$tpi?>">
		<input type="hidden" name="empresa" value="<?=$vetEmp[1]?>">
		<input type="hidden" name="cnpj" value="<?=$vetEmp[0]?>">
 	    <span style='font-size: 11px; font-family: tahoma'>
	      <input type="radio" name="pagamento" value="av" > À vista - R$ <?=$valor?>,00 com vencimento em <?=formatDate($dtVenc,"pg")?><br />
		  <input type="radio" name="pagamento" value="pc" > Parcelado em 3 x - R$ <?=ceil(($valor+45)/3)?>,00 com vencimento em <?=formatDate($dtVenc,"pg")?>
	    </span>
	  </form>
	</td>
  </tr>

  <tr>
    <td colspan="2" align="center" style="vertical-align: top;" class="label" > 
      
	</td>
  </tr>

  <tr>
    <td colspan="2" align="center" style="vertical-align: top;" class="label" >
	 <input type="button" value="Finalizar" onClick="sendForm()">
	 <!-- <input type="image" src="_imgs/ico_boleto.gif" value="Gerar Boleto" onClick="document.ff.submit();"> -->
	</td>
  </tr>

</table> 
 
</div>
<?php
require_once("_includes/footer.php");
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites
Ele pega os dados de um formulário oculto o "ff" e manda pro banco (https://geraboleto.sicoobnet.com.br/geradorBoleto/GerarBoleto.do) pra gerar um boleto, esse deveria abrir numa nova janela, mas no chrome não abre.


Depois ele pega os dados de outro formulario, o "ff2" e manda pro arquivo confirma.php que vai colocar isso no banco de dados. Esse está certo.


O problema é que deveria aparecer o boleto no momento que a pessoa clicasse no botão, mas no chrome não abre.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenta separar o front-end do back-end mano.
Ta uma bagunça só isso ai .. Não da para entender NADA ..

Já pensou você dar manutenção nesse seu código daqui uns 2 anos ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tentei isso já, mas não resolveu. Estou melhorando o código e assim que eu resolver posto aqui.

 

O doctype é normal:

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.