Ir para conteúdo

POWERED BY:

Arquivado

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

gihbatalha

diferença com o script

Recommended Posts

Ao fazer um script para um cliente eu tenho que colocar 300 zeros em uma linha, que eu faço usando o for, no meu computador ele escreve os 300 zeros, só que no servidor do cliente, esse mesmo script escreve 299 zeros, alguém sabe por que isso ocorre?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala gihbatalha,

Tente isso

for ($i = 1;$i <= 300; $i++) {
  echo $i."<br>";
}

Posta o seu for para eu ver como está.

Valeu

Compartilhar este post


Link para o post
Compartilhar em outros sites

Hum... e se vc usar o str_pad ?

 

http://php.net/manual/pt_BR/function.str-pad.php

 

É sempre melhor usar as funções nativas, do que rescrever elas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

olha ainda da diferença, os script inteiro está aqui:

<?php

 include 'conecta.php';
 function Iniciais($nome,$minusculas = true){

	preg_match_all('/\s?([A-Z])/',$nome,$matches);

	$ret = implode('',$matches[1]);

	return $minusculas?

		strtolower($ret) :

		$ret;

}

$dt_ini = implode('-',array_reverse(explode('/',$_GET['dt_ini'])));
$dt_fim = implode('-',array_reverse(explode('/',$_GET['dt_fim'])));

   $dtini = implode('-',explode('/',$_GET['dt_ini']));
   $dtfim = implode('-',explode('/',$_GET['dt_fim']));
   $conta = $_GET['conta'];

if($conta == 1){
  $nomearquivo = 'CB_'.$dtini.'_'.$dtfim.'_'.$conta;
}
if($conta == 2){
  $nomearquivo = 'CBS_'.$dtini.'_'.$dtfim.'_'.$conta;
}
           $file_type = "msword";
 		   $file_ending = "txt";
		   
	       HEADER("Content-Type: application/$file_type");
		   HEADER("Content-Disposition: attachment; filename=$nomearquivo.$file_ending");
		   HEADER("Pragama: no-cache");
		   HEADER("Expires: 0");
       
           $fp = fopen("exemplo1.txt", "a");
		   

//REGISTRO HEADER


 if($conta == 1){
     $codigo_transmissao = "00650164985001300319";	
     	
	 }
  if($conta == 2){
     $codigo_transmissao = "00650212014301300343";	 	  
      
		 }


$nome_cedente = "VILARTE EMP. IMOB. LTDA";
$dt_gravacao = date("d/m/y");
$dt_gravacao = implode("",explode("/",$dt_gravacao));
$mensagem1 = "";$mensagem2 = "";$mensagem3 = "";
$mensagem4 = ""; $mensagem5 = ""; $mensagem6 = "";

 for($i = strlen($nome_cedente); $i<30;$i++){
	 $nome_cedente .= " ";
	 }
 
 for($i = strlen($mensagem1); $i<47; $i++){
	 $mensagem1 .= " ";
	 }
 	 
 for($i = strlen($mensagem2); $i<47; $i++){
	 $mensagem2 .= " ";
	 }
 
 for($i = strlen($mensagem3); $i<47; $i++){
	 $mensagem3 .= " ";
	 }
 
 for($i = strlen($mensagem4); $i<47; $i++){
	 $mensagem4 .= " ";
	 }	 	 
 
 for($i = strlen($mensagem5); $i<47; $i++){
	 $mensagem5 .= " ";
	 }	 
	 
 for($i = strlen($mensagem6); $i<40; $i++){
	 $mensagem6 .= " ";
	 }	  

$numero_registro = "000001"; 


 
$linha1 = "01REMESSA01COBRANCA ";
$linha1 .= "      ";
$linha1 .= $codigo_transmissao;
$linha1 .= $nome_cedente."033SANTANDER";
$linha1 .= "      ";
$linha1 .= $dt_gravacao."0000000000000000";
$linha1 .= $mensagem1;
$linha1 .= $mensagem2;
$linha1 .= $mensagem3;
$linha1 .= $mensagem4;
$linha1 .= $mensagem5;
$linha1 .= $mensagem6;
$linha1 .= "000".$numero_registro;
$linha1 .= "\r\n";

echo $linha1;

if($conta == 1){   
	   
$sql = mysql_query("select nome,endereco,bairro,cliente.cidade,cliente.estado,cliente.cep,vecto_parc,boleto,vltotal,
       parcelas.codigo,jurosm,loteamento.codigo,tipo_pessoa, cnpj_cpf, lote, quadra, loteamento.loteamento,
	   parcelas.cod_parc
	   from cliente inner join parcelas inner join loteamento 
	   where cliente.cod_cliente=parcelas.cliente 
	   and cliente.loteamento=loteamento.codigo and parcelas.bc='N'
	   and vecto_parc>='".$dt_ini."' and vecto_parc<='".$dt_fim."' 
	   and loteamento.codigo!=9");
}
if($conta == 2){   
	   
$sql = mysql_query("select nome,endereco,bairro,cliente.cidade,cliente.estado,cliente.cep,vecto_parc,boleto,vltotal,
       parcelas.codigo,jurosm,loteamento.codigo,tipo_pessoa, cnpj_cpf, lote, quadra, loteamento.loteamento,
	   parcelas.cod_parc
	   from cliente inner join parcelas inner join loteamento 
	   where cliente.cod_cliente=parcelas.cliente 
	   and cliente.loteamento=loteamento.codigo and parcelas.bc='N'
	   and vecto_parc>='".$dt_ini."' and vecto_parc<='".$dt_fim."' 
	   and loteamento.codigo=9");
}
	
include("boleto_santander/include/funcoes_santander_banespa.php"); 
   
   	while($row = mysql_fetch_row($sql)){ 
	   	   
	   $jurosm = $row[10]; $lot = $row[11];
	   $tipo_pessoa = $row[12]; $cpf = $row[13];
	   $nome_sacado = $row[0];
	   $lote = $row[14]; $quadra = $row[15]; $lot = Iniciais($row[16]);
	   $cod_parc = $row[17];


	   
	   if($lot == 'vsm'){
		   $lot = 'sm';
		   }
		   $lot = strtoupper($lot);
		   
		   $cod_controle = 'L-'.$lote.' Q-'.$quadra.' '.$lot;
		   
		   $controle = strlen($cod_controle);
           
		   $controle = 25-$controle;
		   
		   $esp = '';
			
		    for($i = 1; $i<=$controle; $i++){
				$esp .= ' ';
			}
		   	
			$cod_controle  =  $cod_controle.$esp;	
	
	 //row[9] = parcelas.codigo
       $endereco = $row[1]; $bairro = $row[2]; $cep = implode('',explode('-',$row[5]));
	   $cidade = $row[3]; $estado = $row[4];	 
		 
	 $data_venc   = implode("/",array_reverse(explode('-',$row[6])));
	 $taxa_boleto = $row[7]; $valor_boleto = $row[8];
	      
		 $valor_multa = number_format(0.02*$valor_boleto,2,',','.');
		 $jurosd = number_format((($jurosm/30)/100)*$valor_boleto,2,',','.');
		 
	 if($lot == 10){
        $dadosboleto["codigo_cliente"] = "1649850"; // Código do Cliente (PSK) (Somente 7 digitos)
        $dadosboleto["ponto_venda"]    = "0065-130031971"; // Ponto de Venda = Agencia
 	 } else{
 		 $dadosboleto["codigo_cliente"] = "2120143"; // Código do Cliente (PSK) (Somente 7 digitos)
         $dadosboleto["ponto_venda"]    = "0065-130034345"; // Ponto de Venda = Agencia
		 }
		  
	 // NÃO ALTERAR!
     
	
	//REGISTRO MOVIMENTO
	$insc_cedente = "02";
	$cnpj_cedente = "48992424000106";
	
	 if($lot == 10){
        $cod_agencia = "0065"; // Código do Cliente (PSK) (Somente 7 digitos)
        $conta_movimento = "002120143"; // Ponto de Venda = Agencia
 	 } else{
 		 $cod_agencia = "0065"; // Código do Cliente (PSK) (Somente 7 digitos)
         $conta_movimento  = "1649850 "; // Ponto de Venda = Agencia
		 }
	$conta_cobranca = "00000000";	 
		
	$nosso_numero = "00000000"; $dt_seg_desconto = "000000";
	 
	$multa = "0200"; $valor_outra_un = "0000000000000";
	$dt_cobranca_multa = "000000"; 	$codigo_carteira = 1;
	$cod_ocorrencia = "01";

	$dt_venc = explode("/",$data_venc);
	$dt_venc[2] = substr($dt_venc[2],2,2);
	$dt_venc = $dt_venc[0].$dt_venc[1].$dt_venc[2];
	
	  $vl_boleto = explode(".",$valor_boleto);
       
        $tam_bol = strlen($vl_boleto[0]);
				
		  $tam_bol = 11-$tam_bol;
		    
			$esp = '';
			
		    for($i = 1; $i<=$tam_bol; $i++){
				$esp .= '0';
			}		
		
		$vl_titulo  =  $esp.$vl_boleto[0];	$vl_titulo .=  $vl_boleto[1].$esp2;
        
		$banco_cobrador ='033'; $agencia_cobradora = "00000"; $especie_documento = "01";
		$tipo_aceite = "N"; $dt_emissao = date("dmy");
		$primeira_instrucao = "00"; 
		//$segunda_instrucao = "00";
		
		$segunda_instrucao = "00";
		
		$jurosd = implode("",explode(".",$jurosd));
		$jd = explode(",",$jurosd);
		
		$tam_jd = strlen($jd[0]);
		 $tam_jd = 11-$tam_jd;
		    
			$esp3 = '';
			
		    for($i = 1; $i<=$tam_jd; $i++){
				$esp3 .= '0';
			} 
		
		  $jd[0] = $esp3.$jd[0]; $juros_d = $jd[0].$jd[1];
		 
		  $dt_limite_desconto = "000000"; $vl_desconto = "0000000000000";
		  $valor_iof = "0000000000000"; $vl_abatimento = "0000000000000";
		  
		  if($tipo_pessoa == 'fisica'){ $insc_sacado = "01";}
		  if($tipo_pessoa == 'juridica'){$insc_sacado = "02";}
		  
		  $cpf_sacado = implode("",explode(".",$cpf));
		  $cpf_sacado = implode("",explode("-",$cpf_sacado));
		
		  if($tipo_pessoa == 'fisica'){
			  $cpf_sacado = '000'.$cpf_sacado;
			  } 
		    $tam_sac = 40 - strlen($nome_sacado);

		    
			$esp4 = '';
			
		    for($i = 1; $i<=$tam_sac; $i++){
				$esp4 .= ' ';
			}
		    
		   $nome_sacado =  $nome_sacado.$esp4;
		   
		    $tam_end = 40 - strlen($endereco);
			
			$esp5 = '';
			for($i = 1; $i<=$tam_end; $i++){
				$esp5 .= ' ';
				} 
		     $endereco = $endereco.$esp5;
			 
			 $tam_bairro = 12 - strlen($bairro);
			 $esp6 = '';
			 for($i=1;$i<=$tam_bairro;$i++){
				 $esp6 .= ' ';
				 } 
		     $bairro = $bairro.$esp6;
			 
			 $tam_cid = 15 - strlen($cidade);
			 $esp7 = '';
			 for($i=1;$i<=$tam_cid;$i++){
				 $esp7 .= ' ';
				 }
		     $cidade = $cidade.$esp7;
			
			 $ident_conta_cobranca = 'I';
			 
			 if($conta==1){
			  $compl_conta_cobranca = '71';	 
				 }
              if($conta==2){
    			 $compl_conta_cobranca = '45';
				  }
			
			 $dias_protesto = '00';
			 
			 
		
		$num_seq = $numero_registro+1;
		$tam_num_seq = 6 - strlen($num_seq);
		$esp8 = '';
		for($i=1;$i<=$tam_num_seq;$i++){
			$esp8 .= '0';
			}	
			
		$num_seq = $esp8.$num_seq;
		//echo $num_seq.'<br>';
		
		
		  $cod_parc = $row[17];
		 

		   
		   $s_numero = strlen($cod_parc);
           
		   $s_numero = 10-$s_numero;
		   
		   $esp = '';
			
		    for($i = 1; $i<=$s_numero; $i++){
				$esp .= ' ';
			}
		   	
			$seu_numero  =  $cod_parc.$esp;
   
	$linha2  = 1;
	$linha2 .= $insc_cedente;
	$linha2 .= $cnpj_cedente;
	//$linha2 .= $cod_agencia;
	//$linha2 .= $conta_movimento;
	//$linha2 .= $conta_cobranca;
	$linha2 .= $codigo_transmissao;
	$linha2 .= $cod_controle;
	$linha2 .= $nosso_numero;
	$linha2 .= $dt_seg_desconto;
	$linha2 .= " ";
	$linha2 .= "4";
	$linha2 .= $multa;
	$linha2 .= "00";
	$linha2 .= $valor_outra_un;
	$linha2 .= "    ";
	$linha2 .= $dt_cobranca_multa;
	$linha2 .= $codigo_carteira;
	$linha2 .= $cod_ocorrencia;
	$linha2 .= $seu_numero;
	$linha2 .= $dt_venc;
	$linha2 .= $vl_titulo;
	$linha2 .= $banco_cobrador;
	$linha2 .= $agencia_cobradora;
	$linha2 .= $especie_documento; 
	$linha2 .= $tipo_aceite;
	$linha2 .= $dt_emissao;
	$linha2 .= $primeira_instrucao;
	$linha2 .= $segunda_instrucao;
	$linha2 .= $juros_d;
	$linha2 .= $dt_limite_desconto;
	$linha2 .= $vl_desconto;
	$linha2 .= $valor_iof;
	$linha2 .= $vl_abatimento;
	$linha2 .= $insc_sacado;
	$linha2 .= $cpf_sacado;
	$linha2 .= $nome_sacado;
	$linha2 .= $endereco;
	$linha2 .= $bairro;
	$linha2 .= $cep;
	$linha2 .= $cidade;
	$linha2 .= $estado;
	$linha2 .= '                               ';
	$linha2 .= $ident_conta_cobranca;
	$linha2 .= $compl_conta_cobranca;
	$linha2 .= '      ';
	$linha2 .= $dias_protesto;
	$linha2 .= ' ';
	$linha2 .= $num_seq;	
	$linha2 .= "\r\n";
 	echo $linha2;
    
	$numero_registro++; 
	$num_seq = $numero_registro+1;
		$tam_num_seq = 6 - strlen($num_seq);
		$esp8 = '';
		for($i=1;$i<=$tam_num_seq;$i++){
			$esp8 .= '0';
			}	
		$num_seq = $esp8.$num_seq;
	 
	$linha4 = '2';
	$esp9 = '';
		for($i=1;$i<=16;$i++){
			$esp9 .= ' ';
			}	
	$linha4 .= $esp9; 
	$linha4 .= $codigo_transmissao;
	$esp10 = '';
		for($i=1;$i<=10;$i++){
			$esp10 .= ' ';
			}	
	$linha4 .= $esp10;
	$linha4 .= '01';
	$msg  = 'Valor dos juros: R$'.number_format((($jurosm/30)/100)*$valor_boleto,2,'.','');
	$msgT = strlen($msg);
	$msgT = 50 - $msgT;
	$espX = '';
	for($i=1;$i<=$msgT;$i++){
			$espX .= ' ';
			}	
	
	$msg = $msg.$espX;
	$linha4 .= $msg;	
	$brancos = '';
	for($x=1;$x<=283;$x++){
		   $brancos .= ' ';
		   } 
	$linha4 .= $brancos; 
	$linha4 .= $ident_conta_cobranca;
	$linha4 .= $compl_conta_cobranca; 
	$esp11 = '';
		for($i=1;$i<=9;$i++){
			$esp11 .= ' ';
			}	
	$linha4 .= $esp11;
	$linha4 .= $num_seq;
	$linha4 .= "\r\n";
    echo $linha4;
	
	if($_GET['prot']=='s'){
		
		$numero_registro++; 
	$num_seq = $numero_registro+1;
		$tam_num_seq = 6 - strlen($num_seq);
		$esp8 = '';
		for($i=1;$i<=$tam_num_seq;$i++){
			$esp8 .= '0';
			}	
		$num_seq = $esp8.$num_seq;
	 
	$linha4 = '2';
	$esp9 = '';
		for($i=1;$i<=16;$i++){
			$esp9 .= ' ';
			}	
	$linha4 .= $esp9; 
	$linha4 .= $codigo_transmissao;
	$esp10 = '';
		for($i=1;$i<=10;$i++){
			$esp10 .= ' ';
			}	
	$linha4 .= $esp10;
	$linha4 .= '01';
	$msg  = 'SUJEITO A PROTESTO APÓS 5 DIAS DO VENCIMENTO';
	$msgT = strlen($msg);
	$msgT = 50 - $msgT;
	$espX = '';
	for($i=1;$i<=$msgT;$i++){
			$espX .= ' ';
			}	
	
	$msg = $msg.$espX;
	$linha4 .= $msg;	
	$brancos = '';
	for($x=1;$x<=283;$x++){
		   $brancos .= ' ';
		   } 
	$linha4 .= $brancos; 
	$linha4 .= $ident_conta_cobranca;
	$linha4 .= $compl_conta_cobranca; 
	$esp11 = '';
		for($i=1;$i<=9;$i++){
			$esp11 .= ' ';
			}	
	$linha4 .= $esp11;
	$linha4 .= $num_seq;
	$linha4 .= "\r\n";
    echo $linha4;
		
		
		}
	
   	 $numero_registro++; 
	 
	 $vl_total += $valor_boleto;
	 
	}
	 
	 
	$qtde_linhas = $numero_registro+1;
	$tam_linhas = 6 - strlen($qtde_linhas);
	$esp9 = '';
	for($i=1;$i<=$tam_linhas;$i++){
		$esp9 .= '0';
		}
	$qtde_linhas = $esp9.$qtde_linhas;
	
	// echo number_format($vl_total,2,',','.').'<br>';
	 $valor_total = explode(".",$vl_total);
	   
        $tam_total = 11 - strlen($valor_total[0]);
			$esp10 = '';
			
		    for($i = 1; $i<=$tam_total; $i++){
				$esp10 .= '0';
			}		
			  
		  $valor_total[0] = $esp10.$valor_total[0];
		  $valorTotal = $valor_total[0].$valor_total[1];		     		    	      		
	   for($i=1;$i<=374;$i++){
		   $zeros .= '0';
		   }
	
	
	$linha3 = '9';
	$linha3 .= $qtde_linhas;
	$linha3 .= $valorTotal;
    $linha3 .= $x;
	$linha3 .= $qtde_linhas; 
    echo $linha3;
	
	
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas ai, vc não está usando o str_pad

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu usei o str_pad e também não foi

olha, desculpa a mudança de foco, mas tem como ser problema no servidor deles? Por que até escrevendo mesmo os 374 zeros, sem uso de for, str_pad, etc... ainda fica errado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como assim "fica errado"?

 

Não faz muito sentido ser no servidor o erro.(gerar números a menos)

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.