Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/08/2008, 12:13
una_xikilla
 
Fecha de Ingreso: agosto-2008
Mensajes: 161
Antigüedad: 15 años, 8 meses
Puntos: 0
Cómo inserto una fecha de un calendario en mi base de datos y que un nif no se repita

Hola!

Estoy haciendo un formulario en el que el usuario tiene que introducir su fecha de nacimiento, para ello he utilizado un calendario php que se publicó en el foro http://www.forosdelweb.com/f18/calendario-php-586369/

Pero no se introduce en la base de datos. Y de paso también quiero que para introducir un usuario primero mire si el nif ya existe, si existe, que mande un aviso diciendo que ya está registrado y si no, que siga con el registro.

Mi código es:

copia_insertar_usuario.php
Código HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin t&iacute;tulo</title>
<script language="JavaScript" src="../calendario/javascripts.js"></script>
</head>
<body>

<?php
include ("Calendario/Calendario.php");
require ("conexion.php");
require("clasecandidato.php");

//if(!empty($_POST['insercion'])){

	$candidato = new Candidato($_POST[Nif]);
	
	if($candidato->insertarCandidato($_POST[nombre],$_POST[apellidos],$_POST[poblacion],$_POST[Nif],
							$_POST[direccion],$_POST[telefonoFijo],$_POST[movil],
							$_POST[lugarNacimiento], $_POST[hijos], $_POST[correo],
							$_POST[CP], $_POST[fechaNacimiento], $_POST[estadoCivil])){
			
				echo '<center><font size="6" color="red">EL CLIENTE '.$_POST['nombre'].' HA SIDO INSERTADO CORRECTAMENTE</font></center><hr />';
	}else{
		echo '<center><font size="6" color="red">NO SE HA PODIDO INSERTAR EL CLIENTE '.$_POST['nombre'].'</font></center><hr />';
		exit();
	}


?>
</body>
</html> 
clasecandidato.php

Código HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin t&iacute;tulo</title>
</head>
<body>
<?

class Candidato{

	private $nombre;
	private $apellidos;
	private $lugarNacimiento;
	private $fechaNacimiento;
	private $Nif;
	private $direccion;
	private $poblacion;
	private $CP;
	private $telefonoFijo;
	private $movil;
	private $estadoCivil;
	private $hijos;
	private $correo;
	
	function __construct($Nif){
		$this->Nif= $Nif;
	}

	public function comprobarNif_Candidato($nif){
		require ("conexion.php");
		
		$buscar=$_POST['Nif'];
	    $consultaSQL = "SELECT * FROM candidato WHERE nifCandidato='$buscar'";
		$resultado = mysql_query($consultaSQL);
		
		if (!$result) {
			$repetido=false;
		}
		else{
			$repetido=true;
		}

		mysql_free_result($resultado);
		
		return $repetido;
	}
	
	public function insertarCandidato($nombre, $apellidos, $poblacion, $Nif, $direccion, $telefonoFijo, $movil,
					$lugarNacimiento, $hijos, $correo, $CP, $fechaNacimiento, $estadoCivil) {
					
			require ("conexion.php");
			
			if(Candidato::comprobarNif_Candidato($Nif)){
				echo "Nif repetido\n";
				return false;
			}
			else{
				// Con esta sentencia SQL insertaremos los datos en la base de datos
				mysql_query("INSERT INTO candidato (nombre, apellidos, poblacion, nifCandidato, direccion, telefono, movil, lugarNacimiento, numHijos, email, cp, fechaNacimiento, estadoCivil) VALUES ('$nombre','$apellidos','$poblacion','$Nif','$direccion','$telefonoFijo', '$movil',
					'$lugarNacimiento','$hijos','$correo','$CP', '$fechaNacimiento', '$estadoCivil')");

				mysql_query("INSERT INTO provincia (nombre) VALUES ('{$_POST['provincia']}')");

				mysql_query("INSERT INTO tipocarnet (tipo) VALUES ('{$_POST['label17']}')");

				mysql_query("INSERT INTO carnettipo (fechaExpedicion) VALUES ('{$_POST['fechaExpedicion']}')");

				// Ahora comprobaremos que todo ha ido correctamente
				
				$resultado=mysql_query($consultaSQL);
         
		 		return $resultado;
			}
	}
	/*Cambia el formato de fecha desde mysql a la aplicación.	*/
	function cambiaf_a_mysql($fechaNacimiento){
		if (ereg( "([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})", $fechaNacimiento, $regs )){ 
				echo "$regs[1].$regs[2].$regs[3]";
		//$lafecha=$regs[1]."-".$regs[2]."-".$regs[3]; 
		} else { 
    		echo "Invalid date format: $fechaNacimiento"; // no coincide 
	}
		//return $lafecha;
	}
	
	/*Cambia el formato de fecha a mysql desde la aplicación.	*/
	function cambiaf_desde_mysql($fechaNacimiento){
		ereg( "([0-9]{1,2})/([0-9]{1,2})/([0-9]{2,4})", $fechaNacimiento, $mifecha);
		$lafecha=$mifecha[3]."/".$mifecha[2]."/".$mifecha[1];
		return $lafecha;
	}
}
?>
</body>
</html> 
Gracias!!!!!!!