Foros del Web » Programando para Internet » PHP »

Enviar formulario quede limpio

Estas en el tema de Enviar formulario quede limpio en el foro de PHP en Foros del Web. Buenas, tengo un formulario que al apretar en el botón enviar, te aparece si los datos fueron enviados, si hubo un fallo, etc... Me gustaría ...
  #1 (permalink)  
Antiguo 29/11/2010, 08:29
 
Fecha de Ingreso: abril-2010
Mensajes: 76
Antigüedad: 14 años, 6 meses
Puntos: 0
Enviar formulario quede limpio

Buenas, tengo un formulario que al apretar en el botón enviar, te aparece si los datos fueron enviados, si hubo un fallo, etc... Me gustaría que luego de aparecer si los datos fueron enviaros satisfactoriamente o no, me volviera a llevar al formulario y que el formulario este limpio sin datos. Dejo aquí el código que tengo.

Formulario

Código PHP:
<?php
@session_start();
if(isset(
$_SESSION["k_username"])){


echo 
'<div style="width:100%;">';
echo 
'<form style="margin:0px; padding:0px;" id="formreg" name="formreg" method="post" action="recogida.php">';
echo 
'<strong>Empresa</strong>: <br/>';
echo 
'<input name="empresa" id="empresa" type="text" style="width:100%;"/><br/>';
echo 
'</div>';

echo 
'<div style="float:left; width:60%;">';
echo 
'<strong>Correo electronico</strong>:<br/>';
echo 
'<input name="email" id="email" type="text" style="width:90%;"/>';
echo 
'<br/>';
echo 
'</div>';

echo 
'<div style="float:left; width:40%;">';
echo 
'<strong>Teléfono</strong>: <br/>';
echo 
'<input name="telefono" id="telefono" type="text" style="width:100%;"/><br/>';
echo 
'</div>';
echo 
'<div style="clear:both"></div>';

echo 
'<div style="float:left; width:60%;">';
echo 
'<strong>Web</strong>: <br/>';
echo 
'<input name="web" id="web" type="text" style="width:90%;"/><br/>';
echo 
'</div>';

echo 
'<div style="float:left; width:40%;">';
echo 
'<strong>Localidad</strong>: <br/>';
echo 
'<input name="localidad" id="localidad" type="text" style="width:100%;"/><br/>';
echo 
'</div>';
echo 
'<div style="clear:both"></div>';

echo 
'<strong>Provincia</strong>: <br/>';
echo 
'<select name="provincia" id="provincia" style="width:103%;">';
echo 
'<option value="Elija una opci&oacute;n" selected="selected">Elija una opci&oacute;n</option>';
echo 
'  <option value="Alava">Alava</option>';
echo 
'  <option value="Albacete">Albacete</option>';
echo 
'  <option value="Alicante">Alicante</option>';
echo 
'  <option value="Almeria">Almeria</option>';
echo 
'  <option value="Asturias">Asturias</option>';
echo 
'  <option value="Avila">Avila</option>';
echo 
'  <option value="Badajoz">Badajoz</option>';
echo 
'  <option value="Baleares">Baleares</option>';
echo 
'  <option value="Barcelona">Barcelona</option>';
echo 
'  <option value="Burgos">Burgos</option>';
echo 
'  <option value="Caceres">Caceres</option>';
echo 
'  <option value="Cadiz">Cadiz</option>';
echo 
'  <option value="Cantabria">Cantabria</option>';
echo 
'  <option value="Castellon">Castellon</option>';
echo 
'  <option value="Ceuta">Ceuta</option>';
echo 
'  <option value="Ciudad Real">Ciudad Real</option>';
echo 
'  <option value="Cordoba">Cordoba</option>';
echo 
'  <option value="Coruña">Coruña</option>';
echo 
'  <option value="Cuenca">Cuenca</option>';
echo 
'  <option value="Girona">Girona</option>';
echo 
'  <option value="Granada">Granada</option>';
echo 
'  <option value="Guadalajara">Guadalajara</option>';
echo 
'  <option value="Guipuzcoa">Guipuzcoa</option>';
echo 
'  <option value="Huelva">Huelva</option>';
echo 
'  <option value="Huesca">Huesca</option>';
echo 
'  <option value="Jaen">Jaen</option>';
echo 
'  <option value="La Rioja">La Rioja</option>';
echo 
'  <option value="Las Palmas">Las Palmas</option>';
echo 
'  <option value="Leon">Leon</option>';
echo 
'  <option value="Lleida">Lleida</option>';
echo 
'  <option value="Lugo">Lugo</option>';
echo 
'  <option value="Madrid">Madrid</option>';
echo 
'  <option value="Malaga">Malaga</option>';
echo 
'  <option value="Melilla">Melilla</option>';
echo 
'  <option value="Murcia">Murcia</option>';
echo 
'  <option value="Navarra">Navarra</option>';
echo 
'  <option value="Orense">Orense</option>';
echo 
'  <option value="Palencia">Palencia</option>';
echo 
'  <option value="Pontevedra">Pontevedra</option>';
echo 
'  <option value="Salamanca">Salamanca</option>';
echo 
'  <option value="Segovia">Segovia</option>';
echo 
'  <option value="Sevilla">Sevilla</option>';
echo 
'  <option value="Soria">Soria</option>';
echo 
'  <option value="Santa Cruz de Tenerife">Santa Cruz de Tenerife</option>';
echo 
'  <option value="Tarragona">Tarragona</option>';
echo 
'  <option value="Teruel">Teruel</option>';
echo 
'  <option value="Toledo">Toledo</option>';
echo 
'  <option value="Valencia">Valencia</option>';
echo 
'  <option value="Valladolid">Valladolid</option>';
echo 
'  <option value="Vizcaya">Vizcaya</option>';
echo 
'  <option value="Zamora">Zamora</option>';
echo 
'  <option value="Zaragoza">Zaragoza</option>';
echo 
'</select>';
echo 
'</div>';
echo 
'<div style="clear:both"></div>';

echo 
'<strong>Actividad</strong>: <br/>';
echo 
'<select name="actividad" id="actividad" style="width:63%;">';
echo 
'<option value="Elija una opci&oacute;n" selected="selected">Elija una opci&oacute;n</option>';
echo 
'  <option value="Instaladores">Instaladores</option>';
echo 
'  <option value="Distribuidores">Distribuidores</option>';
echo 
'  <option value="Promotoras y Constructoras">Promotoras y Constructoras</option>';
echo 
'  <option value="Arquitectos e Ingenieros">Arquitectos e Ingenieros</option>';
echo 
'  <option value="Fabricantes revestimiento">Fabricantes revestimiento</option>';
echo 
'  <option value="Administraciones publicas">Administraciones publicas</option>';
echo 
'  <option value="Agencias de inmuebles">Agencias de inmuebles</option>';
echo 
'</select><br />';
echo 
'</div>';
echo 
'<div style="clear:both"></div>';

echo 
'<input onMouseUp="validaringresar()" class="submit" name="submit" id="submit" type="submit" value="Enviar" style=" font-size:14px; background-color:#7ddbff; color:#000;" />';
echo 
'</p>';
echo 
'  </form>';
echo 
'  </div>';
  
}else{

header ("Location: http://www.xxx.es/xxx_xxx.php");             

}
?>
Valida

Código PHP:
<?php
session_start
();
?>

<?php

    
// Primero comprobamos que ningún campo esté vacío y que todos los campos existan.
    
if(isset($_POST['empresa']) && !empty($_POST['empresa']) &&
    isset(
$_POST['email']) && !empty($_POST['email']) &&  
    isset(
$_POST['localidad']) && !empty($_POST['localidad']) &&
    isset(
$_POST['provincia']) && !empty($_POST['provincia']) &&    
     isset(
$_POST['actividad']) && !empty($_POST['actividad'])) {

        
// Si entramos es que todo se ha realizado correctamente

        
$link mysql_connect('localhost','root','a');
        
mysql_select_db('recogida',$link);

        
// Con esta sentencia SQL insertaremos los datos en la base de datos
        
mysql_query("INSERT INTO espanya (empresa,email,telefono,web,localidad,provincia,actividad)
        VALUES ('{$_POST['empresa']}','{$_POST['email']}','{$_POST['telefono']}','{$_POST['web']}','{$_POST['localidad']}','{$_POST['provincia']}','{$_POST['actividad']}')"
,$link);

        
// Ahora comprobaremos que todo ha ido correctamente
        
$my_error mysql_error($link);

        if(!empty(
$my_error)) {

            echo 
'Ha habido un error al insertar los valores. $my_error'

        } else {

            echo 
'Los datos han sido introducidos satisfactoriamente';
      }
    } else {

        echo 
'Error, no ha introducido todos los datos';

    }

?>
  #2 (permalink)  
Antiguo 29/11/2010, 08:31
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 15 años, 1 mes
Puntos: 334
Respuesta: Enviar formulario quede limpio

solo redirecciona a la misma url ?.. asi limpias el formulario
__________________
More about me...
~ @rhyudek1
~ Github
  #3 (permalink)  
Antiguo 29/11/2010, 08:49
Avatar de Oviedo  
Fecha de Ingreso: abril-2007
Ubicación: Venezuela
Mensajes: 128
Antigüedad: 17 años, 6 meses
Puntos: 0
Información Respuesta: Enviar formulario quede limpio

Amigo coloca el action="" en blanco y listo...

echo '<form style="margin:0px; padding:0px;" id="formreg" name="formreg" method="post" action="recogida.php">';


asi:

echo '<form style="margin:0px; padding:0px;" id="formreg" name="formreg" method="post" action=" ">';
  #4 (permalink)  
Antiguo 29/11/2010, 10:13
 
Fecha de Ingreso: abril-2010
Mensajes: 76
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: Enviar formulario quede limpio

Pero tal como dices tu oviedo, perderia las caracteristicas que me da recogida.php? recogida.php me dice si los datos se han introducido, tambien dice los campos obligatorios y los que no.
  #5 (permalink)  
Antiguo 29/11/2010, 10:15
 
Fecha de Ingreso: febrero-2010
Mensajes: 818
Antigüedad: 14 años, 9 meses
Puntos: 55
Respuesta: Enviar formulario quede limpio

envia el formulario a la misma pagina y coloca las validaciones if(isset($_POST)) previo a mostrar el formulario
  #6 (permalink)  
Antiguo 29/11/2010, 10:16
Avatar de malakian  
Fecha de Ingreso: septiembre-2010
Ubicación: $malakian->Colombia();
Mensajes: 469
Antigüedad: 14 años, 2 meses
Puntos: 45
Respuesta: Enviar formulario quede limpio

si no te funciona con el redireccionamiento.. que creo deberia funcionar.. lo puedes hacer con JavaScript en el evento OnLoad del body...
__________________
Guitar Loco, Desarrollador Web PHP
Sigueme: @jose1x
  #7 (permalink)  
Antiguo 30/11/2010, 07:51
 
Fecha de Ingreso: abril-2010
Mensajes: 76
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: Enviar formulario quede limpio

Al final le meti en el archivo recogida.php con redireccionamineto y va perfecto.

Gracias a todos
  #8 (permalink)  
Antiguo 30/11/2010, 08:58
 
Fecha de Ingreso: abril-2010
Mensajes: 76
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: Enviar formulario quede limpio

Perdon, en local me funcionava perfectamente, en la web no. Este formulario esta protegido a traves de un login. Dejo el fallo que me da cuando redirecciona.

Código PHP:
Errorno ha introducido todos los datos
Warning
Cannot modify header information headers already sent by (output started at /homepages/28/d342127551/htdocs/external/recogida.php:5in /homepages/28/d342127551/htdocs/external/recogida.php on line 39 
  #9 (permalink)  
Antiguo 03/12/2010, 09:07
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 15 años, 1 mes
Puntos: 334
Respuesta: Enviar formulario quede limpio

Lee esto http://www.forosdelweb.com/wiki/PHP:...dy_sent%3F
y estohttp://www.forosdelweb.com/wiki/PHP:...n_line_4%22%3F
__________________
More about me...
~ @rhyudek1
~ Github

Etiquetas: enviar, quede, formulario
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 14:25.