Foros del Web » Administración de Sistemas » Shared Hosting y VPS »

Hosting y php

Estas en el tema de Hosting y php en el foro de Shared Hosting y VPS en Foros del Web. Ante todo buenas a tod@s, Tengo un problema y es que no consigo hacer funcionar un pequeño y simple formulario html+php. La cuestión es que ...
  #1 (permalink)  
Antiguo 25/03/2012, 10:56
 
Fecha de Ingreso: febrero-2012
Mensajes: 4
Antigüedad: 12 años, 2 meses
Puntos: 0
Pregunta Hosting y php

Ante todo buenas a tod@s,

Tengo un problema y es que no consigo hacer funcionar un pequeño y simple formulario html+php. La cuestión es que en mi servidor personal consigo que funcione pero quiero implantarlo en otro servidor distinto y nada. Les paso a comentar el código.

Esta es la parte del archivo html:

<FORM id="contacto" name="contacto" action="enviar.php" method="POST">
<label>Nombre <input name="nombre" type="text" id="nombre" size="42"/></label>
<label>Empresa<input name="empresa" type="text" id="empresa" size="31"/></label>
<label>E-mail <input name="mail" type="text" id="mail" size="43"/></label>
<label>Mensaje<br>
<textarea name="mensaje" cols="40" rows="8" id="mensaje"></textarea> </label>
<input type="submit" name="Submit" value="Enviar"/>
</FORM>
</body>
</html>


Y esta la parte del archivo enviar.php:

<?php
$nombre = $_POST['nombre'];
$mail = $_POST['mail'];
$empresa = $_POST['empresa'];

$header = 'From: ' . $mail . " \r\n";
$header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
$header .= "Mime-Version: 1.0 \r\n";
$header .= "Content-Type: text/plain";

$mensaje = "Este mensaje fue enviado por " . $nombre . ",
de la empresa " . $empresa . " \r\n";
$mensaje .= "Su e-mail es: " . $mail . " \r\n";
$mensaje .= "Mensaje: " . $_POST['mensaje'] . " \r\n";
$mensaje .= "Enviado el " . date('d/m/Y', time());

$para = '[email protected]';
$asunto = 'Asunto del mail recibido';

mail($para, $asunto, utf8_decode($mensaje), $header);

echo 'Mensaje enviado correctamente';
?>


Con estos dos archivos tal cual, en mi servidor funciona perfectamente bajo php 5.2.17. Ahora bien, si intento hacerlos funcionar en otro serv también bajo php 5.2.17 no hay manera, todo parece que vaya bien pero no logro recibir ningún email...

¿Alguien tiene la menor idea por lo cual pueda venir el problema?

Saludos y muchas gracias por vuestro tiempo.
  #2 (permalink)  
Antiguo 25/03/2012, 11:35
Avatar de Datacenter1
Usuario no validado
 
Fecha de Ingreso: agosto-2005
Ubicación: Chicago
Mensajes: 1.982
Antigüedad: 18 años, 8 meses
Puntos: 144
Respuesta: Hosting y php

Muchos proveedores no enviarán correo si el campo from no es un usuario válido local algo como [email protected]

Si estás en un servidor gratuito muchos bloquean la función mail de php

y como sugerencia es mucho mejor enviar el correo vía autentificación SMTP, tendrás menos probabilidades de que sea marcado como spam y no tendrás problemas como el que describes
  #3 (permalink)  
Antiguo 25/03/2012, 11:52
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Respuesta: Hosting y php

Cita:
Iniciado por Akoj Ver Mensaje
...
mail($para, $asunto, utf8_decode($mensaje), $header);
...
Puedes comprobar si al menos se comunica con el servidor de correo (aunque no te asegura que el email sea enviado...)
Cambia esa linea por esto:
Código PHP:
if(mail($para$asuntoutf8_decode($mensaje), $header)){
echo 
"mail enviado... o eso debería";
}else{
echo 
"error con el servidor de correo!";

Te recomiendo que verifiques con tu proveedor si tienen activado el envio de correos. Independientemente de esto, si te lo confirman, lo ideal sería usar la clase phpmailer (o alguna similar) mejor que la funcion mail de php.
  #4 (permalink)  
Antiguo 25/03/2012, 15:21
 
Fecha de Ingreso: febrero-2012
Mensajes: 4
Antigüedad: 12 años, 2 meses
Puntos: 0
Respuesta: Hosting y php

Muchas gracias por vuestra rápida respuesta.

Datacenter1 es un hosting gratuito, así que podría ser que la función mail estubiera bloqueada...

He probado este método http://blog.xpress.com.mx/2010/07/uso-de-formulario-con-phpmailer/ y tampoco funciona. En principio utiliza los servidores SMTP y POP3. En este caso, aunque la función mail esté bloqueada, tendría que funcionar verdad? Lo he probado en mi servidor y funciona a la perfección.

DooBie he probado lo que me has comentado y no me da error pero tampoco recibo nada. Como comento más arriba, he probado también con la clase phpmailer y nada. La duda que tengo ahora es si con phpmailer también pueden restringirme el envío de emails.

Muchas gracias.

Última edición por Akoj; 25/03/2012 a las 15:40
  #5 (permalink)  
Antiguo 25/03/2012, 15:45
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Respuesta: Hosting y php

Si es un servidor gratuito no creo que puedas enviar correos, ni siquiera con phpmailer, ya que ademas de tener la funcion mail bloqueada, tendrá las conexiones externas bloqueadas tambien.
Pero bueno, para asegurarte, prueba a enviarles un email a los del hosting, a ver que te cuentan, igual puedes usar sus propios servidores smtp para el envio de correo (aunque lo dudo.)
  #6 (permalink)  
Antiguo 25/03/2012, 17:42
 
Fecha de Ingreso: febrero-2012
Mensajes: 4
Antigüedad: 12 años, 2 meses
Puntos: 0
Respuesta: Hosting y php

Mandaré un mail a ver que dicen...

No se si tendrá algo que ver pero en el "Control Panel" en el apartado de Correo sale esto:

Configuraciones Manuales
Usuario del Servidor de Correo: dysserve
Servidor de Correo Entrante: mail.dysserveis.com
Servidor de Correo Entrante: (SSL)
Servidor de Correo Saliente: mail.dysserveis.com (servidor requiere autenticación) port 25
Servidor de Correo Saliente: (SSL) astro.sered.net (servidor requiere autenticación) port 465
Protocolos de Correo Entrante Suportados: POP3, POP3S (SSL/TLS), IMAP, IMAPS (SSL/TLS)
Protocolos de Servidor de Correo Saliente Suportados : SMTP, SMTPS (SSL/TLS)

De todas maneras a ver si me dicen si hay algo capado.

Saludos y gracias!
  #7 (permalink)  
Antiguo 26/03/2012, 02:53
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Respuesta: Hosting y php

Cita:
Iniciado por Akoj Ver Mensaje
Mandaré un mail a ver que dicen...

No se si tendrá algo que ver pero en el "Control Panel" en el apartado de Correo sale esto:

Configuraciones Manuales
Usuario del Servidor de Correo: dysserve
Servidor de Correo Entrante: mail.dysserveis.com
Servidor de Correo Entrante: (SSL)
Servidor de Correo Saliente: mail.dysserveis.com (servidor requiere autenticación) port 25
Servidor de Correo Saliente: (SSL) astro.sered.net (servidor requiere autenticación) port 465
Protocolos de Correo Entrante Suportados: POP3, POP3S (SSL/TLS), IMAP, IMAPS (SSL/TLS)
Protocolos de Servidor de Correo Saliente Suportados : SMTP, SMTPS (SSL/TLS)

De todas maneras a ver si me dicen si hay algo capado.

Saludos y gracias!
Si tienes esa configuración, entonces prueba con phpmailer con esos datos.
Primero te creas una cuenta de correo que sea solo para enviar correo, y en la clase phpmailer, la usas en la configuración, junto con los datos de smtp que has puesto, y pruebas.
Para ir haciendo algo mientras te contestan, si es que lo hacen.

Etiquetas: hosting, php, servidor
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 18:36.