Foros del Web » Programando para Internet » PHP »

Como recibir los emails con php

Estas en el tema de Como recibir los emails con php en el foro de PHP en Foros del Web. Hola amigos, espero puedan ayudarme, estoy realizando un trabajo, en el cual se deben envíar ciertos emails, pero al mismo tiempo recibirlos si hay mensajes ...
  #1 (permalink)  
Antiguo 28/02/2009, 12:25
 
Fecha de Ingreso: enero-2009
Mensajes: 54
Antigüedad: 15 años, 10 meses
Puntos: 1
Pregunta Como recibir los emails con php

Hola amigos, espero puedan ayudarme, estoy realizando un trabajo, en el cual se deben envíar ciertos emails, pero al mismo tiempo recibirlos si hay mensajes a nuestro correo, el envíar no hay ningun problema, este se presenta cuando quiero recibirlos, se que con IMAP puedo recibir tanto POP3 como NNTP, pero no tengo ni idea de como, espero puedan ayudarme con este código.

GRACIAS, JSB49
  #2 (permalink)  
Antiguo 28/02/2009, 12:36
 
Fecha de Ingreso: diciembre-2005
Mensajes: 50
Antigüedad: 18 años, 11 meses
Puntos: 0
Respuesta: Como recibir los emails con php

No es que con Imap puedas recibir POP, con IMAP accedes directamente a los correos (mailbox)

Primero, para que necesitas acceder a los correos? tal vez sea mas facil que utilices un redireccionamiento a tu programa en php (email pipe) con eso tu programa php podra leer los correos.

si siempre necesitas utilizar imap pues tienes que utilizar las funciones imap_open imap_close y muchas otras mas http://www.php.net/imap
  #3 (permalink)  
Antiguo 28/02/2009, 12:46
 
Fecha de Ingreso: enero-2009
Mensajes: 54
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: Como recibir los emails con php

Gracias por responder tan rapido lizardopc, lo cierto es que no se por donde empezar he probado el imap pero no me recoge ningún dato y con el hedders me dice no tengo ningún mensaje pero hay. Podrias ayudarme y explicarme como lo harias tú.

JSB49
  #4 (permalink)  
Antiguo 28/02/2009, 12:53
 
Fecha de Ingreso: diciembre-2005
Mensajes: 50
Antigüedad: 18 años, 11 meses
Puntos: 0
Respuesta: Como recibir los emails con php

pero que vas ha hacer con los mensajes que recibas? mostrarlos al usuario o hacer alguna operacion?
  #5 (permalink)  
Antiguo 28/02/2009, 12:58
 
Fecha de Ingreso: enero-2009
Mensajes: 54
Antigüedad: 15 años, 10 meses
Puntos: 1
El cliente quiere verlos y despúes incluirlos en una bbdd. Quien lo mando, el día, la hora, el titulo y el cuerpo.

Ahora me tengo que ir pero sobre un par de horas estoy de vuelta. GRACIAS

Última edición por GatorV; 28/02/2009 a las 14:26
  #6 (permalink)  
Antiguo 28/02/2009, 13:05
 
Fecha de Ingreso: diciembre-2005
Mensajes: 50
Antigüedad: 18 años, 11 meses
Puntos: 0
Respuesta: Como recibir los emails con php

para eso usaria un mail pipe, algo como el codigo de abajo,

para que funcione tienes que hacer un redireccionamiento del correo hacia tu programa php.


#!/usr/bin/php
<?php
// script chmoded to 755
// alias: [email protected]: ¦/home/erik/404pipe.php

// read from stdin
$fd = fopen("php://stdin", "r");
$email = "";
while (!feof($fd)) {
$email .= fread($fd, 1024);
}
fclose($fd);

// handle email
$lines = explode("\n", $email);

// empty vars
$from = "";
$subject = "";
$headers = "";
$message = "";
$splittingheaders = true;

for ($i=0; $i<count($lines); $i++) {
if ($splittingheaders) {
// this is a header
$headers .= $lines[$i]."\n";

// look out for special headers
if (preg_match("/^Subject: (.*)/", $lines[$i], $matches)) {
$subject = $matches[1];
}
if (preg_match("/^From: (.*)/", $lines[$i], $matches)) {
$from = $matches[1];
}
} else {
// not a header, but message
$message .= $lines[$i]."\n";
}

if (trim($lines[$i])=="") {
// empty line, header section has ended
$splittingheaders = false;
}
}

?>
  #7 (permalink)  
Antiguo 28/02/2009, 15:05
 
Fecha de Ingreso: enero-2009
Mensajes: 54
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: Como recibir los emails con php

Gracias por responderme tan pronto y por el código lo voy a probar y os digo algo. Hasta pronto.

JSB49
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 21:27.