Foros del Web » Programando para Internet » PHP »

campos obligatorios

Estas en el tema de campos obligatorios en el foro de PHP en Foros del Web. Hola amigos, tengo un problema que no he podido resolver eso por mi falta de experiencia con el php, tengo un formulario con muchas preguntas ...
  #1 (permalink)  
Antiguo 19/04/2009, 23:00
 
Fecha de Ingreso: julio-2008
Mensajes: 20
Antigüedad: 15 años, 9 meses
Puntos: 0
campos obligatorios

Hola amigos, tengo un problema que no he podido resolver eso por mi falta de experiencia con el php, tengo un formulario con muchas preguntas y necesito que algunos campos sean obligatorios y otros no, yo trate de varias formas pero cuando le doy al botón de enviar se queda pensando y no pasa nada les voy a dar un ejemplo de el código a menor escala ya que el original es muy largo.
<?
if(isset($_POST['nombre_campista']) && !empty($_POST['nombre_campista']) &&
isset ($_POST['apellido_campista']) && !empty($_POST['apellido_campista']) &&
isset ($_POST['sexo_campista']) && !empty($_POST['sexo_campista']) &&
isset ($_POST['fecha_nacimiento_campista_dia']) && !empty($_POST['fecha_nacimiento_campista_dia']) &&
isset ($_POST['fecha_nacimiento_campista_mes']) && !empty($_POST['fecha_nacimiento_campista_mes']) &&
isset ($_POST['condiciones_acepto']) && !empty($_POST['condiciones_acepto'])&&
isset ($_POST['condiciones_noacepto']) && !empty($_POST['condiciones_noacepto'])&&
isset ($_POST['nombre_madre_condiciones']) && !empty($_POST['nombre_madre_condiciones'])&&


isset ($_POST['cedula_madre_condiciones']) &&


isset ($_POST['pasaporte_madre_condiciones']) &&

isset ($_POST['condiciones_acepto_madre']) && !empty($_POST['condiciones_acepto_madre'])&&
isset ($_POST['condiciones_noacepto_madre']) && !empty($_POST['condiciones_noacepto_madre'])) {
$link = mysql_connect("localhost","campinri_xxxx","xxx");
mysql_select_db("campinri_xxxx",$link);
mysql_query("INSERT INTO inscripciones
(nombre_campista,
apellido_campista,
sexo_campista,
fecha_nacimiento_campista_dia,
fecha_nacimiento_campista_mes,
condiciones_acepto,
condiciones_noacepto,
nombre_madre_condiciones,
cedula_madre_condiciones,
pasaporte_madre_condiciones,
condiciones_acepto_madre,
condiciones_noacepto_madre)
VALUES
('{$_POST['nombre_campista']}',
'{$_POST['apellido_campista']}',
'{$_POST['sexo_campista']}',
'{$_POST['fecha_nacimiento_campista_dia']}',
'{$_POST['fecha_nacimiento_campista_mes']}',
'{$_POST['condiciones_acepto']}',
'{$_POST['condiciones_noacepto']}',
'{$_POST['nombre_madre_condiciones']}',
'{$_POST['cedula_madre_condiciones']}',
'{$_POST['pasaporte_madre_condiciones']}',
'{$_POST['condiciones_acepto_madre']}',
'{$_POST['condiciones_noacepto_madre']}')",$link);

$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";

}

?>

Como verán he dejado isset ($_POST['cedula_madre_condiciones']) && y
isset ($_POST['pasaporte_madre_condiciones']) &&
sin su !empty($_POST['cedula_madre_condiciones'])&& y
!empty($_POST['pasaporte_madre_condiciones'])&&
Pensando en que así no hará falta que estén llenos, pero como dije antes no sé cómo se hace, por favor necesito de su ayuda. Gracias
  #2 (permalink)  
Antiguo 20/04/2009, 07:18
Avatar de By_George  
Fecha de Ingreso: abril-2009
Ubicación: localhost
Mensajes: 629
Antigüedad: 15 años
Puntos: 19
Respuesta: campos obligatorios

pero que error te marca o que es lo que no te sale?, bueno yo creo que con los !empty esta bien sin los isset
  #3 (permalink)  
Antiguo 20/04/2009, 08:05
 
Fecha de Ingreso: julio-2008
Mensajes: 20
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: campos obligatorios

Primero que todo, gracias por la respuesta. La verdad es que no marca ningún tipo de error lo que hace es que al enviar la planilla se queda sin hacer nada, como pensando. No sé si hay un error en el código o es otra cosa. Yo pese que era por dejar isset ($_POST['fecha_nacimiento_campista_dia']) && sin el emty, no sé si esa sentencia está funcionando o hay otra forma de colocarla, también puede ser que la planilla que estoy haciendo es mucho más larga del ejemplo que coloque, no sé si eso influya.
Y por ultimo puede ser que la tabla que cree en sql tiene todos los campos del tipo varchar, y en el html, tengo campos del tipo select, radio, checkbox, no sé si eso influye. Como ya nombre anteriormente soy un novato en el asunto y ya he usado el mismo código para hacer un registro de usuarios y funcionó perfecto no veo por qué este no funciona, acá mendo el link para que tengan una idea de lo larga que es
campinrincongrande.com/planilla.php
Gracias por su ayuda.
  #4 (permalink)  
Antiguo 20/04/2009, 08:15
Avatar de Baleog  
Fecha de Ingreso: abril-2009
Ubicación: Medellin
Mensajes: 34
Antigüedad: 15 años
Puntos: 4
Respuesta: campos obligatorios

Te recomiendo ingresar tu codigo entre etiquetas [php], puede q sea posible que el error este en el formulario y no en la pagina de respuesta, estas seguro q el action esta bien y que si esta con el method POST.

Como una recomendacion personal te sugiero hacer las validaciones antes con javascript. y aca conservarlas solo como una seguridad, la ventaja del javascript es q el usuario no necesitara enviar los datos y esperar que cargue a pagina para saber si tiene algun error y ademas como lo tienes desarrollado si al usuario le falta algun dato al volver al formulario debera volver a llenarlo todo.
  #5 (permalink)  
Antiguo 20/04/2009, 08:15
Avatar de jaao_death  
Fecha de Ingreso: abril-2009
Ubicación: Murcia/españa
Mensajes: 229
Antigüedad: 15 años
Puntos: 6
Respuesta: campos obligatorios

es redundante poner if(isset($opcion) and !emty($opcion)) y deberías de preocuparte más por diseñar un código más organizado y mejorar la seguridad, a simple vista veo que cualquier SQL-inyection es posible

te recomiendo que hagas un formulario más resumido y con lo más esencial, pues uno tan grande hace difícil el mantenimiento de los datos.

Última edición por jaao_death; 20/04/2009 a las 08:22
  #6 (permalink)  
Antiguo 20/04/2009, 08:22
 
Fecha de Ingreso: julio-2008
Mensajes: 20
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: campos obligatorios

Precisamente ese fue el problema que por dejar algunos campos vacios me daba "Error, no ha introducido todos los datos", entonces le quite los !empty a los campos que no requerían ser llenados obligatoriamente. Si me pueden dar un pequeño ejemplo de lo de java o cualquier otra solución se los agradecería mucho.
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 05:06.