17/01/2002, 09:01
|
| Colaborador | | Fecha de Ingreso: noviembre-2001 Ubicación: 127.0.0.1
Mensajes: 3.499
Antigüedad: 23 años Puntos: 69 | |
Re: Undefined offset: 2 hchiesa, tu error está en la manera que recorres lso datos del correo... primero analicemos lo que estás haciendo y segundo, te presento una solución mejor:
1) tu script
$correos=explode("|",$mails);
$i=0;
while($correos[$i]){
mail($correos, $asunto, $tema);
$i++;
}
Supongamos que en $correos vienen 2 direcciones de email solas, no? Bueno, en el explode, conseguimos un array de 2 posiciones (0 y 1). Cuando entramos al While, la primera vez, $correos[0] existe, entonces mandamos el mail y sumamos 1 a $i. Volvemos al While y $correos[1] también existe, entonces tambien mandamos el mail. Volvemos a sumar 1 a $i y cuando intentas acceder a $correos[2], entonces salta error, porque no existe.
Ahi está el error.
2) Hay infinidad de maneras de recorrer un array y hacer cosas con cada elemento, te presento la que yo utilizo y más me gusta por ser un acercamiento a la programación orientada a objetos:
$correos=explode("|",$mails);
foreach ($correos as $mail)
{
mail($mail, $asunto, $tema);
}
Y listo, foreach recorre todos los elementos del array y le asigna el valor temporalmente a la variable $mail. Luego, dentro del bloque del foreach, con esa variable puedes hacer lo que quieras.
Saludos.
<hr><font size=2 face="verdana">- Pablo Daniel Rigazzi (Webstudio)
<font size=1 color="#333333">COORDINADOR PROYECTO REGIONALIZACION ARGENTINA
Visita <a href="http://www.web-studio.com.ar" target="_blank">Web Studio</a> - Tutoriales Photoshop</fo |