Foros del Web » Programando para Internet » PHP »

separar emails por nombre de dominio.

Estas en el tema de separar emails por nombre de dominio. en el foro de PHP en Foros del Web. quisiera saber si alguien en la comunidad me podria echar una mano con lo siguiente. se que es posible en php separar emails por medio ...
  #1 (permalink)  
Antiguo 06/12/2010, 10:01
 
Fecha de Ingreso: diciembre-2010
Mensajes: 3
Antigüedad: 13 años, 4 meses
Puntos: 0
Exclamación separar emails por nombre de dominio.

quisiera saber si alguien en la comunidad me podria echar una mano con lo siguiente.

se que es posible en php separar emails por medio de php script a lo que me refiero es lo siguiente.

yo tengo un txt con 50 mb de correos electronicos y tiene correos de todos lados.

yahoo.hotmail.terra.mixma¡l y muchos otros.

ejemplo:

[email protected]
[email protected]
[email protected]

y que el script los guarde en un txt solamente los hotmail.com y en otro txt los yahoo y asi que los guarde o por lo menos enliste por nombre de dominio.

espero me puedan ayudar.

es que no se ni por donde empezar yo mismo
  #2 (permalink)  
Antiguo 06/12/2010, 10:13
 
Fecha de Ingreso: diciembre-2010
Ubicación: Rosario, Santa Fe
Mensajes: 326
Antigüedad: 13 años, 4 meses
Puntos: 13
Respuesta: separar emails por nombre de dominio.

Acá tenes un pequeño código, pruebalo y nos comentas que tal

Código PHP:
<?php
$fp 
fopen('archivo.txt''r');

while(!
feof($fp)) {
   
$mail fgets($fp);
   
$domain substr($mailstrpos($mail,'@'));
   
$fpa fopen($domain.".txt"'a');
   
fwrite($fpa$mail);
   
fclose($fpa);
}

fclose($fp);
?>
  #3 (permalink)  
Antiguo 06/12/2010, 10:42
 
Fecha de Ingreso: diciembre-2010
Mensajes: 3
Antigüedad: 13 años, 4 meses
Puntos: 0
Respuesta: separar emails por nombre de dominio.

Cita:
Iniciado por areslepra Ver Mensaje
Acá tenes un pequeño código, pruebalo y nos comentas que tal

Código PHP:
<?php
$fp 
fopen('archivo.txt''r');

while(!
feof($fp)) {
   
$mail fgets($fp);
   
$domain substr($mailstrpos($mail,'@'));
   
$fpa fopen($domain.".txt"'a');
   
fwrite($fpa$mail);
   
fclose($fpa);
}

fclose($fp);
?>

el codigo esta de perlas amigo solo que hay algo malo lo probe en local y mira.



Warning: fopen(@hotmail.com .txt) [function.fopen]: failed to open stream: Invalid argument in C:\AppServ\www\multi.php on line 7

Warning: fwrite(): supplied argument is not a valid stream resource in C:\AppServ\www\multi.php on line 8

Warning: fclose(): supplied argument is not a valid stream resource in C:\AppServ\www\multi.php on line 9


me tira ese error.
  #4 (permalink)  
Antiguo 06/12/2010, 10:54
 
Fecha de Ingreso: diciembre-2010
Ubicación: Rosario, Santa Fe
Mensajes: 326
Antigüedad: 13 años, 4 meses
Puntos: 13
Respuesta: separar emails por nombre de dominio.

Prueba modificando esta linea:
Código PHP:
$domain substr($mailstrpos($mail,'@')); 
por esta:
Código PHP:
$domain trim(substr($mailstrpos($mail,'@')+1)); 
El problema es que no pudo crear el archivo, sospecho que es por el arroba, asi que la modificación es para quitarla (se me había pasado ese detalle) y también de paso sacamos los espacios con la funcion trim

Prueba el cambio y me comentas.
  #5 (permalink)  
Antiguo 06/12/2010, 11:10
 
Fecha de Ingreso: diciembre-2010
Mensajes: 3
Antigüedad: 13 años, 4 meses
Puntos: 0
Respuesta: separar emails por nombre de dominio.

Cita:
Iniciado por areslepra Ver Mensaje
Prueba modificando esta linea:
Código PHP:
$domain substr($mailstrpos($mail,'@')); 
por esta:
Código PHP:
$domain trim(substr($mailstrpos($mail,'@')+1)); 
El problema es que no pudo crear el archivo, sospecho que es por el arroba, asi que la modificación es para quitarla (se me había pasado ese detalle) y también de paso sacamos los espacios con la funcion trim

Prueba el cambio y me comentas.
jejeje eres la ley amigo;) funciono de perlas :D Muchas Gracias.

Última edición por loedfelpa; 06/12/2010 a las 11:10 Razón: agradecimientos
  #6 (permalink)  
Antiguo 06/12/2010, 11:13
 
Fecha de Ingreso: diciembre-2010
Ubicación: Rosario, Santa Fe
Mensajes: 326
Antigüedad: 13 años, 4 meses
Puntos: 13
Respuesta: separar emails por nombre de dominio.

Me encanta ser de ayuda, no hace mucho yo era quién tenia las dudas.

Etiquetas: nombre, email, dominios
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 15:32.