![Antiguo](http://static.forosdelweb.com/fdwtheme/images/statusicon/post_old.gif)
01/08/2008, 03:37
|
![Avatar de desendoll](http://static.forosdelweb.com/customavatars/avatar236663_2.gif) | | | Fecha de Ingreso: mayo-2008
Mensajes: 340
Antigüedad: 16 años, 9 meses Puntos: 3 | |
Respuesta: actualizar BD según la fecha Marvin, estas en paro?¿ xD Cita:
Iniciado por Marvin Tendrias que hacer algo como: Código PHP: //CURDATE() = año-mes-dia
$sql = "SELECT id_alumno, alumno_nombre, alumno_apellidos
FROM alumno
WHERE CONCAT(fechafinal_anio,'-',fechafinal_mes,'-',fechafinal_dia) = CURDATE()";
$result = mysql_query($sql);
$i = 0;
while($data = mysql_fetch_array($result)){
$listadoFFAlumnos[$i]['id_alumno'] = $data['id_alumno'];
$listadoFFAlumnos[$i]['alumno_nombre'] = $data['alumno_nombre'];
$listadoFFAlumnos[$i]['alumno_apellidos'] = $data['alumno_apellidos'];
//agregamos dos datos para saber si se actualizo o no
$listadoFFAlumnos[$i]['ok'] = 0;
$listadoFFAlumnos[$i]['error'] = 0;
$i++;
}
//contadores
$i = 0;
$j = 0;
//numero de elementos en $listadoFFAlumnos
$num = count($listadoFFAlumnos);
//archivo para crear log
$archivo = fopen("log.txt","a") or die("Problemas en la creacion");
$fecha = date("d-m-Y H:i:s");
//Primera linea para diferenciar de otro dia
fputs($archivo, "Log dia: [".$fecha."]=============================\r\n");
//hacemos el update
for($a=0;$a<$num;$a++){
$sqU = "UPDATE alumno
SET fechafinal_flag = 0
WHERE id_alumno = ".$listadoFFAlumnos[$a]['id_alumno'];
//para saber si se ejecuto
if(mysql_query($sql)){
//agregamos que ha tenido exito
$listadoFFAlumnos[$a]['ok'] = 1;
//contador de cambios exitosos
$i++;
}else{
//agregamos que ha fallado
$listadoFFAlumnos[$a]['error'] = 1;
//contador de cambios fallidos por si quieres agregar mas info
$j++;
}
}
fputs($archivo, "Se han actualizado ".$i." de ".$num." alumnos");
fputs($archivo, "Detalle de actualizaciones:\r\n");
//recorremos $listadoFFAlumnos para ver su detalle
for($b=0;$b<$num;$b++){
$estado = "Sin informacion";
if($listadoFFAlumnos[$b]['ok'] == 1){
$estado = "Exitoso";
}elseif($listadoFFAlumnos[$b]['error'] == 1){
$estado = "ERROR";
}
fputs($archivo, $b."- ".$listadoFFAlumnos[$b]['alumno_nombre']." ".$listadoFFAlumnos[$b]['alumno_apellidos']." [".$estado."]\r\n");
}
fputs($archivo, "\r\n=============================Fin Log [".$fecha."]\r\n\r\n");
fclose($archivo);
No esta testeado pero te puede abrir una luz con respecto a lo que quieres hacer.
Suerte! ![de acuerdo](http://static.forosdelweb.com/fdwtheme/images/smilies/dedosarriba.png) |