Foros ZackYFileS

Foros ZackYFileS (http://foros.zackyfiles.com/index.php)
-   ARTES GRÁFICAS - Diseño, Firmas, WEBS. (http://foros.zackyfiles.com/forumdisplay.php?f=238)
-   -   Ayuda con formulario de contacto (http://foros.zackyfiles.com/showthread.php?t=539897)

WENO 26/10/2007 08:42

Ayuda con formulario de contacto
 
Wenas,


Yo creo que soy de lo más torpe, pues tengo el formulario creado con Dreamweaver CS3 y a la hora de mandar los datos al fichero "send.php" en el navegador no deja de salirme:

El sitio web no puede mostrar la página
HTTP 405
Causa más probable:
El sitio web tiene un error de programación.

Puede intentar lo siguiente:
Regresar a la página anterior.

Más información

Este error (HTTP 405 Método no permitido) significa que aunque Internet Explorer pudo conectarse al sitio web, el sitio tiene un error de programación.

Para obtener más información sobre errores HTTP, consulte la Ayuda.

Estoy totalmente perdido.

He creado mis campos con los mismos nombres del ejemplo, he copiado y pegado el código del archivo "send.php" y no hay manera... seguro que es una tontería pero no encuentro el error.

Agradecería muchisimo una ayuda.

publico el código que me sale en el formulario y el que tiene el archivo "send.php"

ARCHIVO SEND.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 = 'info@luxurydogs.es';
$asunto = 'Contacto desde Luxury Dog s ';

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

echo '&estatus=ok&';

?>



Muchas gracias de antemano.

Mi página web es: [URL="http://www.luxurydogs.es"]http://www.luxurydogs.es[/URL]

Coke-OFF 26/10/2007 17:54

en que servidor tienes la web? ese error viene a decir que el servidor no permite el metodo que has utilizado, en este caso el metodo "POST".

Coke.

WENO 26/10/2007 22:36

Hola,

Tengo la página en telefónica

Gracias nuevamente

Coke-OFF 27/10/2007 00:33

pues nada, cambia de hosting, como puedes comprobar una la condiciones de telefonica es...

[QUOTE]Su página personal deberá estar formada por páginas en formato html (no en formatos dinámicos como cgi, asp ...). Es decir, todas las páginas de su web deberán llevar tener extensión .htm[/QUOTE]

no se pueden usar script en php, cgi, asp, etc...por lo que evidentemente tampoco se permiten formularios (metodo "post") que necesitan esos script para funcionar correctamente.

tambien puedes, para no tener que pasar toda la web a otro hosting, poner solo el script y probar a ver si funciona el metodo "post".

Coke.

WENO 27/10/2007 01:07

Cita:

Iniciado por Coke (Mensaje 3069749)
pues nada, cambia de hosting, como puedes comprobar una la condiciones de telefonica es...



no se pueden usar script en php, cgi, asp, etc...por lo que evidentemente tampoco se permiten formularios (metodo "post") que necesitan esos script para funcionar correctamente.

tambien puedes, para no tener que pasar toda la web a otro hosting, poner solo el script y probar a ver si funciona el metodo "post".

Coke.

ok

¿Y otra alternativa la formato php? sin cambiar de servidor

Coke-OFF 27/10/2007 01:24

el servidor no soporta ningun script, ni php, ni asp, ni perl, no hay alternativa...create una cuenta aqui, por ejemplo

http://www.free-site-host.com/

sube el archivo send.php y en el formulario cambias la direccion del archivo en

action= "send.php"

pones

action= "http://tusitio.free-site-host.com/send.php"

y listo.

si no funciona el metodo post, lo mejor es cambiar de hosting por uno que soporte php en este caso.

Coke.

WENO 27/10/2007 20:13

Ok, tomo nota...

Muchísimas gracias

WENO 28/10/2007 02:15

Wenas, otra vez..

Acabo de dar de alta en http://www.free-site-host.com/

He subido el archivo "send.php" a este servidor... he cambiado la instrucción
action= "send.php"

por

action= "http://tusitio.free-site-host.com/send.php"


Y sigo teniendo el mismo error...

¿Que puede ser?

Coke-OFF 28/10/2007 02:28

el mismo?..

de momento te falta esto <*? sin asterisco, al principio del archivo send, por eso se ve todo el codigo...arreglalo y vuelve a probar.

Coke.

WENO 29/10/2007 00:52

Disculpa otra vez... pero esto sigue igual

Este es el formulario... ¿Puede estar aquí el error?

<*form "action="http://dalomegi.free-site-host.com/send.php" method="post" name="form1" class="Estilo12" id="form1"*>
<*label>
<*input name="Nombre" type="text" class="Estilo12" id="Nombre" onblur="MM_validateForm('Nombre','','R');return document.MM_returnValue" size="30" /*>
<*/label>
<*p>
<*label>
<*input name="Apellidos" type="text" class="Estilo12" id="Apellidos" onblur="MM_validateForm('Apellidos','','R');return document.MM_returnValue" size="50" /*>
<*/label>
<*/p>
<*p>
<*label>
<*input name="mail" type="text" class="Estilo12" id="mail" onblur="MM_validateForm('mail','','RisEmail');return document.MM_returnValue" size="30" /*>
<*/label><label></label>
<*label></label>
<*label></label>
<*/p>
<p>
<*label>
<*textarea name="Comentario" cols="55" rows="6" class="Estilo12" id="Comentario"*><*/textarea>
<*/label>
</p>
<p>
<*label>
<*input type="reset" name="Restablecer" id="Restablecer" value="Restablecer" /*>
<*input type="submit" name="Enviar" id="Enviar" value="Enviar" />
<*/label>
</p>
<*/form>

Gracias nuevamente

PD los asteriscos "*" son para que puedas ver el código...

Coke-OFF 29/10/2007 01:12

ese codigo esta bien y veo que has arreglado el archivo send, ahora el problema puede estar en que tengan desactivada la funcion mail() en ese servidor.

prueba con esto...en send.php busca

Cita:

mail($para, $asunto, utf8_decode($mensaje), $header);
y cambialo por ...

Cita:

if(mail($para, $asunto, utf8_decode($mensaje), $header)) {
echo 'El mensaje ha sido mandado correctamente';
}else {
echo 'error';
}
si te sale error en la pantalla, malo, malo, lo tienen desactivado, tendras que buscar un hosting que lo tenga habilitado

prueba con estos..

http://www.6te.net/
http://www.wesped.com/content/blogsection/5/34/

Coke.

WENO 29/10/2007 01:50

el mismo error....

El sitio web no puede mostrar la página
HTTP 405
Causa más probable:
El sitio web tiene un error de programación.

Puede intentar lo siguiente:
Regresar a la página anterior.

Más información

Una cosa que veo, es que el botón "Enviar" no muestra el enlace con el archivo send.php
¿es esto normal..?

WENO 29/10/2007 02:08

Podrias probar tú haber que tal...

http://www.luxurydogs.es/html/contacto.html

Coke-OFF 29/10/2007 02:25

con Firefox sale en pantalla "error" luego la funcion mail() no esta habilitada.

veo que utilizas IE, con el da ese error que comentas, puede ser por esto

<*form "action="http://dalomegi.free-site-host.com/send.php" method="post" name="form1

las " antes de action, osea "action= , quitalas.

Coke.

WENO 29/10/2007 16:22

muchas gracias,

Eran las P.... comillas. Pero efectivamente ahora sale error en el sevidor " Free-Site-Host."

probaremos con otros...

WENO 29/10/2007 17:06

Hola,

Con el servidor "wesped.com" todo perfecto. Pero ahora se me queda en la pantalla de enviado correctamente... ¿Que instrucción le puedo dar para que acto seguido me cierre esta pantalla y regrese a mi página?

gracias nuevamente

Coke-OFF 29/10/2007 19:49

puedes utilizar la funcion header()...

header("Refresh: 5; URL=http://www.luxurydogs.es");

tambien puedes darle formato a los mensajes...ejemplo.

Código PHP:

echo '<div style="text-align:center; font-weight:bold; font-size:30px;">el mensaje que quieras</div>'

y una pequeña modificacion para que no te llegen mensajes sin datos, quedaria asi...

[PHP]<?
$loc = 'http://www.luxurydogs.es';
$mens = 'el mensaje que quieras';
if($_POST) {
$nombre = $_POST['nombre'];
$mail = $_POST['mail'];
$empresa = $_POST['empresa'];
if($nombre && $mail && $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 = 'xxxxxxxxxxxxx';
$asunto = 'Contacto desde Luxury Dog s ';
if(mail($para, $asunto, utf8_decode($mensaje), $header)) {
$mens = 'el mensaje que quieras';
}else {
$mens = 'el mensaje que quieras';
}
}else {
$mens = 'el mensaje que quieras';
$loc = 'http://www.luxurydogs.es/html/contacto.html';
}
}
header("Refresh: 5; URL=".$loc);
echo '<div style="text-align:center; font-weight:bold; font-size:30px;">'.$mens.'</div>';
?>[/PHP]

antes de modificar el codigo del archivo send.php hazle una copia, por si acaso.

Coke.

WENO 29/10/2007 21:59

Esto que me has puesto ¿es tan solo copiar y pegar? ¿este código sustituye al de mi archivo send.php?

Mushisimas gracias....

Otra consulta... He probado con esta página:

Validar el sitio para tener un correcto HTML o XHTML (tengo algunos errores)

[url]http://validator.w3.org/check?uri=http%3A%...=Inline&group=0[/url]

pero estoy totalmente perdido en el tema de programación de páginas web.

WENO 29/10/2007 22:21

Ahora tengo el siguiente error:

Warning: Cannot modify header information - headers already sent by (output started at /home/luxurydo/public_html/send.php:30) in /home/luxurydo/public_html/send.php on line 33

Coke-OFF 29/10/2007 23:22

fallo mio, he editado el codigo, prueba otra vez.

Coke.

WENO 30/10/2007 00:58

MUCHISIMAS GRACIAS

Todo perfecto, no se como agradecertélo...

Gracias nuevamente...

Coke-OFF 30/10/2007 18:39

de nada...;)

pero veo que tienes otra vez mal el formulario....

las " y la direccion del script.

Coke.

WENO 30/10/2007 22:33

Tienes razón.. estoy trabajando en la página con 2 ordenadores y no he volcado la modificaciones del servidor al segundo ordenador, He actualizado y he jod.. el arreglo...

Gracias

WENO 30/10/2007 22:41

Solucionado el tema....

Muchisimas gracias... nuevamente

Coke-OFF 30/10/2007 23:34

sigue igual...:y)

Coke.

WENO 31/10/2007 10:47

El problema es que el servidor de telefónica tarda, aveces, como 2 horas en actualizar el contenido de las modificaciones...

No se si esto es normal. A veces es instantaneo y otras, las que mas, tarda unas 2 ó 3 horas.


La franja horaria es GMT +2. Ahora son las 16:57.

Powered por vBulletin™ Version 3.8.10
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.
Traducido por vBsoporte - vBulletin en español
ZackYFileS - Foros de Debate