Jump to content

Problema con codigo php y mysql


Recommended Posts

Estimados estoy tratando de realizar lo siguiente:

 

Que un archivo php se auto ejecute (esto ya se como hacerlo) para que revise unos datos en la base de datos ejecute una función de contar días y modifique en caso de que requiera.

 

 

el codigo es el siguiente:

 

Deje comentado la funcion de enviar mail sospechando de que por eso seria el error pero al parecer no...

$query = "SELECT * FROM clientes";
$result = mysql_query($query);
while($row = mysql_fetch_array($result))
  {
	$idcliente = $row["idclient"];
	$usercliente = $row["userclient"];
	$mailcliente = $row["mailclient"];
	$estadocliente = $row["estadoclient"];
	$fechafincliente = $row["finclient"]; 
	$confirmadopagos = $row["confpagos"];
	$creado = $row["creado"];
	
	if(calcularDias($fechafincliente) = 5){
		//ENVIA MAIL RECORDATORIO DE PAGO 5 DIAS
		$sql = "UPDATE clientes SET estadoclient = '3' WHERE idclient = '$idclient';";
		mysql_query($sql);
		//correoRecordatorio($mailcliente,$usercliente,$fechafincliente,$estadocliente);
		$clientesPorSuspender++;
	}elseif(calcularDias($fechafincliente) = 3){
		//ENVIA MAIL RECORDATORIO DE PAGO 3 DIAS
		//correoRecordatorio($mailcliente,$usercliente,$fechafincliente,$estadocliente);
		$clientesPorSuspender++;
	}elseif(calcularDias($fechafincliente) = 1){
		//ENVIA MAIL RECORDATORIO DE PAGO 1 DIA.
		//correoRecordatorio($mailcliente,$usercliente,$fechafincliente,$estadocliente);
		$clientesPorSuspender++;
  	}elseif(calcularDias($fechafincliente) = 0){
		//ENVIA MAIL DE SERVICIO SUSPENDIDO
		$sql = "UPDATE clientes SET estadoclient = '4' WHERE idclient = '$idclient';";
		mysql_query($sql);
		//cuentaSuspendido($mailcliente,$usercliente,$fechafincliente,$estadocliente);
		$clientesSuspendidos++;
	}
	//mailAdministradores($suspendidos,$porsuspender);
	
  }
  mysql_free_result($result);
mysql_close($con);
?>

La funcion que cuenta los días seria la siguiente:

function calcularDias($fiform){
			$startDate = date("Y/m/d");
			$endDate = $fiform;
			list($year,$month,$day) = explode("/",$startDate);
			$startDate = mktime(0,0,0,$month,$day,$year);
			list($year,$month,$day) = explode("-",$endDate);
			$endDate = mktime(0,0,0,$month,$day,$year);
			$totalDays = ($endDate - $startDate)/(60*60*24);
			echo $totalDays . " dias";	
}
Link to comment
Share on other sites

Siempre(que puedo) hago las operaciones sobre los date en la base de datos, las operaciones son simples de ese lado. Lamentablemente no entiendo bien el problema, pero creo que si la persona no ingresa en la página web durante varios días, no va a recibir mails.

 

Saludos

Link to comment
Share on other sites

Es independiente de los mails, el problema que tengo es que al momento de ejecutar el codigo el navegador queda colgado diciendo que hay un error en el servidor, y fui comentando partes del código para tratar de encontrar el error y no encuentro nada, al menos descarte lo de los correos comentándolo.

 

EDIT --

 

 

SOLUCIONADO!

Edited by Sp4wN^^!
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...