Codigo formularios php

Resuelto/Cerrado
joelinjoelon Mensajes enviados 12 Fecha de inscripción martes, 14 de octubre de 2008 Estatus Miembro Última intervención martes, 7 de julio de 2009 - 14 oct 2008 a las 22:46
 Valentosta - 2 jun 2010 a las 17:08
Hola,
Necesito ayuda porfavor.
Me estoy creando una página web con el dreamweaver 8 y no se como hacer para que la gente que la visite dege sus comentarios en la misma página donde los escribe. Los cuadritos donde se deja en nombre, opinión, etc. ya los tengo hechos pero cuando escribo el mensage y pulso en el botón enviar el mensage desaparece.
No he comentado que la página no la tengo subida al Hosting y alomejor influye. Si esto tiene algo que ver me podrías decir como cubirla los datos que me proporcionó el Hosting foncionan bién porque se conecta sin problemas pero cuando le doy a la tecla de subir archivos hay un error, me pone: 1 archivo no se ha subido correctamente. ¿Qué hago mal?
Gracias.

5 respuestas

eloyseo Mensajes enviados 2 Fecha de inscripción lunes, 19 de enero de 2009 Estatus Miembro Última intervención martes, 20 de enero de 2009 1
19 ene 2009 a las 17:56
Por favor necesito ayuda! He revisado los códigos cientos de veces, hay algo que seguramente se me esta pasando y hace que no me funcione el código, cuando le doy enviar, me pone “no se puede mostrar pagina” el url que busca es http://www.serviciospartenaire.com.ar/enviar/enviar.php busca un .php y no un .html, tampoco envía el formulario, no se que puede ser…….
Les paso los códigos que tengo puesto.

El formulario.

<td>
<form id="form1" name="form1" method="post" action="enviar.php">
<p><span class="Estilo16">Nombre:<br />
<label>
<input name="nombre" type="text" id="nombre" />
</label>
<br />
Telefono:<br />
<input name="telefono" type="text" id="telefono" />
<br />
Email:<br />
<input name="email" type="text" id="email" />
<br />
Mensaje:<br />
<textarea name="mensaje" id="mensaje"></textarea>
</span><br />
<label>
<input type="submit" name="Submit" value="Enviar Formulario" />
</label>
</p>
</form>

</td>



El .php

<?php
$mail='info@serviciospartenaire.com.ar';
$nombre = $_POST['nombre'];
$telefono = $_POST['telefono'];
$email = $_POST['email'];
$mensaje = $_POST['mensaje'];
$thank="gracias.html";
$message = "
nombre:".$nombre."
telefono:".$telefono."
email:".$email."
mensaje:".$mensaje."";

if (mail($mail,"PARTENAIRE servicios profesionales",$message))
Header ("Location: $thank");

?>

agredeceria su ayuda, puesto que esto me esta quemando la cabeza....
27
Darkmaster Webmaster y Programador php
19 dic 2009 a las 20:54
hola gente veo que algunos aun se enrredan con los formularios boy a explicar como hacerlo ademas la esteica para que quede presentable al punto de venderlo a una empresa en conjunto con un paquete de diseno comercial de sitios web

para el codigo html seria asi

primero el codigo de hojas de estilo que es el que le va dar la presentacion a nuestro formulario asi :


<STYLE type=text/css>

.Estilo7 {
FONT-SIZE: 13px; COLOR: #999999; FONT-FAMILY: Arial
}


.boton {
BORDER-RIGHT: #cccccc 1px solid; BORDER-TOP: #cccccc 1px solid; FONT-SIZE: 10px; BORDER-LEFT: #cccccc 1px solid; COLOR: #666666; BORDER-BOTTOM: #cccccc 1px solid; FONT-FAMILY: Arial; BACKGROUND-COLOR: #ffffff; FONT-VARIANT: normal
}


.campos {
BORDER-RIGHT: #d3d8db 1px solid; BORDER-TOP: #d3d8db 1px solid; FONT-SIZE: 12px; BORDER-LEFT: #d3d8db 1px solid; COLOR: #0099ff; BORDER-BOTTOM: #d3d8db 1px solid; FONT-FAMILY: Arial, Helvetica, sans-serif
</STYLE>






segundo un script para nosotros elejir que campos iran como obligatorios en el formulario


<SCRIPT type=text/JavaScript>
<!--

function vacio(cadena)
{ // DECLARACION DE CONSTANTES
var blanco = " \n\t" + String.fromCharCode(13); // blancos
// DECLARACION DE VARIABLES
var i; // indice en cadena
var es_vacio; // cadena es vacio o no
for(i = 0, es_vacio = true; (i < cadena.length) && es_vacio; i++) // INICIO
es_vacio = blanco.indexOf(cadena.charAt(i)) != - 1;
return(es_vacio);
}
function salta_alfanumerico(cadena, i, otros)
{ // DECLARACION DE VARIABLES
var j; // indice en cadena
var car; // caracter de cadena
var alfanum; // cadena[j] es alfanumerico u otros
for(j = i, alfanum = true; (j < cadena.length) && alfanum; j++) // INICIO
{
car = cadena.charAt(j);
alfanum = alfanumerico(car) || (otros.indexOf(car) != -1);
}
if(!alfanum) // lee "alfanumX"
j--;
return(j);
}

/* dice si car es alfanumerico */
function alfanumerico(car)
{
return(alfabetico(car) || numerico(car));
}


/* dice si car es alfabetico */
function alfabetico(car) // DECLARACION DE CONSTANTES
{ // caracteres alfabeticos
var alfa = "ABCDEFGHIJKLMNOPQRSTUWXYZabcdefghijklmnopqrstuvxyz";
return(alfa.indexOf(car) != - 1); // INICIO
}


/* dice si car es numerico */
function numerico(car)
{ // DECLARACION DE CONSTANTES
var num = "0123456789"; // caracteres numericos
return(num.indexOf(car) != - 1); // INICIO
}


function email(cadena, otros)
{ // DECLARACION-INICIALIZACION VARIABLES
var i, j; // indice en cadena
var es_email = 0 < cadena.length; // cadena es email o no
i = salta_alfanumerico(cadena, 0, otros); // INICIO
if(es_email = 0 < i) // lee "alfanum*"
if(es_email = (i < cadena.length))
if(es_email = cadena.charAt(i) == '@') // lee "alfanum@*"
{
i++;
j = salta_alfanumerico(cadena, i, otros);
if(es_email = i < j) // lee "alfanum@alfanum*"
if(es_email = j < cadena.length)
if(es_email = cadena.charAt(j) == '\.')
{ // lee "alfanum@alfanum.*"
j++;
i = salta_alfanumerico(cadena, j, otros);
if(es_email = j < i) // lee "alfanum@alfanum.alfanum*"
while(es_email && (i < cadena.length))
if(es_email = cadena.charAt(i) == '\.')
{
i++;
j = salta_alfanumerico(cadena, i, otros);
if(es_email = i < j) // lee "alfanum@alfanum.alfanum[.alfanum]*"
i = j;
}
}
}
return(es_email);
}


function validaCampos(form1){
if(vacio(form1.nombre.value))
alert("Nombre no puede estar vacío");
else if(vacio(form1.empresa.value))
alert("Empresa no puede estar vacío");
else if(vacio(form1.movil.value))
alert("ciudad no puede estar vacío");
else if(vacio(form1.email.value))
alert("email de correo no puede estar vacio");
else if(vacio(form1.como.value))
alert("Como se entero de nosotros no puede estar vacío");
else if(vacio(form1.comentarios.value))
alert("Tus comentarios no puede estar vacío");

else
form1.submit();
return(false);
}
function enviar() {
//validaCampos();
document.getElementById("form1").submit();
}
//-->
</SCRIPT>





tercero el body

<TABLE cellSpacing=0 cellPadding=0 width=390 align=center border=0>
<TBODY>

<TR>
<TD width=40

<FORM id=form1 name=form1 onSubmit="return validaCampos(this)"
action=enviar.php method=post>
<TD width=329 bgColor=#f5f9fa>
<TABLE cellSpacing=0 cellPadding=0 width=270 align=center
border=0><TBODY>
<TR>
<TD class=Estilo7 width=349>Nombre</TD></TR>
<TR>
<TD><INPUT class=campos id=nombre size=30 name=nombre></TD></TR>
<TR>
<TD class=Estilo7>Equipo</TD></TR>
<TR>
<TD><INPUT class=campos id=empresa size=30 name=empresa></TD></TR>
<TR>
<TD class=Estilo7>Ciudad</TD></TR>
<TR>
<TD><SELECT class=campos id=ciudad size=1 name=ciudad> <OPTION
value=Medellin selected>Medellin</OPTION> <OPTION
value=Cali>Cali</OPTION> <OPTION
value=Bogota>Bogota</OPTION> <OPTION
value=Barranquilla>Barranquilla</OPTION> <OPTION
value=Pasto>Pasto</OPTION> <OPTION
value=Cartagena>Cartagena</OPTION> <OPTION
value=Manizales>Manizles</OPTION> <OPTION
value=Otra>Otra</OPTION></SELECT></TD></TR>
<TR>
<TD class=Estilo7>competencia</TD></TR>
<TR>
<TD><SELECT class=campos id=competencia size=1 name=competencia> <OPTION
value="Nuevo Usuario" selected>Nuevo Usuario</OPTION>
<OPTION value=Liga>Liga</OPTION> <OPTION
value=Torneo>Torneo</OPTION></SELECT></TD></TR>
<TR>
<TD class=Estilo7>Email</TD></TR>
<TR>
<TD><INPUT class=campos id=email size=30 name=email></TD></TR>
<TR>
<TD class=Estilo7>Sus comentarios </TD></TR>
<TR>
<TD><TEXTAREA class=campos id=comentarios name=comentarios rows=4 cols=40></TEXTAREA></TD></TR>
<TR>
<TD> </TD></TR>
<TR>
<TD><INPUT class=boton type=submit value=Enviar name=Submit></TD></TR></TBODY></TABLE></TD></FORM>



<br>
<br>
<br>
</div></TD>
</TR>

</HTML>




4 codigo php

<?php
$nombre = $_POST['nombre'];
$empresa = $_POST['empresa'];
$ciudad = $_POST['ciudad'];
$email = $_POST['email'];
$competencia = $_POST['competencia'];
$comentarios = $_POST['comentarios'];


$header = 'From: ' . $email . " \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 . " \r\n";
$mensaje .= "Equipo seleccionado " . $empresa . " \r\n";
$mensaje .= "Su e-mail es: " . $email . " \r\n";
$mensaje .= "Su ciudad es : " . $ciudad . " \r\n";
$mensaje .= "Tipo de competencia : " . $competencia . " \r\n";
$mensaje .= "Mensaje o comentarios : " . $comentarios . " \r\n";


$para = 'gmm155@gmail.com';
$asunto = 'prueba formulario';


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


?>
<h2>Gracias!</h2>

<p>Tu mensaje ha sido enviado, pronto nos pondremos en contacto con usted.</p>

<?php print $nombre; ?>

<br />
<br />
<a href="javascript:history.go(-1);">Volver Atras</a>
<br />
<br />
<a href="http://redpes2008colombia.site40.net">Volver Pagina inicio</a>

<body>
</body>
</html>





explico estilos de hoja en cascada
pues esto si es muy personal de cada uno pero estos estilos que les entrego hacen una presentacion realmente buena


explico script campos
ya aqui hay unas variables definidas que son id=nombre y el resto de las id si queremos poner un campo obligatorio o quitarlo debemos de modificar aca
if(vacio(form1.nombre.value))
alert("Nombre no puede estar vacío");
esta es la variable nombre solo con quitar la linea alerte ya quedara desabilitado como campo obligatortio
y si lo dejas como esta obiamente va obligatorio y asi haces con los demas alert


explico body
en el body esta definido campo de texto nombre este mismo que asoscia con la variable del codigo php asi
<TR>
<TD class=Estilo7 width=349>Nombre</TD></TR>
<TR>
<TD><INPUT class=campos id=nombre size=30 name=nombre></TD></TR>
el nombre que esta junto con class por asi llamarlo es el nombre de campo puede ser modificado tranquilamente
id nombre es la variable que asocia el campo con el php para su envio. este se puede cambiar por otro nombre pero esto implica que se tendria que cambiar en varias partes como son
la variable en php
$nombre
el envio post del php
$_POST['nombre'];
las variables del script
if(vacio(form1.nombre.value))
alert("Nombre no puede estar vacío");
y en la variable mensaje del php
$mensaje .= "Este mensaje fue enviado por " . $nombre . " \r\n";
y en la variable del campo
<TD><INPUT class=campos id=nombre size=30 name=nombre></TD></TR>
esto para que se asocie todo junto y funcione correctamente, asi que si vaz a cambiar los id del formulario mucho cuidado por que pone uno de estos valores que no cambies y algo fallara.
<FORM id=form1 name=form1 onSubmit="return validaCampos(this)" action=enviar.php method=post>
esta parte del codigo es donde nos indica el envio del formulario al archivo php es muy importante que siempre sea asi
action=enviar.php
y el nombre del archivo html que va a contener este codigo sea formulario.htm en el archivo formulario iran
los codigos de
1 hoja de estilos
2 script de campos
3 body
obligatorio este orden


explico codigo php
en este codigo se definene las variables y el metodo de envio que usaremos que son como esta ejemplo:
$nombre = $_POST['nombre'];

ademas los encabezados fundamentales para el procesamiento de nuestros datos y envio al nyestro correo
ejemplo :
$header = 'From: ' . $email . " \r\n";
$header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
$header .= "Mime-Version: 1.0 \r\n";
$header .= "Content-Type: text/plain";

esto no se debe de tocar para nada a menos de que tengas buenos conociemientos de php y que bayas a usar otro tipo de metodo o imponer un tipo de ciclo para el envio de los datos

la variable emnsaje es donde tu pones como quieres que reciba los datos en tu mail ejemplo
$mensaje .= "Este mensaje fue enviado por " . $nombre . " \r\n";
con esto aparecera en tu mail
Este mensaje fue enviado por
esas frases puedes cambiarlas libremente por las que quieras no afectaramn en nada el formulario

ahora vamos para las variable de envio
$para = 'gmm155@gmail.com';
$asunto = 'prueba formulario';
la variable para es la mas importante pues esta es la que debemos modificar y poner alli nuestro correo hay es dodne nos llegara la imformacion
la variable asunto es dodne indicaremos si es importante o no nuestro mensaje esta variable no es obligatoria


explico respuesta automatica

<h2>Gracias!</h2>

<p>Tu mensaje ha sido enviado, pronto nos pondremos en contacto con usted.</p>

<?php print $nombre; ?>

<br />
<br />
<a href="javascript:history.go(-1);">Volver Atras</a>
<br />
<br />
<a href="http://redpes2008colombia.site40.net">Volver Pagina inicio</a>

aqui le etamos dando una respuesta a la pagina para que despues de undir el boton enviar no quede en blanco y haya algo que indique que el mensaje fue enviado

el archivo que va contener todo el dodigo php incluyendo la parte de respuesta automatica se llamara enviar.php por ultimo estos dos archivos deden de ir juntos ya sea en la raiz o carpeta otro dato importante es que tu hosting de alojamiento ya sea gratuito o pago debe de tener el servicio php para poner a funcionar tu formulario en la web. Para probar el formulario de modo offline recomiendo el dreamwever

gracias espero haberdado un buen aporte y pautas sifocoenytes como para que ustedes pyedan tener su propio formulario lo unico que queda faltando es que utedes con ceratividad pongan una tabla fondo o cuadro para su formulario para darle una presentacion final

aqui les dejo como quedo trabajando el mio y el diseno que le di anadiendole una imagenes

http://darkmastercol.site50.net/formulario/formulario.htm
0