Ir para conteúdo

Arquivado

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

Kelven

resetar valor de $n

Recommended Posts

Galera preciso que em um for quando o valor de $n chegar a 13 ele começa a conta de novo de 1 olha como to fazendo

:

for ($n = 1; $n <= $limite; $n++) {
		$total = $vencimento + $n;

                if($total > 12)
                 {
                  //aqui teria q resetar para começar a contar de 1 denovo    }


}

como posso fazer isso???

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não pq esse limite é um número de um formulário,

Sim! sua lógica acima provocaria um loop infinito.

Correto seria usar dois laços, um dentro do outro, ao executar a primeira fila do loop executaria o segundo loop dentro desde bloco, até que este fosse executado por completo, voltaria a executar a segunda fila.

$i = 1;

//Bloco 1
do {
	
   //Bloco 2 
   for($j=1; $j<=12; $j++){

      
   }
   
   
   ++$i;

} while ($i <= 12);
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu não estou conseguindo colocar aqui, vou mostrar como to fazendo olha

<?php 

$sql = "SELECT * FROM clientes WHERE id = '$id'";
$query = mysql_query($sql);
$mostrar = mysql_fetch_array($query);

$limite = substr($mostrar["prest_carne"], 3, 5);
$vencimento = substr($mostrar["vencimento_carne"], 3, 5);
$vencimento_dia = substr($mostrar["vencimento_carne"], 0, 3);
?>

  <?php

    for ($n = 1; $n <= $limite; $n++) {
		$total = $vencimento + $n;

	?>
<table><tr><td> <?php echo $vencimento_dia . $total  ;?> </td></tr></table>

<?php }?>

no caso como colocaria esse $i no código??

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu to testando assim e não deu certo olha

<?php 

$sql = "SELECT * FROM clientes WHERE id = '$id'";
$query = mysql_query($sql);
$mostrar = mysql_fetch_array($query);

$limite = substr($mostrar["prest_carne"], 3, 5);
$vencimento = substr($mostrar["vencimento_carne"], 3, 5);
$vencimento_dia = substr($mostrar["vencimento_carne"], 0, 3);
?>

  <?php
$n++;

    for ($n = 1; $n <= $limite; $n++) {
		$total = $vencimento + $n;

	?>
<table><tr><td> <?php echo $vencimento_dia . $total 
if($total > 12){ echo $total;}
  ;?> </td></tr></table>

<?php }?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

fazer com que o carnê gere todos os meses do ano, por exemplo, se eu estiver com 5 parcelas e tiver colocado q estou no mês 11 dai ele vai fazer 5 carnês um para cada mês, ai vai ficar 11, 12, 1, 2, 3, e por ai vai, vou postar aqui todo o código para vcs verem caso queiram ajudar, pq já estou a muito tempo nisso e to pra desistir,

está marcado o lugar onde é pra acontecer a questão dos 12 meses

<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<?php 
include("../conection/conection.php");

$id = $_GET["id"];
$sql = "SELECT * FROM clientes WHERE id = '$id'";
$query = mysql_query($sql);
$mostrar = mysql_fetch_array($query);

$limite = substr($mostrar["prest_carne"], 3, 5);
$vencimento = substr($mostrar["vencimento_carne"], 3, 5);
$vencimento_dia = substr($mostrar["vencimento_carne"], 0, 3);


?>

<table width="100%" border="0" cellspacing="30" cellpadding="3">
  <?php

    for ($n = 1; $n <= $limite; $n++) {
		$total = $vencimento + $n;

	?><tr>
    <td><table width="100%" border="0" cellspacing="0" cellpadding="3">
  <tr>
    <td colspan="3" align="center"><img src="logo2.png"></td>
  </tr>
  <tr>
    <td align="left">Nome</td>
    <td> </td>
    <td> </td>
  </tr>
  <tr>
    <td colspan="3" align="left"><div style="border:solid; border-width:1px; border-color:#000;"> <?php echo $mostrar["nome"];?></div></td>
  </tr>
  <tr>
    <td align="left">Prest.Nº</td>
    <td align="left">Contrato Nº</td>
    <td align="left">Vencimento</td>
  </tr>
  <tr>
    <td align="left"><div style="border:solid; border-width:1px; border-color:#000;"> <?php echo $n . ""; echo "/" . $limite;?></div></td>
    <td align="left"><div style="border:solid; border-width:1px; border-color:#000;"> <?php echo $mostrar["contrato_carne"];?></div></td>
    <td align="left"><div style="border:solid; border-width:1px; border-color:#000;"> <?php echo $vencimento_dia . $total  ;
		if($total <= 13){
			// aqui teria que voltar a contar do mês 1
			}
	
	?></div></td>
  </tr>
  <tr>
    <td align="left">Emissão</td>
    <td align="left">V. Prestação </td>
    <td align="left">Juros ao Dia</td>
  </tr>
  <tr>
    <td align="left"><div style="border:solid; border-width:1px; border-color:#000;"> <?php echo $mostrar["emissao_carne"];?></div></td>
    <td align="left"><div style="border:solid; border-width:1px; border-color:#000;"> <?php echo $mostrar["valor_carne"];?></div></td>
    <td align="left"><div style="border:solid; border-width:1px; border-color:#000;"> <?php echo $mostrar["juros_carne"];?></div></td>
  </tr>
  <tr>
    <td colspan="3"><table width="100%" border="0" cellspacing="0" cellpadding="3">
      <tr>
        <td width="50%" align="left">Código do Cliente</td>
        <td width="50%" align="left">Total</td>
      </tr>
      <tr>
        <td align="left"><div style="border:solid; border-width:1px; border-color:#000;"> <?php echo $mostrar["codigo_carne"];?></div></td>
        <td width="50%" align="left"><div style="border:solid; border-width:1px; border-color:#000;"> <?php echo $mostrar["total_carne"];?></div></td>
      </tr>
    </table></td>
  </tr>
  <tr>
    <td colspan="3">Autenticação</td>
  </tr>
  <tr>
    <td colspan="3"><div style="border:solid; border-width:1px; border-color:#000;"> <?php echo $mostrar["autentica_carne"];?></div></td>
  </tr>
</table></td>




<td><table width="100%" border="0" cellspacing="0" cellpadding="3">
  <tr>
    <td colspan="3" align="center"><img src="logo2.png"></td>
  </tr>
  <tr>
    <td align="left">Nome</td>
    <td> </td>
    <td> </td>
  </tr>
  <tr>
    <td colspan="3" align="left"><div style="border:solid; border-width:1px; border-color:#000;"> <?php echo $mostrar["nome"];?></div></td>
  </tr>
  <tr>
    <td align="left">Prest.Nº</td>
    <td align="left">Contrato Nº</td>
    <td align="left">Vencimento</td>
  </tr>
  <tr>
    <td align="left"><div style="border:solid; border-width:1px; border-color:#000;"> <?php echo $n . ""; echo "/" . $limite;?></div></td>
    <td align="left"><div style="border:solid; border-width:1px; border-color:#000;"> <?php echo $mostrar["contrato_carne"];?></div></td>
    <td align="left"><div style="border:solid; border-width:1px; border-color:#000;"> <?php echo $mostrar["vencimento_carne"];?></div></td>
  </tr>
  <tr>
    <td align="left">Emissão</td>
    <td align="left">V. Prestação </td>
    <td align="left">Juros ao Dia</td>
  </tr>
  <tr>
    <td align="left"><div style="border:solid; border-width:1px; border-color:#000;"> <?php echo $mostrar["emissao_carne"];?></div></td>
    <td align="left"><div style="border:solid; border-width:1px; border-color:#000;"> <?php echo $mostrar["valor_carne"];?></div></td>
    <td align="left"><div style="border:solid; border-width:1px; border-color:#000;"> <?php echo $mostrar["juros_carne"];?></div></td>
  </tr>
  <tr>
    <td colspan="3"><table width="100%" border="0" cellspacing="0" cellpadding="3">
      <tr>
        <td width="50%" align="left">Código do Cliente</td>
        <td width="50%" align="left">Total</td>
      </tr>
      <tr>
        <td align="left"><div style="border:solid; border-width:1px; border-color:#000;"> <?php echo $mostrar["codigo_carne"];?></div></td>
        <td width="50%" align="left"><div style="border:solid; border-width:1px; border-color:#000;"> <?php echo $mostrar["total_carne"];?></div></td>
      </tr>
    </table></td>
  </tr>
  <tr>
    <td colspan="3">Autenticação</td>
  </tr>
  <tr>
    <td colspan="3"><div style="border:solid; border-width:1px; border-color:#000;"> <?php echo $mostrar["autentica_carne"];?></div></td>
  </tr>
</table></td>


  </tr><?php }?>
</table>


Compartilhar este post


Link para o post
Compartilhar em outros sites

to vendo aqui e não sei se tem como eu usar isso,

a lógica q usei foi a seguinte, no formúlario eu digito o número de parcelas que vão ser feitas e a data, ai aqui quando eu gero o restultado, gera um while para mostrar a table com o mesmo número de parcelas q eu digitei, por exemplo se eu tiver digitado 5 parcelas irão aparecer 5 tables, e no mês de vencimento de cada parcela é onde está acontecendo o problema pq ele teria ser diferente em cada parcela

Compartilhar este post


Link para o post
Compartilhar em outros sites

Complica demais para fazer uma pergunta simples. Agora entendi!

<?php

$parcela = 5;
$date = new \DateTime();


//Bloco 2 
for($i=1; $i<=$parcela; $i++){

  echo "Parcela Nº {$i} \n";
  echo "Vencimento : ";
  
  $interval = new \DateInterval("P1M");
  $date->add($interval);
  echo $date->format('Y-m-d') . "\n";


}

https://ideone.com/3WRduK

Parcela Nº 1
Vencimento : 11/10/2016
Parcela Nº 2
Vencimento : 11/11/2016
Parcela Nº 3
Vencimento : 11/12/2016
Parcela Nº 4
Vencimento : 11/01/2017
Parcela Nº 5
Vencimento : 11/02/2017

Senão souber colocar o HTML dentro ae também já é demais.

Compartilhar este post


Link para o post
Compartilhar em outros sites

muito obrigado, quase funcionou tudo ok, só não ta dando certo pq na hora q coloco a variável $date q é data de vencimento pra ser igual a data q está no banco de dados da erro. Como posso fazer essa variável buscar a data do banco de dados??

Compartilhar este post


Link para o post
Compartilhar em outros sites

Entendi uma coisa aqui, tipo parece q tem como eu colocar

$date = new \DateTime("20/01/2016");

mas não tem como eu colocar

$date = new \DateTime($data_banco_dados);

Agora lascou

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tchê, entenda uma coisa, para você aprender algo você tem que ter um embasamento prévio, por exemplo, lógica, algoritmos, tipos permitidos, tipos de datas aceitos e etc... Fica muito claro que a coisa meio que caiu no seu seu colo, pois mesmo te dando exemplos e até o código pronto você não está conseguindo, então vou te dar um conselho, aprenda a ler o manual:

http://php.net/manual/pt_BR/datetime.construct.php

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.