Realize un pequeno sistema para:
- guardar correos por grupos
- guardar correos en lugares independientes (grupos distintos)
- enviar correos a grupos
- enviar correos a direcciones independientes
Actualmente uno de los grupos donde contengo correos a crecido demasiado :S, y cuando le doy Enviar Correos a dicho grupo (contiene todos los destinatarios) la pagina se queda enviando correos y de repente como que el script se frena o simplemente ya no responde, vaya, ya no pone nada en la pantalla, ya sea "Correos enviados" o bien "Problemas para enviar correos".
Cuando realize el proceso de codificacion de mi sistema me asegure de implementar la funcion set_time_limit(segundos), para aumentar el tiempo de ejecucion del script, estableciendolo a 5 minutos (set_time_limit(300);), pero aun asi el codigo es frenado ...
Mi sistema esta funcionando en un hosting en internet (el cual estoy rentando).
Por otro lado, en mi servicio de hosting siempre me posicionan en mi directorio de raiz el archivo php.ini el cual posee ya variables configuradas y pues me imagino que lo posicionan hay para que yo pueda variar dicha informacion, de modo que segun la modificacion solo agrege esto: max_execution_time 300, pero aun asi el script no puede terminar de enviar correos .
Aqui dejo el php.ini que tengo en el directorio de raiz del servidor:
Código:
register_globals = off
allow_url_fopen = off
expose_php = Off
max_input_time = 300
max_execution_time = 300
variables_order = "EGPCS"
extension_dir = ./
upload_tmp_dir = /tmp
precision = 12
SMTP = relay-hosting.secureserver.net
url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=,fieldset="
[Zend]
zend_extension=/usr/local/zo/ZendExtensionManager.so
zend_extension=/usr/local/zo/4_3/ZendOptimizer.so
[browscap]
browscap = php_browscap.ini
Aqui un pedazo del codigo de mi sistema para envio de mails"
Código
//verifica que los correos y grupos sean validos, a su vez les realiza el proceso de verificacion de dominio, quita //los espacios, asegura que el texto este en minusculas (lo convierte),etc... //Si todo tuvo exito, retorna todos los correos delimitados por una coma if( ($mail_dest=verificar_correos_grupos( proteger_cadena($_POST["publicidad_redactar_emaildestino"]) )) ) { { for( $i=0; $i<sizeof($x_mails); $i++ ) //ciclo para recorrer toda la lista { enviar_correo( $x_mails[$i], proteger_cadena($_POST["publicidad_redactar_titulo"]), 6, proteger_cadena($_POST["publicidad_redactar_codigo"]) ); else //es un grupo { $grupo_id= consultar_datos_general( "PRIVILEGIOS", "NOMBRE='". $x_mails[$i]. "'", "ID"); //obtenemso ID apartir del nombre de grupo $cons_lista= consultar_con( "LISTA_CORREOS", "GRUPO='". $grupo_id. "'" ); //obtenemos todos los correos del grupo enviar_correo( $buf_lista["EMAIL"], proteger_cadena($_POST["publicidad_redactar_titulo"]), 6, proteger_cadena($_POST["publicidad_redactar_codigo"]) ); } } } else //solo es un destinatario o grupo { enviar_correo( $mail_dest, proteger_cadena($_POST["publicidad_redactar_titulo"]), 6, proteger_cadena($_POST["publicidad_redactar_codigo"]) ); else //es un grupo { $grupo_id= consultar_datos_general( "PRIVILEGIOS", "NOMBRE='". $mail_dest. "'", "ID"); //obtenemso ID apartir del nombre de grupo $cons_lista= consultar_con( "LISTA_CORREOS", "GRUPO='". $grupo_id. "'" ); //obtenemos todos los correos del grupo enviar_correo( $buf_lista["EMAIL"], proteger_cadena($_POST["publicidad_redactar_titulo"]), 6, proteger_cadena($_POST["publicidad_redactar_codigo"]) ); } } //esto es solo como metodo estadistico, se agrega un incremente a diho grupo que se //le ha enviado un correo "id"=>"'". $_GET["id_send"]. "'", "hit"=>"'". (consultar_datos_general("PUBLICIDAD", "ID='". $_GET["id_send"]. "'", "hit")+1). "'" ); actualizar_bdd( "PUBLICIDAD", $trama ); echo "Publicidad enviada con exito..."; } else echo "Error: verifique los destinatarios."; echo "<p><input type=\"submit\" value=\"Continuar\" class=\"boton_01\" onclick=\"cargar_datos( 'id=". $_GET["id"]. "&mov=ver', 'tabla_publicidad_lista', 'GET', '0' );\"> ";
Que podria hacer para poder completar el envio de mails a todos los contenedores ???
bye bye