cómo hacer un formulario

Hola amig@s!!!
me gustaría saber si hay algún tutorial o si alguien me puede ayudar a hacer un formulario, para que el usuario que quiera contactar conmigo lo haga a través de él.

Muchas gracias por todo!! :D
Un saludo
Hola netsai,

Para enviar el formulario puedes usar melodysoft.com. Aquí puedes encontrar formularios de ayuda y cómo insertar su código, es cuestión de saber buscar en el menú de la izquierda.

En este mismo foro también hay varios tutoriales.

El primero es muy completo pero es una lástima que esté hecho a "saco paco".
Quien tenga la santa paciencia de leerlo entero le doy un premio :lol:

http://www.comocreartuweb.com/phpBB2/ftopic4254.html

El segundo es más cutre.(Que voy a decir, lo he hecho yo!. Se admiten sugerencias)

http://www.comocreartuweb.com/phpBB2/ftopic4619.html
qué jaleo!!! no doy una donde poner mis post!!!
solidaria perdona por el trabajo doble que te doy teniendo que mover mis post, tendré más cuidado en el futuro, y gracias por tu ayuda,
un saludo
JEJEE, ESTE ES MI TEMA.....
Netsi, si decides no hacerlo con melody y tu servidor soporta el lenguaje php, te paso el mio, que mi trabajito me ha costado, por lo menos que alguien más lo use

un saludo :wink:
volvoreta escribió:JEJEE, ESTE ES MI TEMA.....
Netsi, si decides no hacerlo con melody y tu servidor soporta el lenguaje php, te paso el mio, que mi trabajito me ha costado, por lo menos que alguien más lo use

un saludo :wink:

Hola Volvoreta!!!
Si me lo pasas, la verdad es que te lo agradecería muuuuucho!!!

Un saludo :D
El formulario es este, es sencillito, tienes que crear 4 hojas

En la hoja Html donde va el formulario, se escribe este código dentro del body:

<table width="99%"  border="0px" cellpadding="0px" cellspacing="0px">
        <FORM action="envio.php"  method="get">
          
          <tr>
            <td class="contacto1">Nombre y apellidos:*</td>
            <td class="contacto"><input name="nombre" type="text " size="32"></td>
          </tr>
          <tr>
            <td class="contacto1">Nombre de empresa :</td>
            <td class="contacto" ><INPUT TYPE="text" NAME="empresa" SIZE="32"></td>
          </tr>
          <tr>
            <td class="contacto1">Poblaci&oacute;n*:</td>
            <td class="contacto"><INPUT TYPE="text" NAME="poblacion"SIZE="32"></td>
          </tr>
          <tr>
            <td class="contacto1">Profesi&oacute;n:</td>
            <td class="contacto"><INPUT TYPE="text" NAME="profesion"  SIZE="32"></td>
          </tr>
          <tr>
            <td class="contacto1">Tel&eacute;fono fijo:</td>
            <td class="contacto"><INPUT NAME="telefonof" TYPE="text"  SIZE="12" MAXLENGTH="12"></td>
          </tr>
          <tr>
            <td class="contacto1">Tel&eacute;fono m&oacute;vil: *</td>
            <td class="contacto">
              <INPUT TYPE="text" NAME="telefonomovil"  SIZE="12" MAXLENGTH="12"></td>
          </tr>
          <tr>
            <td class="contacto1">e-mail: *</td>
            <td class="contacto"><INPUT TYPE="text" NAME="email"  SIZE="32"></td>
          </tr>
          <tr>
            <td class="contacto1">Realice su consulta: *</td>
            <td class="contacto"><TEXTAREA NAME="texto" ROWS="5"COLS="25"></TEXTAREA></td>
          </tr>
          <tr>
            <td class="contacto1"><INPUT TYPE="submit" VALUE= "Enviar "></td>
            <td class="contacto">* Campos obligatorios</td>
          </tr>
        </FORM>
      </table>

En una hoja que se llame envio.php, escribes esto, tal cual:

<?
/* aqui se incializan variables de PHP */
if (phpversion() >= "4.2.0") {
if ( ini_get('register_globals') != 1 ) {
$supers = array('_REQUEST',
'_ENV',
'_SERVER',
'_POST',
'_GET',
'_COOKIE',
'_SESSION',
'_FILES',
'_GLOBALS' );

 

foreach( $supers as $__s) {
if ( (isset($$__s) == true) && (is_array( $$__s
) == true) ) extract( $$__s, EXTR_OVERWRITE );
}
unset($supers);
}
} else {
if ( ini_get('register_globals') != 1 ) {

$supers = array('HTTP_POST_VARS',
'HTTP_GET_VARS',
'HTTP_COOKIE_VARS',
'GLOBALS',
'HTTP_SESSION_VARS',
'HTTP_SERVER_VARS',
'HTTP_ENV_VARS'
);
$_GET['nombre']=$nombre;   
$_GET['edad']=$edad; 
foreach( $supers as $__s) {
if ( (isset($$__s) == true) && (is_array( $$__s
) == true) ) extract( $$__s, EXTR_OVERWRITE );
}
unset($supers);
}
}
/* ------------------------------------------------------------------ */
/* DE AQUI EN ADELANTE PUEDES EDITAR EL ARCHIVO */
/* ------------------------------------------------------------------ */
/* define cual va a ser la hoja que se abrirá en caso de error*/
$login_page = error.html";
/* reclama que estén rellenos los campos obligatorios del formulario  */
if($email=="")
{include($login_page);
exit();
}
if($nombre=="")
{include($login_page);
exit();
}
if($poblacion=="")
{include($login_page);
exit();
}
if($texto=="")
{include($login_page);
exit();
}
/* ------------------------------------------------------------------ */
/* aquí se especifica la pagina de respuesta en caso de envío exitoso */
$respuesta="correcto.html";


/* AQUÍ ESPECIFICAS EL CORREO AL CUAL  SE ENVÍAN LOS DATOS */
$para ="[correo eliminado] ";

/* AQUI ESPECIFICAS EL SUJETO DEL EMAIL */
$sujeto = "Formulario de informacion";

/* aquí se construye el encabezado del correo*/ 
$encabezado = "From: $nombre <$email>";
$encabezado .= "\nReply-To: $email";
$encabezado .= "\nX-Mailer: PHP/" . phpversion();

/* con esto se captura la IP del que envío el mensaje */
$ip=$REMOTE_ADDR;

/* las siguientes líneas arman el mensaje */
$mensaje .= "Nombre = $nombre\n";
$mensaje .= "Empresa = $empresa\n";
$mensaje .= "Poblacion = $poblacion";
$mensaje .= "Profesion= $profesion\n";
$mensaje .= "Telefono fijo = $telefonof\n";
$mensaje .= "Telefono movil = $telefonomovil\n";
$mensaje .= "email = $email\n";
$mensaje .= "Comentario = $texto\n";
$mensaje .= "SU DIRECCION IP = $ip\n";

/* aqui se intenta enviar el correo, si no se
tiene éxito se da un mensaje de error */
if(!mail($para, $sujeto, $mensaje, $encabezado))
{
echo "<h1>No se pudo enviar el Mensaje</h1>";
exit();
}
else
{
/* aqui redireccionamos a la pagina de respuesta */
echo "<meta HTTP-EQUIV='refresh' content='1;url=$respuesta'>";
}

?>

Cambia el email, pon el tuyo

Ahora te creas dos páginas una que se llame error.html que dará el mensaje de error si no están cubiertos los campos obligatorios, y otra que se llame correcto.html que se abrirá si se ha mandado el mensaje correctamente.

Cuelgaló en el servidor para ver como funciona, si no lo cuelgas no lo podrás hacer funcionar con vista prévia, porque no te lo permite el archivo php. Para cualquier duda, me lo dices.

Un saludo y espero que te sirva :lol:
muchas gracias, :D
si que te lo has currado!!!! :shock:
voy a probarlo ahora mismito.......
bueno no es del todo mio, buscando aquí y allá y aprendiendo un poco de cada página, he conseguido hacer funcionar como yo quería. (Bueno me quedan modificaciones de detalles pero ya lo mejoraré)

Espero que te sirva
Hola volvoreta!!!
es genial, de verdad muchas gracias!!
está todo perfecto, lo único es que cuando le doy a enviar me sale el siguiente mensaje:

Parse error: syntax error, unexpected '"' in /www/sites/1/iespana.es/s/a/sanfizdoseo/site/envio.php on line 47

Sabes por qué puede ser??

Un saludo :D
lo escribiste tal cual te lo puse??
si es así la linea 47 del archivo envio.php es la que te dice que si el campo del email está vacio se habra la página de error.html,
Has subido las dos páginas al servidor???
volvoreta escribió:lo escribiste tal cual te lo puse??
si es así la linea 47 del archivo envio.php es la que te dice que si el campo del email está vacio se habra la página de error.html,
Has subido las dos páginas al servidor???

Hola Volvoreta!!!
sí lo escribi tal cual, tanto como que le di a copiar y pegar......., no sé si habré hecho algo mal, pero me sigue saliendo el error....no sé porqué
Sabes si iespana, soporta archivos php??
No todos los servidores lo permiten, infórmate
A mi me funciona perfectamente

un saludo
Si permite el archivo php, podemos ir haciendo pruebas a ver cual es el problema,

Quita este trozo del código:
/* reclama que estén rellenos los campos obligatorios del formulario  */ 
if($email=="") 
{include($login_page); 
exit(); 
} 
if($nombre=="") 
{include($login_page); 
exit(); 
} 
if($poblacion=="") 
{include($login_page); 
exit(); 
} 
if($texto=="") 
{include($login_page); 
exit(); 
} 

Este trozo es el que no permite enviar un mensaje en blanco, miramos si es el trozo que dá problemas, y si es así ya arreglaremos la hoja de otra manera.

Un saludo
Hola Volvoreta!!
perdón por no contestarte antes, todavía no he probado lo que me has envíado, estos días he estado un poco dejada con la página por falta de tiempo, pero no te preocupes, en cuanto lo haga te digo si funciona o no, en cuanto a si iespana soporta php, creo que sí, aunque no sé la forma de saberlo con certeza, como puedo detectar si lo soporta o no??

Gracias por todo amiga,
:D un saludo
hay una opcion que puedes poner

para probar

pon solo esto

<phpinfo>

te dará una serie de datos, y con eso puedes ver si lo soporta o no

saludos

yaneth
Hola chicas!!!

Volvoreta decirte que ya probé lo que me dijiste:

volvoreta escribió:Si permite el archivo php, podemos ir haciendo pruebas a ver cual es el problema,

Quita este trozo del código:
/* reclama que estén rellenos los campos obligatorios del formulario  */ 
if($email=="") 
{include($login_page); 
exit(); 
} 
if($nombre=="") 
{include($login_page); 
exit(); 
} 
if($poblacion=="") 
{include($login_page); 
exit(); 
} 
if($texto=="") 
{include($login_page); 
exit(); 
} 

Este trozo es el que no permite enviar un mensaje en blanco, miramos si es el trozo que dá problemas, y si es así ya arreglaremos la hoja de otra manera.

Un saludo

...pero sigue saliendo el mismo problema:

Parse error: syntax error, unexpected '"' in /www/sites/1/iespana.es/s/a/sanfizdoseo/site/envio.php on line 47

seguro que soy yo que estoy haciendo algo mal

y también quería preguntar a Yanet dónde tengo que poner lo de <phpinfo>, aunque estoy prácticamente segura que sí lo soporta, pero bueno....

Muchas gracias por todo!!
un saludo :D
Hola

en cualquier lugar yo lo puse arriba del todo asi:

<phpinfo>

Teniendo en cuenta que <? ?> es el abre y cierre

si tienes la hoja de php aparte es mejor

por ejemplo mi hoja del formulario se llama envio.html y da la orden de que pase por enivo.php

es en la hoja de php, donde pones estos datos

:roll: (me habré explicado bien? :roll:

saludos
hola Yaneth

te explicas mu bien, soy yo que :?, he puesto <phpinfo> al principio de mi hoja de formulario que yo tb le he llamado envio.php, subo los cambios y ahora el error en vez de la página 47 me sale en el 48, porque donde veo esa información?? debería salir en mi página web, verdad??
Muchas gracias por todo y perdona por tanto mareo

Un saludo :D
No perdoname he olvidado deshabilitar

es esto

<?
phpinfo();
?>

:oops: :oops:
eeeeeei lo lo sabeis jeje
no en serio responded por favorrrrrrrrrrrr :cry: :cry: :cry: :cry:
pues, no lo se :cry: :cry:

yo tambien intenté con ese codigo, pero no me funciona
porque mi servidor tiene deshabilitada la opcion mailer

ojalá venga Volvoreta al rescate

saludos
Pues yo me registré con Melody

para que pudiera funcionar el formulario

tal vez en unos días retome eso del php

:wink: