Foros del Web » Programando para Internet » PHP »

Class.smtp.php y class.mail.php (warnings y fatal error)

Estas en el tema de Class.smtp.php y class.mail.php (warnings y fatal error) en el foro de PHP en Foros del Web. Buenos Dias estoy tratando de enviar un correo a una base de datos de proveedores que tengo pero me da los siguientes errores: Código: Warning: ...
  #1 (permalink)  
Antiguo 25/02/2009, 12:37
 
Fecha de Ingreso: diciembre-2008
Ubicación: http://www.solucionesrios.tk/
Mensajes: 413
Antigüedad: 15 años, 4 meses
Puntos: 19
Exclamación Class.smtp.php y class.mail.php (warnings y fatal error)

Buenos Dias estoy tratando de enviar un correo a una base de datos de proveedores que tengo pero me da los siguientes errores:

Código:
Warning: fsockopen() [function.fsockopen]: php_network_getaddresses: getaddrinfo failed: Host desconocido. in C:\wamp\www\Activos2\class.smtp.php on line 87

Warning: fsockopen() [function.fsockopen]: unable to connect to mail.marshallyasociados.com:26 (php_network_getaddresses: getaddrinfo failed: Host desconocido. ) in C:\wamp\www\Activos2\class.smtp.php on line 87

Warning: fsockopen() [function.fsockopen]: php_network_getaddresses: getaddrinfo failed: Host desconocido. in C:\wamp\www\Activos2\class.smtp.php on line 87

Warning: fsockopen() [function.fsockopen]: unable to connect to mail.marshallyasociados.com:26 (php_network_getaddresses: getaddrinfo failed: Host desconocido. ) in C:\wamp\www\Activos2\class.smtp.php on line 87

Warning: fsockopen() [function.fsockopen]: php_network_getaddresses: getaddrinfo failed: Host desconocido. in C:\wamp\www\Activos2\class.smtp.php on line 87

Warning: fsockopen() [function.fsockopen]: unable to connect to mail.marshallyasociados.com:26 (php_network_getaddresses: getaddrinfo failed: Host desconocido. ) in C:\wamp\www\Activos2\class.smtp.php on line 87

Fatal error: Maximum execution time of 30 seconds exceeded in C:\wamp\www\Activos2\enviar_correo2.php on line 38
Formulario para enviar correo php (los detinatarios los capturo en una consulta anterior)
Enviar_Correo.php

Código HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Sistema de Inventario MyA</title>
<script src="SpryAssets/SpryValidationTextField.js" type="text/javascript"></script>
<script src="SpryAssets/SpryValidationTextarea.js" type="text/javascript"></script>
<link href="SpryAssets/SpryValidationTextField.css" rel="stylesheet" type="text/css" />
<link href="SpryAssets/SpryValidationTextarea.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
<!--
function MM_validateForm() { //v4.0
  if (document.getElementById){
    var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
    for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=document.getElementById(args[i]);
      if (val) { nm=val.name; if ((val=val.value)!="") {
        if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
          if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
        } else if (test!='R') { num = parseFloat(val);
          if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
          if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
            min=test.substring(8,p); max=test.substring(p+1);
            if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
      } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
    } if (errors) alert('The following error(s) occurred:\n'+errors);
    document.MM_returnValue = (errors == '');
} }
//-->
</script>
</head>

<body>
<form action="enviar_correo2.php" method="post" name="form1" id="form1" enctype="multipart/form-data" onsubmit="MM_validateForm('remitente','','RisEmail','password','','R','nombre','','R','asunto','','R','mensaje','','R');return document.MM_returnValue">
  <p align="center">&nbsp;</p>
  <div align="center">
    <table width="740" border="0" align="left">

      <tr>
        <td width="328"><div align="right"><strong>Correo Remitente:</strong></div></td>
        <td width="402"><span id="sprytextfield3">
          <label>
          <input type="text" name="remitente" id="remitente" />
          </label>
        <span class="textfieldRequiredMsg">Este valor es requerido.</span></span>
          <input type="hidden" name="destinos" id="destinos" readonly="readonly" value="<?php echo $_POST['consulta2']; ?>"/></td>
      </tr>

      <tr>
        <td><div align="right"><strong>Password Correo Remitente:</strong></div></td>
        <td><span id="sprytextfield2">
          <label>
          <input type="password" name="password" id="password" />
          </label>
        <span class="textfieldRequiredMsg">Este valor es requerido.</span></span></td>
      </tr>
      <tr>
        <td><div align="right"><strong>Nombre Remitente:</strong></div></td>
        <td><span id="sprytextfield1">
          <label>
          <input type="text" name="nombre" id="nombre" />
          </label>
        <span class="textfieldRequiredMsg">Este valor es requerido.</span></span></td>
      </tr>
      <tr>
        <td><div align="right"><strong>Asunto:</strong></div></td>
        <td><span id="sprytextfield8">
          <label>
          <input type="text" name="asunto" id="asunto" />
          </label>
        <span class="textfieldRequiredMsg">Este valor es requerido.</span></span></td>
      </tr>
      <tr>
        <td><div align="right"><strong>Adjunto:</strong></div></td>
        <td><span id="sprytextfield9">
          <label>
          <input type="file" name="archivo" id="archivo" />
          </label>
        <span class="textfieldRequiredMsg">Este valor es requerido.</span></span></td>
      </tr>
      <tr>
        <td><div align="right"><strong>Mensaje:</strong></div></td>
        <td><span id="sprytextarea2">
          <label>
          <textarea name="mensaje" id="mensaje" cols="45" rows="5"></textarea>
          </label>
        <span class="textareaRequiredMsg">Este valor es requerido.</span></span></td>
      </tr>
      <tr>
        <td><div align="right"></div></td>
        <td><label>
          <input type="submit" name="Submit" id="button" value="Enviar" />
        </label>
          <label>
          <input type="reset" name="button2" id="button2" value="Reestablecer" />
        </label></td>
      </tr>
    </table>
    <p>&nbsp; </p>
  </div>
  <p align="center">&nbsp;</p>
  <p align="center">&nbsp;</p>
  <p align="center">&nbsp;</p>
  <p align="center">&nbsp;</p>
  <p align="center">&nbsp;</p>
  <p align="center">&nbsp;</p>
  <p align="center">&nbsp;</p>
  <p align="center">&nbsp;</p>
  <p align="center"><a href="busqueda_proveedor.php">Regresar/Nueva Búsqueda</a></p>
  <p>&nbsp;</p>
</form>

<script type="text/javascript">
<!--
var sprytextfield3 = new Spry.Widget.ValidationTextField("sprytextfield3");
var sprytextfield8 = new Spry.Widget.ValidationTextField("sprytextfield8");
var sprytextfield9 = new Spry.Widget.ValidationTextField("sprytextfield9");
var sprytextarea2 = new Spry.Widget.ValidationTextarea("sprytextarea2");
var sprytextfield1 = new Spry.Widget.ValidationTextField("sprytextfield1");
var sprytextfield2 = new Spry.Widget.ValidationTextField("sprytextfield2");
//-->
</script>
</body>
</html> 
Aca les dejo lo que programe para el envio del correo (la accion del formulario:
Enviar_Correo2.php
Código PHP:
<?php 
include "conectarse.php";
$consulta mysql_query($_POST['destinos'])  or die(mysql_error());
$row mysql_fetch_assoc($consulta);
$intentos=0;
do { 
$varname $_FILES['archivo']['name'];
$vartemp $_FILES['archivo']['tmp_name']; 
//Incluimos la función
require_once('includes/class.phpmailer.php');
//Creamos la instancia de la clase PHPMailer y configuramos la cuenta
$mail=new PHPMailer();
$mail->Mailer="smtp";
$mail->Helo "www.marshallyasociados.com"//Muy importante para que llegue a hotmail y otros
$mail->SMTPAuth=true;
$mail->Host="mail.marshallyasociados.com";
$mail->Port=26//depende de lo que te indique tu ISP. El default es 25, pero nuestro ISP lo tiene puesto al 26
$mail->Username=$_POST['remitente'];
$mail->Password=$_POST['password'];
$mail->From=$_POST['remitente'];;
$mail->FromName="Solicitud de Precios";
$mail->Timeout=60;
$mail->IsHTML(true);
//Enviamos el correo
$mail->AddAddress($row['correo']); //Puede ser Hotmail
$mail->Subject=$_POST['asunto'];
$mail->Body="<p>Texto lo suficientemente largo y con pocos links para que no sea interpretado como SPAM</p><p>Es importante que el texto sea lo suficientemente largo, ya que si sólo tienes por ejemplo, una frase y un link, asume tanto Outlook como la mayoría de los destinatarios, que se trata de SPAM</p><p>Pero si tu texto es largo y tienes un link a <a href\"http://www.forosdelweb.com\">Foros del web</a> por ejemplo, funcionará perfectamente bien.</p>";
$mail->AltBody="Texto que debe decir lo mismo que el Body, pero sin etiquetas HTML";
$exito $mail->Send();
if (
$varname != ""
    {
        
$mail->AddAttachment($vartemp$varname);
    }
while ((!
$exito) && ($intentos 5)) 
      {
    
sleep(5);
         
//echo $mail->ErrorInfo;
         
$exito $mail->Send();
         
$intentos=$intentos+1;    
    }
if(
$exito){
     
$mail->ClearAddresses();
     echo 
"<strong>Mensaje enviado exitosamente al correo: </strong>".$row['correo'];
    }
else {
      
$mail->ClearAddresses();
      echo 
"<strong>Error al enviar mensaje al correo: </strong>".$row['correo'];
      }  
} while (
$row mysql_fetch_assoc($consulta));
include 
"desconectarse.php";
?>
Y por ultimo creo que el problema lo tengo o en el ultimo archivo o en la configuracion de la clase, cualquier ayuda es buena, gracias por leer mi nota, saludos.
  #2 (permalink)  
Antiguo 25/02/2009, 12:52
Avatar de ferbux  
Fecha de Ingreso: mayo-2007
Ubicación: por ahí intentado ayudar
Mensajes: 823
Antigüedad: 17 años
Puntos: 6
Respuesta: Class.smtp.php y class.mail.php (warnings y fatal error)

Hola warbandit69,

Lo que te recomiendo es que vayas a tu clase class.smtp.php y verifiques que tengas configurados correctamente los datos de tu servidor (nombre o dir ip, puerto, etc...), ya sea que sea propio (tuyo) o el server que te hospeda.

Saludos!!!
__________________
"Eres grande por que caminas entre gigantes"
  #3 (permalink)  
Antiguo 25/02/2009, 13:03
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Class.smtp.php y class.mail.php (warnings y fatal error)

el error es muy claro

Cita:
Warning: fsockopen() [function.fsockopen]: unable to connect to mail.marshallyasociados.com:26 (php_network_getaddresses: getaddrinfo failed: Host desconocido. ) in C:\wamp\www\Activos2\class.smtp.php on line 87
no se puede conectar a mail.marshallyasociados.com:26

ahora, no hay que ir a class.smtp.php ¡para nada!!

hay que configurar correctamente esto...
Código PHP:
$mail->Host="mail.marshallyasociados.com";

// y por supuesto, el puerto correcto!
$mail->Port=26
simple, ¿no??
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 25/02/2009, 13:05
 
Fecha de Ingreso: diciembre-2008
Ubicación: http://www.solucionesrios.tk/
Mensajes: 413
Antigüedad: 15 años, 4 meses
Puntos: 19
Respuesta: Class.smtp.php y class.mail.php (warnings y fatal error)

Pregunto, en estos momentos tenemos problemas con nuestro correo empresarial, por bloqueo de nuestro IP por nuestro ISP por varias razones, podemos tener internet mas no recibir ni enviar correo, estro podria ser el problema?
  #5 (permalink)  
Antiguo 25/02/2009, 13:10
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Class.smtp.php y class.mail.php (warnings y fatal error)

Cita:
Iniciado por warbandit69 Ver Mensaje
[...] por bloqueo de nuestro IP por nuestro ISP por varias razones, podemos tener internet mas no recibir ni enviar correo [...]
y todavia te lo preguntas ¿???

Cita:
Iniciado por warbandit69 Ver Mensaje
[...] estro podria ser el problema? [...]

caray!!!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #6 (permalink)  
Antiguo 25/02/2009, 13:15
 
Fecha de Ingreso: diciembre-2008
Ubicación: http://www.solucionesrios.tk/
Mensajes: 413
Antigüedad: 15 años, 4 meses
Puntos: 19
Respuesta: Class.smtp.php y class.mail.php (warnings y fatal error)

Pues si, pero solo con ese correo, podemos recibir y enviar de otros correos gmail hotmail, etc...
  #7 (permalink)  
Antiguo 26/02/2009, 09:45
 
Fecha de Ingreso: diciembre-2008
Ubicación: http://www.solucionesrios.tk/
Mensajes: 413
Antigüedad: 15 años, 4 meses
Puntos: 19
Respuesta: Class.smtp.php y class.mail.php (warnings y fatal error)

Sigue dando problemas siempre me da error al final, y ahora no estamos bloqueados, me dice "no se puede enviar el correo"
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 07:11.