Foros del Web » Programando para Internet » PHP »

envio de mails desde php y mysql

Estas en el tema de envio de mails desde php y mysql en el foro de PHP en Foros del Web. bueno, hace un tiempito que todo me salia bien, hasta que vuelvo a tropesar y a consultar a los que realiemnte saben Mi duda es ...
  #1 (permalink)  
Antiguo 18/11/2003, 14:58
Avatar de oktubre  
Fecha de Ingreso: agosto-2003
Ubicación: en mi casa
Mensajes: 371
Antigüedad: 20 años, 7 meses
Puntos: 4
Pregunta envio de mails desde php y mysql

bueno, hace un tiempito que todo me salia bien, hasta que vuelvo a tropesar y a consultar a los que realiemnte saben

Mi duda es la siguiente:

tengo una tabla de usuarios, nada importante, pero tiene 4985 registros. Nada despreciable tampoco.

el antiguo programador se jugó una última carta antes de abandonar el proyecto y ejecuto una muy sencilla consulta hacia la base de datos tan simple y destructiva como veran...
"UPDATE usuarios SET password='ninguno'; "
y ahi estoy, con una terrible lista de 3616 usuarios que no pueden ingresar al sistema.

escribí un pequeño php algo asi como que selecione de la tabla usuarios ( SELECT nombre, email, login, password FROM usuarios WHERE password='ninguno' )
y el bucle justo ahí
while (result) {
// y aca les mando un e-mail mas o menos armadito diciendoles "Estimado $myrow[nombre], su usuario en el sistema es $myrow[login] y su password es $myrow[password], por favor proceda a cambiarlo.


y bueno, todo bien hasta quelo ejecuto.
pasa que empiesa a mandar y luego la pagina tira error.

me gustaría saber si es que php y mysql no son capaces de manejar esa cantidad de envios en la consulta o si tal vez no es la forma.

cualquier ayuda será bienvenida.

gracias
__________________
w32.oktubre@mm <----------------<<<<
prefiero cerrar la boca y parecer un tonto que abrirla y confirmarlo.
  #2 (permalink)  
Antiguo 18/11/2003, 15:10
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 9 meses
Puntos: 16
Hola,

Esto, si no es mucha molestia, cuando te de un mensaje de error, ponlo en el mensaje. Suele ayudar a saber el fallo.

Aunque en este caso es claro. Te dira algo como que "ha excedido el tiempo maximo de ejecucion". Y eso es porque PHP esta configurado para parar un script a los x segundos de empezar a ejecutarlo, para evitar bucles sin fin que dejen el servidor sin recursos. El x suelen ser 30 segundos. Puedes cambiar este tiempo en el php.ini con la directiva max_execution_time, o bien solo para ese script con la funcion set_time_limit() (www.php.net/set_time_limit). Con esta funcion puedes especificar un limite "infinito", asi que usalo con cuidado.

Otra opcion seria ejecutar tu envio "por paginas", como las paginaciones de resultados. Haces que tu script envie a los 30 primeros, y cuando acabes redireccionas a esa misma pagina pero diciendole que mande los 30 siguientes. Y asi sucesivamente.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 18/11/2003, 15:11
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Y que error "tira" ... por qué de ver los mensajes de error es como se puede llegar a ver el problema ..

Supongo que te dará algún error por el tiempo de ejecución máximo sobrepasado (por defecto 30 segundos en tu php.ini) ..

Usa:

set_time_limit(0);

Al principio de tu script de proceso de envio de los e-mails para darle el tiempo que tarde al script para hacer el proceso completo.

Un saludo,

PD: jeje Josemi .. otro mensaje que "chocamos" y hasta con la misma estructura xD.
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.

Última edición por Cluster; 18/11/2003 a las 15:16
  #4 (permalink)  
Antiguo 18/11/2003, 16:43
Avatar de oktubre  
Fecha de Ingreso: agosto-2003
Ubicación: en mi casa
Mensajes: 371
Antigüedad: 20 años, 7 meses
Puntos: 4
Si, en realidad no tube en cuenta para nada el tiempo de ejecución, solamente sale el maldito mensaje del MOCOSOFT EXPLORER "no se puede mostrar la pagina" etc, etc.

Dos cosas quedarian por preguntar:
1º no tengo acceso al php.ini porque el servicio web esta instalado en una empresa de hosting que son muy tontos,

2º con solo agregar al principio del script lo que me puso cluster alcanza??????

una mas, en los tutoriales no encontre lo de paginar, me dan una pista por si las moscas...




gracias,
__________________
w32.oktubre@mm <----------------<<<<
prefiero cerrar la boca y parecer un tonto que abrirla y confirmarlo.
  #5 (permalink)  
Antiguo 19/11/2003, 06:24
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Usa el buscador del foro "paginar" .. o "paginado" y veras muchos mensajes que hablan del tema ..

Un saludo,

PD: otra más que hay que hacer para las FAQ's .. jeje ¿quien se anima?
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 16:42.