Foros del Web » Programando para Internet » PHP »

Sistema de Tickets como leer mails desde php cada cierto tiempo

Estas en el tema de Sistema de Tickets como leer mails desde php cada cierto tiempo en el foro de PHP en Foros del Web. Holas que tal muy buenas tardes soy nuevo en el foto asi que espero no evadir ninguna regla :). el motivo de mi primer post ...
  #1 (permalink)  
Antiguo 08/03/2012, 14:16
 
Fecha de Ingreso: marzo-2012
Mensajes: 26
Antigüedad: 12 años, 1 mes
Puntos: 0
Sistema de Tickets como leer mails desde php cada cierto tiempo

Holas que tal muy buenas tardes soy nuevo en el foto asi que espero no evadir ninguna regla :).

el motivo de mi primer post se debe a que estoy creando un sistema de tickets ( Algo basico y pequeño ) para la empresa en la que estoy haciendo mi servicio, por lo cual todo iba muy bien, pero ahora me piden que los clientes puedan expresar sus inconvenientes a un correo el cual tengo que poder acceder cada minuto para generar apartir del email un Ticket pero no tengo ni idea de como hacer esto, se que existen sistemas que lo hacen tanto de paga como gratuitos, pero mi idea es generarlo desde 0, quisas exista alguna libreria que lea los correos de una cuenta predefinida pero no se como hacer eso.

no se si alguien podria explicarme como podria hacer eso, o de alguna libreria para poder conectarme a mi cuenta de webmail y extraer de ahi los datos del email y convertirlo a Tickets, ya tengo el sistema de tickets el cual se loguea a la pagina web y el cliente genera los tickets, registrandose en una BD, pero como repito ahora ocupo que un codigo se ejecute cada minuto, ver si existe un correo en una cuenta de mail y traerme de ahi los datos y generar el ticket, esa es mi duda como hacer eso :S:S:S, requiero ejecutarlo yo desde mi maquina y por lo cual necesito generar el codigo o modificar uno ya existente o hacerlo pero teniendo una idea de las herramientas que ocupo :S:S:S, (supongo hay codigo abierto que hace ya eso :S)

espero me puedan ayudar, ya que llevo ya 2 dias buscando la forma como hacerlo pero no tengo ni idea :S:S: saludos nuevo foro y les agradesco su ayuda de antemano :)
  #2 (permalink)  
Antiguo 08/03/2012, 14:21
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Sistema de Tickets como leer mails desde php cada cierto tiempo

Con phpmailer puedes descargar los correos de una cuenta definida, y mediante cronjon en linux o tareas programadas de windows puedes hacer que se ejecute cada x tiempo un lector que con phpmailer revise el correo por si hay emails para tickets pendientes por leer.
  #3 (permalink)  
Antiguo 08/03/2012, 14:26
 
Fecha de Ingreso: marzo-2012
Mensajes: 26
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: Sistema de Tickets como leer mails desde php cada cierto tiempo

Hola que tal ocp001a muchas gracias por responder tan rapidamente, y de hecho yo uso phpmailer para mandar un correo para cada respuesta en los tickets de respuesta, y no sabia que con phpmailer tambien se podrian leer los correos de una cuenta :S, no se si me puedas explicar como funciona eso, ya que tenia entendido con el administrador de tareas si se podia ejecutar una tarea cda cierto tiempo, pero era mas que nada para ejecutar un archivo php el cual tendria la forma de conectarse a mi cuenta de email y revisar los correos, pero como te repito no tengo ni idea, y menos que con php mailer se podria tambien, no se si puedas ayudarme y dar un ejemplo si no es mucha la molestia, :S:S:S o algun link que sepas tu y sirva de ejemplo, de antemano muchisimas gracias y vere ahora mismo como hacer eso o si hay otra opcion para realizarlo se los agradeceria :) intentare con php mailer, y sigo esperando mas opciones por si me atoro con esa
  #4 (permalink)  
Antiguo 08/03/2012, 14:32
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Sistema de Tickets como leer mails desde php cada cierto tiempo

Perdón, un lapsus... yo uso una librería descargada de phpclasses.com para leer el correo. Y la uso precisamente para un sistema de tickets
  #5 (permalink)  
Antiguo 08/03/2012, 14:40
 
Fecha de Ingreso: marzo-2012
Mensajes: 26
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: Sistema de Tickets como leer mails desde php cada cierto tiempo

ok muchas gracias ocp001a ahora mismo lo descargare, solo tengo que loguearme eh implementarlo, vere la documentacion y cualquier duda la menciono en el foro, muchas gracias aunque ahora mismo no se como empezar pero ya teniendo la libreria me las arreglare, cualquier ayuda es bien recibida, gracias :)
  #6 (permalink)  
Antiguo 08/03/2012, 14:52
 
Fecha de Ingreso: marzo-2012
Mensajes: 26
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: Sistema de Tickets como leer mails desde php cada cierto tiempo

solo para estar seguro la libreria de php classes es la de pop3.stream ??? ya que es la que me parece me mencionas pero quiero estar seguro :S ocp001a
  #7 (permalink)  
Antiguo 08/03/2012, 15:53
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Sistema de Tickets como leer mails desde php cada cierto tiempo

Bueno, hay varias librerías para el uso de correo, yo uso la pop3 de Manuel Lemos, te puse el link hacia phpclasses pero para más seguro busca que sea la librería de Lemos, es la que mejor me dio resultados
  #8 (permalink)  
Antiguo 08/03/2012, 16:01
 
Fecha de Ingreso: marzo-2012
Mensajes: 26
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: Sistema de Tickets como leer mails desde php cada cierto tiempo

lo que configure fue unicamente la parte de las variables supongo que todo lo demas se queda igual pero no me ejecutaba nada, ni los ejemplos, no se que va ahi tambien :S

Cita:
var $ih;
var $host = '';//aqui va mi host
var $port = 110;//este puerto es lo que veo que usa el imap
var $username = ''; //aqui pongo mi correo
var $password = ''; //aqui escribo mi contrasenia
var $path = 'C:/'; //y aqui la url en el disco C para un ejemplo que viene
// stuff for dir reading
var $dir;
var $pos;
// stuff for file reading
var $data;
var $gotbody;
var $size;
var $time;

de ahi en mas dejo todo igual pero no me correo no se que estoy haciendo mal

el ejemplo numero 1 y solo para ver como funciona me pide que configure esto

Cita:
/* pop3.stream.php example #1

This example simple reads an email from the stream and spits it out to the console/browser */

require("pop3.stream.php");

$file="pop3://username:password@server/1";
//$file="pop3://[email protected]:123@server/1"; ) //pero en server no se que va, no se si vaya mi host o no se, es mi duda, los datos no son reales pero es una idea de lo qu epongo y no me corre, me sale que no se puede ejecutar el map-open :S:S y como te decia no se que va ahi donde dice server :( espero me puedas ayudar por lo menos para ver como funciona

if($fp=fopen($file,'r')) {
while(!feof($fp)) {
echo fread($fp,1024);
}
fclose($fp);
}
  #9 (permalink)  
Antiguo 08/03/2012, 16:18
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Sistema de Tickets como leer mails desde php cada cierto tiempo

Te indico e principio de mi código para que te des una buena idea.

Código PHP:
Ver original
  1. require('lib/php/mime_parser.php');
  2. require("lib/php/pop3.php");
  3. stream_wrapper_register('pop3', 'pop3_stream');  /* Register the pop3 stream handler class */
  4. $pop3=new pop3_class;
  5. $pop3->hostname=$conf["email_server"];   /* POP 3 server host name                      */
  6. $pop3->port=$conf["email_puerto"];       /* POP 3 server host port, usually 110 but some servers use other ports Gmail uses 995 */
  7. $pop3->tls=0;                            /* Establish secure connections using TLS      */
  8. $pop3->realm="";                         /* Authentication realm or domain              */
  9. $pop3->workstation="";                   /* Workstation for NTLM authentication         */
  10. $apop=0;                                 /* Use APOP authentication                     */
  11. $pop3->authentication_mechanism="USER";  /* SASL authentication mechanism               */
  12. $pop3->debug=0;                          /* Output debug information                    */
  13. $pop3->html_debug=0;                     /* Debug information is in HTML                */
  14. $pop3->join_continuation_header_lines=1; /* Concatenate headers split in multiple lines */
  15. $user=$conf["adminmail"];
  16. $pass=$conf["adminmail_pas"];
  17. if(($error=$pop3->Open())==""){//abrimos la conexion con el servidor de email
  18.     if(($error=$pop3->Login($user,$pass,$apop))==""){//nos logueamos
  19.         if(($error=$pop3->Statistics($messages,$size))==""){//obtenemos información de la cuenta
  20.             if($messages>0){//si hay mensajes
  21.                 for($message=1;$message<=$messages;$message++){//recorremos los mensajes
  22.                     $pop3->GetConnectionName($connection_name);//nombramos la conexion
  23.                     $message_file='pop3://'.$connection_name.'/'.$message;//indicamos la ruta+mensaje
  24.                     $mime=new mime_parser_class;//lo parseamos
  25.                     $mime->decode_bodies = 1;
  26.                     $parameters=array(//obtenemos extras del email
  27.                         'File'=>$message_file,
  28.                         'SkipBody'=>0,
  29.                     );
  30.                     $success=$mime->Decode($parameters, $decoded);//decodificamos el mensaje
  31.                     $enc="";
  32.                     if(!$success)//si falla
  33.                         die("Error al decodificar un mensaje ".strip_tags($mime->error));
  34.                     else{//si no falla
  35.                         if($mime->Analyze($decoded[0], $results)){//analizamos el mensaje y procedemos según el contenido
  #10 (permalink)  
Antiguo 08/03/2012, 16:20
 
Fecha de Ingreso: marzo-2012
Mensajes: 26
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: Sistema de Tickets como leer mails desde php cada cierto tiempo

alguien que sepa como poder conectarme atraves de POP3 ya que me dijeron recien que el sistema no permite el uso de IMAP por lo cual la libreria POP3.stream (cosa rara: ya que se llama POP3, pero tambien usa IMAP :( a menos que este equivocado, no se mucho sobre el tema de configuracion de correos etc :S) no me serviria, espero alguien me pudiera ayudar con esto ya que necesito implementarlo y llevo 2 dias con esto :S:S:S:S no he encontrado un solo ejemplo en el que muestre codigo o la forma en como puedo ejecutarlo, solo encuentro programas gratuitos y cosas asi pero nada me ha servido aun, saludos y espero me puedan ayudar, gracias
  #11 (permalink)  
Antiguo 08/03/2012, 16:24
 
Fecha de Ingreso: marzo-2012
Mensajes: 26
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: Sistema de Tickets como leer mails desde php cada cierto tiempo

wowwww ocp001a muchas gracias, no se si este mal yo pero esa libreria no es nada parecida a la que descargue en el link que me pasaste, y tampoco se si tenga algo que ver que aunque la libreria se llama POP3.stream ejecuta comandos IMAP y en mi trabajo ya me dijeron que el corroe utiliza rl protocolo POP3, no se si estoy diciendo tonterias o incoherencias, te agradesco la ayuda y disculpa las molestias. y como te decia la libreria es completamente diferente, se que la parte que me envias es solo un poco de toda la libreria, pero aun asi no trae nada de eso :S:S:S solo traia 4 ejemplos y la libreria que era en si muy corta y nada parecida, saludos y muchas gracias buscare como hacerle :(
  #12 (permalink)  
Antiguo 08/03/2012, 16:27
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Sistema de Tickets como leer mails desde php cada cierto tiempo

El ejemplo que te puse es enteramente pop3. Quizá te puse mal el link a la librería, como te indicaba, la que uso es la de Manuel Lemos, no creo que tengas problemas en encontrarla, en la misma phpclasses.com
  #13 (permalink)  
Antiguo 08/03/2012, 16:31
 
Fecha de Ingreso: marzo-2012
Mensajes: 26
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: Sistema de Tickets como leer mails desde php cada cierto tiempo

si es lo que estaba viendo que no utiliza ningun comando IMAP en la que yo descargue si vienen, por eso se me hace raro :S:S:S tendre que buscar la libreria de lemos la queme dices, por que no puedo utilizar ningun comando imap,
Cita:
function stream_open($path,$mode,$options,$opened_path) {
// parse URL
$url=parse_url($path);
$ssl=false;
if ($url['scheme']==='pop3s') {
$ssl=true;
}
$this->host=$url['host'];
if (!empty($url['port'])) {
$this->port=$url['port'];
} else {
$this->port=110;
}
$this->username=$url['user'];
$this->password=$url['pass'];
$this->path=substr($url['path'],1);

// do we have a path?
if (empty($this->path) && $mode!=='np') {
return false;
}

// open IMAP connection
if ($ssl==true) {
$this->ih=imap_open("{".$this->host.":".$this->port."/pop3/ssl/novalidate-cert}INBOX",$this->username,$this->password);
} else {
$this->ih=imap_open("{".$this->host.":".$this->port."/pop3}INBOX",$this->username,$this->password);
}
if ($this->ih) {
if (!empty($this->path)) {
list($stats,)=imap_fetch_overview($this->ih,$this->path);
$this->size=$stats->size;
$this->time=strtotime($stats->date);
}
return true;
} else {
return false;
}
}

function stream_close() {
imap_close($this->ih);
}
ese es parte del codigo de la libreria y por lo cual puedes ver que si contiene algunas sentencias IMAP, vere como puedo descargar la libreria que me mencionaste hace unos momentos y vere como funciona solo con POP3, por que no tengo ni idea :S
  #14 (permalink)  
Antiguo 09/03/2012, 12:24
 
Fecha de Ingreso: marzo-2012
Mensajes: 26
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: Sistema de Tickets como leer mails desde php cada cierto tiempo

Hola que tal ocp001a muchas gracias por el codigo que me pasaste, lo estuve implementando y me sirvio para conectarme, gracias y bueno ahora mismo estoy leyendo y comprendiendo el codigo para lograr el traerme solo ciertos campos y trabajar sobre ellos, para generar el ticket :), muchas gracias y espero no dar mas problemas, seguire viendo como traerme los datos, saludos
  #15 (permalink)  
Antiguo 09/03/2012, 13:06
 
Fecha de Ingreso: marzo-2012
Mensajes: 26
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: Sistema de Tickets como leer mails desde php cada cierto tiempo

requiero ayuda!!! :( ya estuve buscando y viendo la forma de como poder traerme ciertos datos de la libreria como lo son: De quien vino el Correo, Mensaje, El Asunto, Adjunto, osea los campos del Correo, pero no se como, ya busque y busque y no se como hacer referencia y traerme esos valores del correo, :(:(:(:(:(:(:(:(:(:( espero me puedan ayudar para hacer el ticket ya que si ocupo terminarlo :S de antemano GRACIAS espero me puedan ayudar
  #16 (permalink)  
Antiguo 09/03/2012, 13:19
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Sistema de Tickets como leer mails desde php cada cierto tiempo

Si bajaste la clase que te indiqué, en el mimo hay dos ejemplos, en el browse_mailbox.php tienes este código:

Código PHP:
Ver original
  1. <?php
  2. /*
  3.  * browse_mailbox.php
  4.  *
  5.  * @(#) $Header: /home/mlemos/cvsroot/pop3/browse_mailbox.php,v 1.1 2008/01/09 07:36:25 mlemos Exp $
  6.  *
  7.  */
  8.  
  9. ?><html>
  10. <head>
  11. <title>Parsing a message with Manuel Lemos' PHP POP3 and MIME Parser classes</title>
  12. </head>
  13. <body>
  14. <center><h1>Parsing a message with Manuel Lemos' PHP POP3 and MIME Parser classes</h1></center>
  15. <hr />
  16. <?php
  17.  
  18.     require('mime_parser.php');
  19.     require('rfc822_addresses.php');
  20.     require("pop3.php");
  21.  
  22.   /* Uncomment when using SASL authentication mechanisms */
  23.     /*
  24.     require("sasl.php");
  25.     */
  26.  
  27.     stream_wrapper_register('pop3', 'pop3_stream');  /* Register the pop3 stream handler class */
  28.  
  29.     $pop3=new pop3_class;
  30.     $pop3->hostname="localhost";             /* POP 3 server host name                      */
  31.     $pop3->port=110;                         /* POP 3 server host port,
  32.                                                 usually 110 but some servers use other ports
  33.                                                 Gmail uses 995                              */
  34.     $pop3->tls=0;                            /* Establish secure connections using TLS      */
  35.     $user="username";                        /* Authentication user name                    */
  36.     $password="password";                    /* Authentication password                     */
  37.     $pop3->realm="";                         /* Authentication realm or domain              */
  38.     $pop3->workstation="";                   /* Workstation for NTLM authentication         */
  39.     $apop=0;                                 /* Use APOP authentication                     */
  40.     $pop3->authentication_mechanism="USER";  /* SASL authentication mechanism               */
  41.     $pop3->debug=1;                          /* Output debug information                    */
  42.     $pop3->html_debug=1;                     /* Debug information is in HTML                */
  43.     $pop3->join_continuation_header_lines=1; /* Concatenate headers split in multiple lines */
  44.  
  45.     if(($error=$pop3->Open())=="")
  46.     {
  47.         echo "<PRE>Connected to the POP3 server &quot;".$pop3->hostname."&quot;.</PRE>\n";
  48.         if(($error=$pop3->Login($user,$password,$apop))=="")
  49.         {
  50.             echo "<PRE>User &quot;$user&quot; logged in.</PRE>\n";
  51.             if(($error=$pop3->Statistics($messages,$size))=="")
  52.             {
  53.                 echo "<PRE>There are $messages messages in the mail box with a total of $size bytes.</PRE>\n";
  54.                 if($messages>0)
  55.                 {
  56.                     $pop3->GetConnectionName($connection_name);
  57.                     $message=1;
  58.                     $message_file='pop3://'.$connection_name.'/'.$message;
  59.                     $mime=new mime_parser_class;
  60.  
  61.                     /*
  62.                     * Set to 0 for not decoding the message bodies
  63.                     */
  64.                     $mime->decode_bodies = 1;
  65.  
  66.                     $parameters=array(
  67.                         'File'=>$message_file,
  68.  
  69.                         /* Read a message from a string instead of a file */
  70.                         /* 'Data'=>'My message data string',              */
  71.  
  72.                         /* Save the message body parts to a directory     */
  73.                         /* 'SaveBody'=>'/tmp',                            */
  74.  
  75.                         /* Do not retrieve or save message body parts     */
  76.                             'SkipBody'=>1,
  77.                     );
  78.                     $success=$mime->Decode($parameters, $decoded);
  79.  
  80.  
  81.                     if(!$success)
  82.                         echo '<h2>MIME message decoding error: '.HtmlSpecialChars($mime->error)."</h2>\n";
  83.                     else
  84.                     {
  85.                         echo '<h2>MIME message decoding successful</h2>'."\n";
  86.                         echo '<h2>Message structure</h2>'."\n";
  87.                         echo '<pre>';
  88.                         var_dump($decoded[0]);
  89.                         echo '</pre>';
  90.                         if($mime->Analyze($decoded[0], $results))
  91.                         {
  92.                             echo '<h2>Message analysis</h2>'."\n";
  93.                             echo '<pre>';
  94.                             var_dump($results);
  95.                             echo '</pre>';
  96.                         }
  97.                         else
  98.                             echo 'MIME message analyse error: '.$mime->error."\n";
  99.                     }
  100.                 }
  101.                 if($error==""
  102.                 && ($error=$pop3->Close())=="")
  103.                     echo "<PRE>Disconnected from the POP3 server &quot;".$pop3->hostname."&quot;.</PRE>\n";
  104.             }
  105.         }
  106.     }
  107.     if($error!="")
  108.         echo "<H2>Error: ",HtmlSpecialChars($error),"</H2>";
  109. ?>
  110.  
  111. </body>
  112. </html>

Que si lo ejecutas, verás que el mensaje queda dentro de $results, y en el test le hace un vardump, donde puedes ver la estructura del email, y por tanto saber cómo obtener lo que necesitas. No puede ser más sencillo.
  #17 (permalink)  
Antiguo 09/03/2012, 13:24
 
Fecha de Ingreso: marzo-2012
Mensajes: 26
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: Sistema de Tickets como leer mails desde php cada cierto tiempo

ok gracias de hecho andaba buscando otras librerias referentes al mime_parser y cosas asi para entender o ver como traian los datos, mire esa parte pero como no soy un experto apenas estoy comprendiendo el lenguaje php y el uso orientado a objetos por eso me confundi, sorry y muchas gracias por la informacion, disculpa las molestias
  #18 (permalink)  
Antiguo 09/03/2012, 14:10
 
Fecha de Ingreso: marzo-2012
Mensajes: 26
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: Sistema de Tickets como leer mails desde php cada cierto tiempo

disculpa la molestia nuevamente pero ya intente entrando como results[0], usando un while y traerme los datos

Cita:
$i=0;
while ($i < count ($results) ) {
print $results[$i];
print '<br />';
$i++;
}*/
y nada, no he podido imprimir un solo valor, si le pongo el var_dump, si lo imprime pero como una raiz con valor y tipo de dato, pero no lo ocupo asi, solo requiero los valores y manipularlos, pero no me deja no se que pasa, ya me tiene loco esta funcion que me encargaron, espero alguien me pueda ayudar como usar los valores de un array por que por la forma en como lo hago no me deja :(

Cita:
Message analysis

array(11) {
["Type"]=>
string(4) "html"
["Description"]=>
string(12) "HTML message"
["Encoding"]=>
string(10) "iso-8859-1"
["Data"]=>
string(2601) "



Probando nuevo mensaje

Descripción: Firma_Ivan



"
["Alternative"]=>
array(1) {
[0]=>
array(4) {
["Type"]=>
string(4) "text"
["Description"]=>
string(12) "Text message"
["Encoding"]=>
string(10) "iso-8859-1"
["Data"]=>
string(65) "

asi es como me lo imprime y no lo requiero asi, espero alguien me pueda ayudar, saludos y sorry nuevamente :(
  #19 (permalink)  
Antiguo 09/03/2012, 14:26
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Sistema de Tickets como leer mails desde php cada cierto tiempo

Lo que necesitas es aprender a manipular arreglos, para esto busca un manual, ya que es algo realmente básico y necesario, y ya no debería entrar en el tema de este hilo. El acceso a los arreglos es muy simple.

Código PHP:
Ver original
  1. $arreglo=array(
  2.    'titulo'=>'Hola mundo',
  3.    'mensaje'=>'php es muy facil';
  4. );
  5.  
  6. echo 'Titulo: '.$arreglo['titulo'];
  7. echo 'Mensaje: '.$arreglo['mensaje'];
  #20 (permalink)  
Antiguo 09/03/2012, 15:29
 
Fecha de Ingreso: marzo-2012
Mensajes: 26
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: Sistema de Tickets como leer mails desde php cada cierto tiempo

Gracias por el consejo y por la ayuda, utilice el print_r(); para ver mejor la estructura del Array, y con eso utilice directamente los array que me interesaban, espero no dar mas problemas con el tema y la verdad que si esta algo complejo, gracias nuevamente ocp001a ahora lo unico que me falta es como hacer que al adjuntar algo lo pueda quitar del correo y apartir de ahi enviarlo a mi pagina web, a donde esta alojada, cosa que investigare por que no tengo ni idea, como pasar ese archivo o como tomarlo, saludos y gracias nuevamente :)
  #21 (permalink)  
Antiguo 10/03/2012, 12:38
 
Fecha de Ingreso: marzo-2012
Mensajes: 26
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: Sistema de Tickets como leer mails desde php cada cierto tiempo

Hola que tal ocp001a se que ya te he preguntado un buen de cosas, sorry y no se si me puedas decir si con esta libreria es posible pasar los archivos adjuntos que esten dentro de la bandeja de email y pasarlos a mi pagina web, y una cosa mas estuve buscando algun comando o alguna forma de como eliminar los correos que son leidos y convertidos en tickets, no se si tu hagas algo parecido pero podrias decirme si es posible esto con esta libreria o si es posible hacer eso :S de antemano muchisimas gracias y disculpa por abusar de la ayuda, solo que no hay nadie mas a quien preguntar, nadie mas ah opinado del tema, saludos y muchas gracias
  #22 (permalink)  
Antiguo 10/03/2012, 12:57
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Sistema de Tickets como leer mails desde php cada cierto tiempo

Cuando hay adjuntos, en el array de resultado te aparece si haces el var_dump

$results["Attachments"] ;
si a éste le haces otro var_dump, verás que tiene entre otras cosas dos datos importantes:
$results["Attachments"]["FileName"]//nombre del archivo.

y

$results["Attachments"]["Data"]//contenido del archivo.

Y bueno, dentro de la clase, viene un método para el borrado:

$pop3->DeleteMessage($message);

Sin ánimo de ofender, entre más resultados puedas obtener de tu parte sin preguntar, más aprenderás.
  #23 (permalink)  
Antiguo 10/03/2012, 13:27
 
Fecha de Ingreso: marzo-2012
Mensajes: 26
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: Sistema de Tickets como leer mails desde php cada cierto tiempo

gracias nuevamente ocp001a y entiendo el consejo que me das y no te preocupes se que deberia de meterme mas en el tema y creeme que lo hare, por que si tiene un buen de funciones pero como te repito no entiendo del todo aun, y aparte por motivos de presion aqui en donde estoy me cerre, busque en varios lugares la forma y nada, muchas gracias por toda la ayuda y disculpa nuevamente por tantas preguntas que hice, saludos y GRACIAS :) ocp001a
  #24 (permalink)  
Antiguo 14/03/2012, 17:59
 
Fecha de Ingreso: marzo-2012
Mensajes: 26
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: Sistema de Tickets como leer mails desde php cada cierto tiempo

Holas de nuevo :S en este hilo, espero que alguien me pueda ayudar ya que no se si ocp001a pueda ayudarme esta ocasion, estuve buscando dentro de la libreria que me recomendaron dentro de este mismo post, y todo funciona muy bien, los correos los leos y genero los tickets y todo muy bien, excepto que me encontre con un problema, la forma en como puedo traerme los Adjuntos y pasarlos a mi sistema, a una carpeta con nombre 'Adjuntos' que tengo en mi sitio, ya hice varias pruebas y sinceramente no he podido y tampoco habia querido postear de nuevo por que ya he dado muchos problemas con este tema por aqui :S:S:S, si alguien me puede ayudar como copiar el Adjunto del Correo a otro sitio seria de gran ayuda si podria, ya que mi problema radica en que los tipos de archivos seran variados, desde tipos como: .rar, .txt., .xml, .xls, de todo un poco, imagenes o lo que el usuari oquiera subir dentro del correo, por esa razon no entiendo como poder tomar ese archivo adjunto y transferirlo a otro lugar, obtengo los nombres y la informacion nombrando los array y llegando al contenido, pero sinceramente no he podido con el archivo adjunto .... espero alguien me pudiera ayudar, muchas gracias :(
  #25 (permalink)  
Antiguo 14/03/2012, 18:06
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Sistema de Tickets como leer mails desde php cada cierto tiempo



Cita:
$results["Attachments"]["FileName"]//nombre del archivo.

y

$results["Attachments"]["Data"]//contenido del archivo.
Código PHP:
Ver original
  1. file_put_contents('Adjuntos/'.$results["Attachments"]["FileName"],$results["Attachments"]["Data"]);
  #26 (permalink)  
Antiguo 14/03/2012, 18:19
 
Fecha de Ingreso: marzo-2012
Mensajes: 26
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: Sistema de Tickets como leer mails desde php cada cierto tiempo

gracias por la ayuda ocp001a, en verdad gracias implementare la parte que mencionas, como te repito apenas estoy aprendiendo bien php, no soy un experto, y te agradezco la ayuda asi como tambien entiendo que te moleste el haber dado tanto problema con esto gracias, yo habia intentado hacer la copia del archivo algo asi como:

Cita:
$NombreArchivo = $_FILES['Filedata']['name'];
$tempFile = $_FILES['Filedata']['tmp_name'];
$targetPath = $_SERVER['DOCUMENT_ROOT'] . $_REQUEST['folder'] . '/';
pero no me salia y no sabia que existia la otra manera, o no se si le falta complementar y solo me estas dando la idea, de cualquier forma muchas gracias y de nuevo disculpa las molestias, saludos y ahora mismo lo probare.
  #27 (permalink)  
Antiguo 14/03/2012, 18:27
 
Fecha de Ingreso: marzo-2012
Mensajes: 26
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: Sistema de Tickets como leer mails desde php cada cierto tiempo

Muchas gracias ocp001a!!!!!!!!!!!!!!!! en verdad ya funciono!!!!!!!!!!!1 :P saludos nuevamente y GRACIAS!!!!!

Etiquetas: cada, mails, sistema, tickets
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 18:07.