Foros del Web » Programando para Internet » PHP »

Mi script no consulta ni actualiza

Estas en el tema de Mi script no consulta ni actualiza en el foro de PHP en Foros del Web. Hola AMigos de veras apreciaria mucho su ayuda. tengo un progrma en php que procesa correos cuando recibe un correo o mensaje lo guarda en ...
  #1 (permalink)  
Antiguo 23/03/2010, 11:25
 
Fecha de Ingreso: marzo-2010
Mensajes: 140
Antigüedad: 14 años, 1 mes
Puntos: 0
Mi script no consulta ni actualiza

Hola AMigos de veras apreciaria mucho su ayuda.

tengo un progrma en php que procesa correos cuando recibe un correo o mensaje lo guarda en una base de datos donde una tabla tarea lo recibe con la fecha de cuando llego y la fecha cuando debe ser enviado, el script siguiente debe de tomar los mensajes de esa tabla y guardarlos en otra que se llama mensaje_por_enviar de donde otro script lo toma y lo envia y lo borra de mensaje por enviar.

El problema no se porque no consulta y despues actualiza mensaje por enviar, aparentemente todo esta bien.

el script lo tengo que correr con un cron pero no esta haciendo su tarea asi que
para probarlo lo corro desde shell, y me he dado cuenta que no hace la tarea que debe hacer.

Por favor ayudenme a encontrar el problema.

saludos........................


#!/opt/lampp/bin/php
<?php
include('./includes/config.inc.php');
include('encabezado.php');
include('pie.php');



function verificar_pendiente($correo_empresa,$texto_encabez ado,$texto_pie,$now,$maximo){


echo "Inicio tareas propias.";
if (!maximo_tareas_siguientes($maximo)){
$consulta = "SELECT * FROM tarea, usuario WHERE (ADDTIME('$now', '0 00:30:00') >
tarea.fecha_notif) AND (usuario.iduser = tarea.iduser) AND (notificar='eventual') AND
(tarea.estado='pendiente')";
}
else{
$consulta = "SELECT * FROM tarea, usuario WHERE (ADDTIME('$now', '0 01:00:00') >
tarea.fecha_notif) AND (usuario.iduser = tarea.iduser) AND (notificar='eventual') AND
(tarea.estado='pendiente')";

}
$query = mysql_query($consulta);

while($row = @mysql_fetch_assoc($query)){
$msj = $texto_encabezado.$row["tarea"]."\n".$texto_pie_sms;
$sql = "INSERT INTO mensaje_por_enviar(correo,msj,marc,hora) VALUES ('{$row['telefono']}','$msj','$correo_empresa','$now')";
mysql_query($sql);
if (! mysql_error() )
echo "Tarea enviada a {$row['telefono']}<br>";
else
echo "Error al intentar agregar el mensaje en la cola.<br>".mysql_error()."<br>";
$sql = "UPDATE tarea SET estado='realizado' WHERE idtarea=".$row['idtarea'];
mysql_query($sql);
if (! mysql_error() )
echo "Tarea {$row['idtarea']} configurada como realizada.\n";
else
echo "Error al intentar configurar como agregada la tarea {$row['idtarea']}.<br>".mysql_error()."<br>";
}




}
function maximo_tareas_siguientes($maximo){
$consulta_actual = "SELECT * FROM tarea, usuario WHERE (ADDTIME('$now', '0 00:30:00') >
tarea.fecha_notif) AND (usuario.iduser = tarea.iduser) AND (notificar='eventual') AND
(tarea.estado='pendiente')";

$res=mysql_query($consulta_actual);
$cantidad_actual=@mysql_num_rows($res);
$consulta_siguiente = "SELECT * FROM tarea, usuario WHERE (ADDTIME('$now', '0 01:00:00') >
tarea.fecha_notif) AND (usuario.iduser = tarea.iduser) AND (notificar='eventual') AND
(tarea.estado='pendiente')";
$res=mysql_query($consulta_siguiente);
$cantidad_hora=@mysql_num_rows($res);
$cantidad_siguiente=$cantidad_hora-$cantidad_actual;
echo "La cantidad actual es:$cantidad_actual ";

echo "La cantidad siguiente es:$cantidad_siguiente ";
if ($cantidad_siguiente<=$maximo)
return 0;
else
return 1;

}




$veces = date("s");
$time_to_processor = 59;
while (1)
{ $minuto_actual = date("s");
if ($minuto_actual<$veces)
$veces=$minuto_actual;
if (($minuto_actual - $veces)== $time_to_processor) {

$dif= $hora_local - date('0')/100;
$new_time = strtotime($dif." hours");
$now = date("Y-m-d H:i:s", $new_time);
//$now = date("Y-m-d H:i:s");

verificar_pendiente($correo_empresa,$texto_encabez ado,$texto_pie,$now,$maximo);

$veces=$minuto_actual;

//print "$now";

}





}


?>
  #2 (permalink)  
Antiguo 23/03/2010, 12:23
Avatar de rompeguesos  
Fecha de Ingreso: marzo-2009
Mensajes: 692
Antigüedad: 15 años, 1 mes
Puntos: 8
Respuesta: Mi script no consulta ni actualiza

no e mirao el codigo apenas pero asi de primera lo que e visto a sio este fallo que no se si tendra algo que ver
function verificar_pendiente($correo_empresa,$texto_encabez ado,$texto_pie,$now,$maximo){

la variable $texto_encabezado esta mal no? veo una separacion entre la z y la a
  #3 (permalink)  
Antiguo 23/03/2010, 12:58
 
Fecha de Ingreso: marzo-2010
Mensajes: 140
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: Mi script no consulta ni actualiza

Gracias rompehuesos pero no es ahi es un error de cuando lo copie para el foro, lo que pasa es que deberia de hacer la consulta en la base de datos tarea y copiar esa informacion en mensaje_por_enviar
  #4 (permalink)  
Antiguo 24/03/2010, 09:54
 
Fecha de Ingreso: marzo-2010
Mensajes: 140
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: Mi script no consulta ni actualiza

Hola amigos por favor ayudenme, el script lo tengo instalado en un webhosting al script lo llamo con un cron, lo que no entiendo es que segun mi codigo la consulta esta bien, es mas deberia de hacer la consulta, despues esos datos insertarlos en otra tabla que es como una bandeja de salida.

O por favor ayudenme a escribir otro script para evitar estos problemas.........

saludos............
  #5 (permalink)  
Antiguo 24/03/2010, 10:14
 
Fecha de Ingreso: febrero-2010
Mensajes: 818
Antigüedad: 14 años, 2 meses
Puntos: 55
Respuesta: Mi script no consulta ni actualiza

a primera vista me parece que las consultas esta masla
deberia ser algo como

SELECT tarea.*, usuario.* FROM tarea,usuario WHERE sentencias
si comparas tienes que hacer tabla.campo fijate en algunos no lo tienes asi como en notificar

PD: estas usando @ para ocultar los erroes.
  #6 (permalink)  
Antiguo 24/03/2010, 10:46
 
Fecha de Ingreso: marzo-2010
Mensajes: 140
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: Mi script no consulta ni actualiza

Pues mira ya probe viendo si es por eso y escribi lo que se supone hace falta, pero no consulta.

el @ si lo uso para que no me mande error con esas funciones, como escribi antes estoy utilizando un webhosting.
  #7 (permalink)  
Antiguo 24/03/2010, 11:04
Avatar de eulloa  
Fecha de Ingreso: octubre-2007
Ubicación: Donde caiga la noche, si mi hijo me deja
Mensajes: 691
Antigüedad: 16 años, 6 meses
Puntos: 5
Respuesta: Mi script no consulta ni actualiza

Pues mejor quitas el @ para intentar descifrar lo q está pasando
  #8 (permalink)  
Antiguo 24/03/2010, 13:24
 
Fecha de Ingreso: marzo-2010
Mensajes: 140
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: Mi script no consulta ni actualiza

pues ya sabes me manda el clasico mensaje siguiente y manda el mensaje de cantidad actual y cantidad siguiente pero nada de consultar

Inicio tareas propias.
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in on line 55

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in on line 60
La cantidad actual es:
La cantidad siguiente es:0

Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in on line 29
Inicio tareas a terceros.
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in on line 75

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in on line 78
La cantidad actual es:
La cantidad siguiente es:0

Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in on line 100
  #9 (permalink)  
Antiguo 24/03/2010, 13:28
Avatar de eulloa  
Fecha de Ingreso: octubre-2007
Ubicación: Donde caiga la noche, si mi hijo me deja
Mensajes: 691
Antigüedad: 16 años, 6 meses
Puntos: 5
Respuesta: Mi script no consulta ni actualiza

Postea la línea 55, la 60 y las otras implicadas
PD: Si lo pudieras encerrar con las etiquetas sería perfecto
  #10 (permalink)  
Antiguo 24/03/2010, 13:39
 
Fecha de Ingreso: marzo-2010
Mensajes: 140
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: Mi script no consulta ni actualiza

linea 55 a la 69


55- $res=mysql_query($consulta_actual);
$cantidad_actual=@mysql_num_rows($res);
$consulta_siguiente = "SELECT * FROM tarea, usuario WHERE (ADDTIME('$now', '0 01:00:00') >
tarea.fecha_notif) AND (usuario.iduser = tarea.iduser) AND (notificar='eventual') AND
(tarea.estado='pendiente')";
$res=mysql_query($consulta_siguiente);
$cantidad_hora=@mysql_num_rows($res);
$cantidad_siguiente=$cantidad_hora-$cantidad_actual;
echo "La cantidad actual es:$cantidad_actual ";

echo "La cantidad siguiente es:$cantidad_siguiente ";
if ($cantidad_siguiente<=$maximo)
return 0;
else
69.- return 1;
  #11 (permalink)  
Antiguo 25/03/2010, 09:29
 
Fecha de Ingreso: marzo-2010
Mensajes: 140
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: Mi script no consulta ni actualiza

El comportamiento que he visto es que no hace la consulta en la base de datos, que es por donde deberia empezar

Etiquetas: actualizar
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 04:46.