Ver Mensaje Individual
  #5 (permalink)  
Antiguo 06/11/2008, 10:34
Avatar de Lenin_Germaine
Lenin_Germaine
 
Fecha de Ingreso: junio-2007
Ubicación: Monterrey, Nuevo León
Mensajes: 82
Antigüedad: 16 años, 10 meses
Puntos: 0
pues aqui está el código completito que ahora si me funciona y q me calcula muy bei las fechas, y no critiquen que salí solito del apuro pero muy cansado de tanto pensar porque me entretuve en pensar si el php estaba trabajando mal, que si no codificaba bien y bueno porque programaba en php si soy novatisimo en esto pero bueno hice mi luchita y aqui está para algun otro novato q ocupe una rutina q le calcule estas cosas:

Código php:
Ver original
  1. $conexion=mysql_connect("localhost","user","pass"")
  2.     or die("Problemas en la conexion");
  3.     mysql_select_db("base_de_datos",$conexion
  4.     or die("Problemas en la seleccion de la base de datos");
  5.    
  6. $venc = $ano."-".$mes."-".$dia;
  7.  
  8. for($cont=1;;$cont++)
  9.     {
  10.         if($cont>$pagos)
  11.          {
  12.              break;
  13.          }
  14.         else
  15.         {                    
  16.             $numero = $cont."/".$pagos;
  17.             $ad = "AD ".$numero;             
  18.              mysql_query("insert into detalledocumentos(IdContrato, Vencimiento, Clave, Concepto, Numero, Capital, Intereses, Importe)
  19.              values($idcontrato,'$venc', '4MEN1', '$ad', '$numero', $capital, $intereses, $importe)",$conexion)
  20.              or die("Problemas en el select, NO SE INSERTARON LOS REGISTROS".mysql_error());
  21.              
  22.              if($dia>27)
  23.                { if($dia<30)
  24.                     {
  25.                       $dia=30;
  26.                     }
  27.                 }
  28.              
  29.              $mes=$mes+1;                       //incrementa el mes      
  30.              if($mes>12)
  31.              { $mes=1;
  32.                $ano=$ano+1; }                   //si el mes es 13 se regresa a Enero
  33.              if($mes>1)
  34.              {  
  35.                 if($mes<3)
  36.                 {
  37.                             if ($ano%4!=0)
  38.                                $bis=0;
  39.                             else
  40.                                if ($ano%400==0)
  41.                                    $bis=1;
  42.                             else
  43.                                if ($ano%100==0)
  44.                                    $bis=0;
  45.                              else
  46.                                 $bis=1;              
  47.                  }
  48.              }         
  49.              if($bis==1 && ($mes>1 && $mes<3)) {$dia=29; }
  50.              if($bis==0 && ($mes>1 && $mes<3)) {$dia=28; }
  51.                      
  52.             $venc = $ano."-".$mes."-".$dia;          
  53.         }
  54.                    
  55.     }
  56. mysql_close($conexion);
  57. echo "ya se realizo la insercion de mensualidades";

Lo que hace basicamente es meter en una tablita registros mientras que $cont no sea mayor que $pagos de los cuales se genera la fecha de incremento en meses con sus dias respetando si es bisiesto o no y es todo, quiza sencillo para muchos compañeros pero ahi está.

Por cierto Agradezco muchisimo a mis compañeros que siempre están ayudando a este novato del php ya que sin su ayuda estaría en las sombras ahora, gracias por iluminarme a todos.

Última edición por GatorV; 06/11/2008 a las 16:46