Foros del Web » Programando para Internet » PHP »

procesos batch en php

Estas en el tema de procesos batch en php en el foro de PHP en Foros del Web. hola amigo quiciera saber como hacer un proceso batch php en una maquina linux el archivo quiero que se ejecute cada 30 minutos y este ...
  #1 (permalink)  
Antiguo 01/06/2011, 14:44
Avatar de ronnyra  
Fecha de Ingreso: diciembre-2009
Mensajes: 173
Antigüedad: 14 años, 4 meses
Puntos: 1
procesos batch en php

hola amigo quiciera saber como hacer un proceso batch php en una maquina linux
el archivo quiero que se ejecute cada 30 minutos y este trazas_ex.php:

Código PHP:
<?php 
require_once('include/mysql_classIB.php');
require_once(
'include/mysql_class.php');
require_once(
'include/myclass_Fomp.php');
require_once(
'controlador_trazas_ex.php');

$pid_ope$_GET[id_ope];
$pdo $_GET[tdo];

            
//**********************************************************
            //*******CONSULTA LAS TRAZAS QUE SEAN DE IB EN SCD**********
            //**********************************************************
            
$sql="SELECT * FROM proc_traza a LEFT JOIN traza b ON b.tra_codigo = a.id_traza LEFT JOIN tra_ope c ON c.cod_traz = a.id_traza
            WHERE id_operacion = '$pid_ope' AND DO = '$pdo' AND c.tra_aplicati = 'IB'"
;
            
//echo $sql.'<br />';
            
$micon->consulta($sql);                
            while(
$datos $micon->campoconsultaA()){                
                
$id_traza=$datos[id_traza];
                
//****************************************************
                //*****RECORRE LOS REGISTROS DE IB Y LOS COMPARA******
                //****************************************************
                
$sql="SELECT ".$datos[campo]." as dato FROM ".$datos[tabla]." WHERE numero_do = '$_GET[cod_tramite]' ";
                
//echo $sql.'<br />';
                
$bicon->consulta_IB($sql);            
                
$rowim=$bicon->campoconsultaA_IB();
                
//echo $rowim[dato];
                //****************************************************
                //*****ACTUALIZA LAS VALIDACIONES DE LAS TRAZAS*******
                //****************************************************
                
$sql="UPDATE t_pro_traza SET valor='OK' WHERE  do='$pdo' AND id_traza='$id_traza'    AND id_operacion='$pid_ope'";
                
//echo $sql.'<br />';
                
$micon2->consulta($sql);
                
//****************************************************
                //*******ACTUALIZA LA TRAZA CON EL VALOR DE IB********
                //****************************************************    
                
$sql ="UPDATE proc_traza SET fechaini ='".$rowim[dato]."' WHERE do ='$pdo' AND id_operacion ='$pid_ope'
                AND    id_traza= '$id_traza'"
;
                
//echo $sql.'<br />';    
                
$micon2->consulta($sql);
            }
//fin del while ib
            
            
            //**********************************************************
            //*******CONSULTA LAS TRAZAS QUE SEAN DE FP EN SCD**********
            //**********************************************************
            
$sql="SELECT * FROM proc_traza a LEFT JOIN traza b ON b.tra_codigo = a.id_traza LEFT JOIN tra_ope c ON c.cod_traz = a.id_traza
            WHERE id_operacion = '$pid_ope' AND DO = '$pdo' AND c.tra_aplicati = 'FP'"
;
            
//echo $sql.'<br />';
            
$micon->consulta($sql);                
            while(
$datos $micon->campoconsultaA()){                
                
$id_traza=$datos[id_traza];
                
//****************************************************
                //*****RECORRE LOS REGISTROS DE FP Y LOS COMPARA******
                //****************************************************
                
$sql="SELECT ".$datos[campo]." as dato FROM ".$datos[tabla]." WHERE numero_do = '$_GET[cod_tramite]' ";
                
//echo $sql.'<br />';
                
$fpcon->consulta_Fp($sql);            
                
$rowim=$fpcon->campoconsulta_FpA();
                
//echo $rowim[dato];
                //****************************************************
                //*****ACTUALIZA LAS VALIDACIONES DE LAS TRAZAS*******
                //****************************************************
                
$sql="UPDATE t_pro_traza SET valor='OK' WHERE  do='$pdo' AND id_traza='$id_traza'    AND id_operacion='$pid_ope'";
                
//echo $sql.'<br />';
                
$micon2->consulta($sql);
                
//****************************************************
                //*******ACTUALIZA LA TRAZA CON EL VALOR DE FP********
                //****************************************************    
                
$sql ="UPDATE proc_traza SET fechaini ='".$rowim[dato]."' WHERE do ='$pdo' AND id_operacion ='$pid_ope'
                AND    id_traza= '$id_traza'"
;
                
//echo $sql.'<br />';    
                
$micon2->consulta($sql);
            }
//fin del while ib
            
            //***************************************************
            //************FUNCION AVANZA TRAMITE*****************
            //***************************************************
            
$xtra=avanza_tramite($pid_ope$pdo);
            
if(
$xtra=='A'){
header("location:view_trazabi.php?id_ope=$_GET[id_ope]&tdo=$_GET[tdo]&nit=$_GET[nit]&tra_codigo=$_GET[tra_codigo]&cod_tramite=$_GET[cod_tramite]&estado=$_GET[estado]");
}else{
echo 
"<script type='text/javascript' language='javascript'>alert('El tramite se ha cerrado exitosamente'); self.close(); window.opener.location.reload();</script>";
}
?>
ya todo en el servidor esta configurado solo tengo que hacer el CRON , este archivo recive dos variables como lo haria??
les agradeceria su ayuda he estado buscando pero me estoy enredando cada vez mas
  #2 (permalink)  
Antiguo 01/06/2011, 14:53
Avatar de skiper0125  
Fecha de Ingreso: octubre-2010
Ubicación: $this->Mexico('Toluca');
Mensajes: 1.127
Antigüedad: 13 años, 6 meses
Puntos: 511
Respuesta: procesos batch en php

MM.......

Al parecer ese proceso que deseas hacer no es posible, ya que debes de tomar en cuenta que para que una aplicacion php funcione debes de accesar a ella por medio del compilador (navegador).

Código PHP:
Ver original
  1. echo "<head><meta http-equiv='refresh' content='2; url=tupagina.php'></head>";

pero debes de tomar en cuenta que debes de tener la pagina abierta necesariamente para que realice tu proceso.


Saludos
__________________
Recuerda que estamos aquí para orientarte, y no para hacer tu trabajo.
Si mi aporte fue de ayuda, recuerda que agradecer no cuesta nada +1

Skiper0125
  #3 (permalink)  
Antiguo 01/06/2011, 15:05
Avatar de ronnyra  
Fecha de Ingreso: diciembre-2009
Mensajes: 173
Antigüedad: 14 años, 4 meses
Puntos: 1
Respuesta: procesos batch en php

ok... no entendi...
  #4 (permalink)  
Antiguo 01/06/2011, 15:12
 
Fecha de Ingreso: enero-2011
Ubicación: DF
Mensajes: 898
Antigüedad: 13 años, 3 meses
Puntos: 155
Respuesta: procesos batch en php

echale una ojeada a esto pa que veas como es el pex

http://www.php.net/manual/es/feature...line.usage.php

nadamas que el estilo de programacion standalone no requiere html sino simplemente los procesos , por lo cual ponerle un javascsript o un header que direccione nomas , no va
__________________
No me interesan ni las gracias ni los karmas , pero si que se genere conocimiento, si se dio con la respuesta por favor confirmalo
  #5 (permalink)  
Antiguo 01/06/2011, 15:16
Avatar de ronnyra  
Fecha de Ingreso: diciembre-2009
Mensajes: 173
Antigüedad: 14 años, 4 meses
Puntos: 1
Respuesta: procesos batch en php

gracias por contestar yo por lo que he investigado he echo esto..:

0,15,30,45 * /home/wmmerco/www/merco.com.co/mlg/traza_ex.php

que segun esto ejecutaria ese archivo cada 15 minutos
  #6 (permalink)  
Antiguo 01/06/2011, 15:22
 
Fecha de Ingreso: mayo-2011
Ubicación: Cancun
Mensajes: 9
Antigüedad: 12 años, 10 meses
Puntos: 1
Respuesta: procesos batch en php

pero como mencionan arriba, el proceso cron esta bien, pero acuerdate que las instrucciones de php las debe interpretar el navegador en tiempo de ejecucion aunque el codigo este del lado del server, me pregunto cron intenta lanzar el archivo pero que cosa o ente lo ejecuta????
  #7 (permalink)  
Antiguo 01/06/2011, 15:32
Avatar de ronnyra  
Fecha de Ingreso: diciembre-2009
Mensajes: 173
Antigüedad: 14 años, 4 meses
Puntos: 1
Respuesta: procesos batch en php

ok... ya he pillado osea que ahi lo estoy abriendo pero no ejecutando???, si es asi como lo ejecutaria???
  #8 (permalink)  
Antiguo 01/06/2011, 15:44
 
Fecha de Ingreso: enero-2011
Ubicación: DF
Mensajes: 898
Antigüedad: 13 años, 3 meses
Puntos: 155
Respuesta: procesos batch en php

pues ni una ni otra carnal , mira si quieres que un crontab te ejecute un php que esta en un server por web


seria algo asi

http://www.desarrolloweb.com/articul...cron-wget.html


si quieres que se ejecute un php que corre en bajo linea de comandos , se utiliza la CLI de php

precisamente la otra liga que ya te deje

http://www.php.net/manual/es/feature...line.usage.php <----revisa el ejemplo uno
__________________
No me interesan ni las gracias ni los karmas , pero si que se genere conocimiento, si se dio con la respuesta por favor confirmalo
  #9 (permalink)  
Antiguo 01/06/2011, 15:45
Avatar de ronnyra  
Fecha de Ingreso: diciembre-2009
Mensajes: 173
Antigüedad: 14 años, 4 meses
Puntos: 1
Respuesta: procesos batch en php

ok... seguire probando pero queda claro de que si se puede hacer lo que quiero???
  #10 (permalink)  
Antiguo 01/06/2011, 15:47
 
Fecha de Ingreso: enero-2011
Ubicación: DF
Mensajes: 898
Antigüedad: 13 años, 3 meses
Puntos: 155
Respuesta: procesos batch en php

Cita:
Iniciado por ronnyra Ver Mensaje
ok... seguire probando pero queda claro de que si se puede hacer lo que quiero???
sawebbbbb !!! que se puede
__________________
No me interesan ni las gracias ni los karmas , pero si que se genere conocimiento, si se dio con la respuesta por favor confirmalo

Etiquetas: batch, procesos
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 21:12.