Menú Principal

Porque falla?

Iniciado por mecosecho, 11 Agosto 2009, 18:43 PM

0 Miembros y 1 Visitante están viendo este tema.

mecosecho

hola amigos del foro, estoy enviado un formulario con php pero me muestra un problema:

Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in \\ip.ip.ip.ip\s002\midominio.com\gracias.php on line 42

y este es mi codigo php:

  <?php
$msg = "";

$field_name = array_keys($HTTP_POST_VARS);
$value_name = array_values($HTTP_POST_VARS);

for ($i=0;$i<count($field_name);$i++)
   {
   $msg .= "".$field_name[$i].": ".$value_name[$i]."\n";
   }

$recipient = "yo@midominio.com";
$subject = "chistes de pepito";
$mailheaders = "From: ".$nombre."\n";
$mailheaders .= "Reply-To: ".$mail."\n\n";   
                                 

mail($recipient, $subject, $msg, $mailheaders); //<- esta es la linea 42
?>
alguien sabe porque es este problema?  :huh: gracias de antemano.

SnakeDrak

Hola,

Necesitas un servidor de correos, te recomiendo Postfix.

Cita de: php
For the Mail functions to be available, PHP must have access to the sendmail binary on your system during compile time. If you use another mail program, such as qmail  or postfix, be sure to use the appropriate sendmail wrappers that come with them. PHP will first look for sendmail in your PATH, and then in the following: /usr/bin:/usr/sbin:/usr/etc:/etc:/usr/ucblib:/usr/lib. It's highly recommended to have sendmail available from your PATH. Also, the user that compiled PHP must have permission to access the sendmail binary.

Ese error es porque no tiene acceso al SMTP de tu servidor de correos (el protocolo para enviar mensajes)

Ojalá te sea de ayuda, si tienes un servidor de correo, mira bien el puerto y tal en php.ini.

http://es.php.net/manual/en/book.mail.php
Saludos!

mecosecho

Gracias Snakedrak por la ayuda, reemplaze una pagina en este servidor y se suponia que si enviaba los mails, pero ya cheque el formulario antiguo que utilizaba para enviar los mailsy no hay nada diferente del mio, entonces el problema sigue siendo el SMTP?

[u]nsigned

Cita de: mecosecho en 11 Agosto 2009, 18:43 PM
Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in \\ip.ip.ip.ip\s002\midominio.com\gracias.php on line 42

Como te dijo SnakeDrak tenes que tener un servidor SMTP en tu pc (localhost) para poder enviar mails. En caso de que no lo tengas leete ESTO.

Tambien te recomendaría probar el script en un servidor web, si no tenes uno podes usar alguno gratuito como www.000webhost.com.

Saludos

No hay atajo ante la duda, el misterio se hace aquí...
Se hace carne en cada uno, el misterio es existir!

дٳŦ٭



Con sangre andaluza :)


mecosecho

Cita de: дٳŦ٭ en 12 Agosto 2009, 01:13 AM
Usa php5...

hola дٳŦ٭, gracias por responder, yo tambien pense en esa opcion, podrias poner un ejemplo o un link en donde pueda consultar, gracias por la respuesta,

дٳŦ٭

Hola,

$HTTP_POST_VARS=php4
$_POST=php5

Saludos


Con sangre andaluza :)