Sp4wN^^! Posted September 5, 2013 Report Share Posted September 5, 2013 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 More sharing options...
xomarx69 Posted September 5, 2013 Report Share Posted September 5, 2013 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 More sharing options...
Sp4wN^^! Posted September 5, 2013 Author Report Share Posted September 5, 2013 (edited) 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 September 5, 2013 by Sp4wN^^! Link to comment Share on other sites More sharing options...
AshWilliams Posted September 6, 2013 Report Share Posted September 6, 2013 Favor chicos, dejen de usar la extensión mysql que está obsoleta ;) ; usen mysqli o PDO y vayan a la segura :banana: Saludos :krider: Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now