Hola a todos amigos haber primero quiero agradecer a Gator V por aguantar mis problemas jajajja!!!
es muy buen amigo y segundo quiero que me ayuden con este script lo que hace es sumar o restar fechas pues me lo encontré en una web pues el script si funciona perfectamente lo que pasa es que lo que necesito es que la fecha con la que la función vaya a trabajar sea la que se encuentra en el campo fecha osea que tome esa fecha y le sume los días que se le programe por ejemplo este script le suma a la fecha 60 días ok!!!
-----------------------------
PROBLEMA--------------------------
Bueno chicos este es el script:
Código PHP:
<?php function suma_fechas($fecha,$ndias)
{
if (preg_match("/[0-9]{1,2}\/[0-9]{1,2}\/([0-9][0-9]){1,2}/",$fecha))
list($año,$mes,$dia)=split("/", $fecha);
if (preg_match("/[0-9]{1,2}-[0-9]{1,2}-([0-9][0-9]){1,2}/",$fecha))
list($dia,$mes,$año)=split("-",$fecha);
$nueva = mktime(0,0,0, $mes,$dia,$año) + $ndias * 24 * 60 * 60;
$nuevafecha=date("Y-m-d",$nueva);
return ($nuevafecha);
}
echo '<head>
<title>'.$_SERVER[PHP_SELF].'</title>
</head>
<html>
<body>';
//aqui es donde quiero llamar a la fecha para después sumarle los Días
$date= mysql_query ("SELECT fecha1 FROM donantes WHERE id='$id'", $conex) or die( mysql_error() );
$row2 = mysql_fetch_row( $date );
$f11=suma_fechas($row2[0], 60); // aquí le sumo a la fecha 60 días
echo "<br><br>$row2[0] más 60 días es $f11<br>";
echo "<a href=$_SERVER[PHP_SELF]>Recargar la Página</a>";
echo '</body>
</html>';
mysql_close($conex);
?>
pero el resultado que me da es este:
2008-03-05 más 60 días es 2010-10-28
no me funciona..
tendría que dar
2008-03-05 más 60 es 04-05-2008
-------------------------------
ESTE ES EL SCRIPT ORIGINAL QUE ENCONTRÉ ---------------------------
Este otro script suma bien pero se daña cuando hago el cambio de arriba no se porque
..
QUIERO SABER QUE PASA?
POR FAVOR ALGUIEN ME ECHE UNA MANO GRACIAS
Código PHP:
<?php
function suma_fechas($fecha,$ndias)
{
if (preg_match("/[0-9]{1,2}\/[0-9]{1,2}\/([0-9][0-9]){1,2}/",$fecha))
list($dia,$mes,$año)=split("/", $fecha);
if (preg_match("/[0-9]{1,2}-[0-9]{1,2}-([0-9][0-9]){1,2}/",$fecha))
list($dia,$mes,$año)=split("-",$fecha);
$nueva = mktime(0,0,0, $mes,$dia,$año) + $ndias * 24 * 60 * 60;
$nuevafecha=date("d-m-Y",$nueva);
return ($nuevafecha);
}
echo '<head>
<title>'.$_SERVER[PHP_SELF].'</title>
</head>
<html>
<body>';
$f1="05/03/2008"; /* Cuando cambiamos esto por la variable se daña debe pasar algo */
/* $f2="30-01-1992"; */
$f11=suma_fechas($f1, 60);
echo "$f1 más 60 es $f11<br>";
/* $f11=suma_fechas($f1, -40);
echo "$f1 menos 60 es $f11<br>";
$f21=suma_fechas($f2, 365);
echo "$f2 más 365 es $f21<br>";
$f21=suma_fechas($f2, -365);
echo "$f2 menos 365 es $f21<br>";
*/
echo "<a href=$_SERVER[PHP_SELF]>Recargar la Página</a>";
echo '</body>
</html>';
?>