Ver Mensaje Individual
  #5 (permalink)  
Antiguo 17/01/2002, 09:01
Avatar de Webstudio
Webstudio
Colaborador
 
Fecha de Ingreso: noviembre-2001
Ubicación: 127.0.0.1
Mensajes: 3.499
Antigüedad: 22 años, 5 meses
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