Cita:
Iniciado por apolodanielf
Iniciado por apolodanielf Ver Mensaje
Buenas noches, gracias por su respuetas.
En fin, lo cierto es que es un sistema de busquedas de cedulas de identidad para ver si estan preinscritas en un evento que voy a hacer el unico dato que debe estar en la Base de datos es la cedula, la cosa es que hasta haora tengo solo unas poquitas cedulas en la base de datos, pero dentro de poco podran ser cientos, y no se mucho de MySQL y quisiera saber como definir correctamente la estructura de la tabla para poner un ejemplo, supongamos que tengo las siguientes cedulas:
123
234
569
189
Y quisiera saber mediante PHP si estan en la DB (las cedulas de identidad) y si no que el programa me diga que no estan. Esa es la frase clave.
Saludos,
Daniel
son los principios basicos de mysql, que si vas a trabajar con bases de datos es de muchisima importancia que los aprendas, ya que hoy podemos darte una solucion, pero eso solo no va a completar tu sistema y tendras que empezar a hacer procesos un poco mas complejos (no quiere decir difcil, sino con otros tipos de relaciones), la documentacion de mysql es bastante completa.
siempre que vayas a crear una tabla trata de tener en cuenta todos los datos que puedas a llegar a necesitar, ahora y en una posible eventualidad. si solamente guardas un dato y despues necesitas una informacion que no esta en la tabla, por ejemplo el nombre de la persona de la cedula, despues es muy tedioso actualizar la tabla con la cantidad de registros guardados.
Por otro lado, saber si la cedula esta en la base de datos solamente no te da un dato muy certero para la apliacion que pensas hacer, deberias controlar los eventos a travez de una tabla que registre uno, y una tabla que registre que cedulas se inscribieron o participaron al evento, de esa forma, el sistema se hace mas robusto al dar la posibilidad de no solo obtener que cedulas hay guardadas, sino tener un historial de actividades de la misma.
Lo que habias hecho con las tablas del principi era crear un campo por cada cedula que ingresaras, en vez de insertar un registro a la tabla.
un tabla solamente para guardar el numero de la cedula y nada mas seria asi
al hacer un
INSERT INTO cedulas (numCedula) VALUES ("$numCedulaObtenida")
la tabla quedaria asi (en el caso que numCedulaObtenida sea 123)
hacemos 4 INSERT mas con diferentes cedulas y quedaria
Código:
id | numCedula
1 | 123
2 | 561
3 | 498
4 | 642
5 | 752
despues para saber si esta en la base de datos yo usaria esto
Código php:
Ver original//$numCedulaObtenida es la variable con el dato del formulario
//hacemos un conteo de los datos con la siguiente condicion
$sql = 'SELECT COUNT(id) AS NUM FROM cedula WHERE numCedula ='.$numCedulaObtenida;
// esto nos va a devolver el total de registros que cumplan la funcion
if($dat['NUM']==0){
$return = 'la cedula: <b>'.$numCedulaObtenida.'</b>, no se encuentra registrada en la base de datos';
}else{
$return = 'cedula identificada correctamente';
}
echo $return;
te dejo el link de un pdf muy completo de mysql, lo acabo de subir y lo estoy usando en la actualidad
http://www.mediafire.com/download.php?mnyqtommtmn