Foros del Web » Programando para Internet » PHP »

Aporte de script

Estas en el tema de Aporte de script en el foro de PHP en Foros del Web. Lo prometido es deuda... Inicialmente efectue una consulta en el foro para ver si alguien podia darme una mano .... Gracias Claudio_Vega y todo los ...
  #1 (permalink)  
Antiguo 10/03/2006, 09:38
 
Fecha de Ingreso: diciembre-2005
Mensajes: 19
Antigüedad: 12 años
Puntos: 0
Aporte de script

Lo prometido es deuda...
Inicialmente efectue una consulta en el foro para ver si alguien podia darme una mano .... Gracias Claudio_Vega y todo los participantes del Foro...

Este es un 'script' para efectuar el calculo de dias, dado un dia inicial (el Actual o no) y un intervalo de tiempo, con 'UPDATE' del valor obtenido en DB...

espero que sea util a alguien

Código PHP:
// Apache 2.0.5 + PHP 5.0.0 + Mysql 5.0.18-nt-max sobre un Win2000 [NT 5.0]
// calculo de dias dado un dia inicial (el Actual o no) y un intervalo de tiempo
// con 'UPDATE' del valor obtenido en DB
// se sigue un 'parametro' de relacion - son siete los dias de la semana
// donde domingo == 0 y sabado == 6
// 0 ... 7 = 5 dias.
// 0 ... 14 = 10 dias.
// 0 ... 21 = 15 dias.
// 0 ... 28 = 20 dias.
// 0 ... 35 = 25 dias.
// 0 ... 42 = 30 dias.
// 0 ... 63 = 45 dias.
// 0 ... 84 = 60 dias.

//Defino variables
// En realidad las podes recibir de un formulario o URL
// por comodidad las defino aca...
$el_dato "el_dato";
$desde_cuando 0;
$intervalo 84;

// Se definen las expresiones y algo mas ... estudienlo un poco...
for ($i=0;$i<$intervalo;$i++)
{
$salto=$i+$desde_cuando;
$evaluodia mktime(strftime ("%d/%m/%Y"strtotime("+$salto days")));
$eldia strftime("%A"strtotime("+$salto days"));
if(
$eldia != "Saturday" and $eldia != "Sunday")
{
$dias $desde_cuando+$i;
$los_dias[$j] = strftime("%Y-%m-%d %H:%M:%S"strtotime("+$salto days"));

}
}
// Este 'echo' es para confirmar en pantalla el dato obtenido.
echo "Resultado: {$los_dias[$j]}\n";
// Para utilizar sin base de datos borra todas las lineas que siguen...
// Conexion a DB...
// Definis las variables de la conexion...
$servidor "localhost";
$usuario "algo";
$clave "password";
$basedatos "laquequieras";
// conectamos a la DB...
$conn mysql_connect($servidor$usuario$clave) or die(mysql_error());
mysql_select_db($basedatos$conn) or die(mysql_error());
// Hacemos la consulta
$sql "UPDATE tabla_que_quieras SET ult_conf = '{$los_dias[$j]}' WHERE el_dato = '$el_dato'";
$rs mysql_query($sql$conn) or die("Error al grabar un Informe: ".mysql_error);
//cerramos el conjunto de resultado y la conexión con la base de datos
mysql_free_result($rs);
mysql_close($conn); 
5 dias de trabajo no se comparan con todo lo aprendido.... un simple aprendiz
  #2 (permalink)  
Antiguo 10/03/2006, 09:53
Avatar de carlosfocus  
Fecha de Ingreso: enero-2006
Ubicación: Venezuela
Mensajes: 823
Antigüedad: 11 años, 11 meses
Puntos: 0
Especifica despues de Aporte de Script: NOMBRE O TITULO DEL SCRIPT :d
__________________
Carlos Herrera
Web Developer
www.carlos.com.ve
Para descargar archivos propios a su Teléfono Mobil? www.carlosfocus.com
  #3 (permalink)  
Antiguo 10/03/2006, 13:26
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Por qué no usas SQL para calculo de fechas?

Dentro del SQL própio de Msyql por ejemplo tienes funciones como:

DATEDIFF(expr,expr2)

DATEDIFF() returns the number of days between the start date expr and the end date expr2. expr and expr2 are date or date-and-time expressions. Only the date parts of the values are used in the calculation.

http://dev.mysql.com/doc/refman/5.0/...functions.html

Un saludo,
  #4 (permalink)  
Antiguo 10/03/2006, 16:48
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
Cita:
Especifica despues de Aporte de Script: NOMBRE O TITULO DEL SCRIPT :d
Y el tipo y uso de la variables... "el_dato"??? . No entiendo bien su uso, ni el por qué son necesarias las últimas versiones de los softwares....

Que bueno que lograste tu objetivo... pero en definitiva se puede mejorar por mucho.
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:46.