Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/11/2010, 14:35
Urso
 
Fecha de Ingreso: agosto-2010
Ubicación: Mexico
Mensajes: 180
Antigüedad: 13 años, 8 meses
Puntos: 0
Query que no me reconoce los valores

Código PHP:
$sql "SELECT E.Id_empleado, E.Nombre, E.Apellido_Paterno, E.Apellido_Materno, E.Id_general, E.Id_escolaridad, E.Id_direccion,  E.CURP, E.RFC, E.IMSS, E.INFONAVIT, E.Id_puesto, E.Fecha_inicio, E.Renew1, E.Renew2, E.Renew3, E.Sueldo FROM contra_empleados E "$count=0$i=0;  IF(ISSET($_REQUEST['vENVIAR'])) 
$string=$vNombre."_".$vAPPA."_".$vAPMA."_".$vSEXO."_".$vEDAD."_".$vEDOCIV."_".$vCURP."_".$vRFC."_".$vTITULO."_".$vINSTITUCION."_".$vDESCESC."_".$vIMSS."_".$vINFONAVIT."_".$vCALLE."_".$vCOLONIA."_".$vDELMUN."_".$vEDO."_".$vSUELDO."_".$vJOB."_".$vINICIO."_".$vMES."_".$vTRIO."_".$vANIO;  $cadena explode("_",$string); $Nvals array_filter($cadena); $countNvals count($Nvals);$dir "SELECT Id_direccion FROM contra_direccion WHERE "$esc "SELECT Id_escolaridad FROM contra_escolaridad WHERE "$grals "SELECT Id_general FROM contra_desc_general WHERE "; IF($countNvals>=1)  
{
 
$sql.= " WHERE "
IF(
$Nvals[0] AND preg_match("/([0-9])/",$Nvals[0])==0)
{
$sql   .= " E.nombre LIKE '%$Nvals[0]%' ";  IF($countNvals>AND $Nvals[0]!=$Nvals[max(array_keys($Nvals))]) $sql  .= " AND "; }
elseif(
preg_match("/([0-9])/",$Nvals[0])==1) { echo "TIENES UN NUMERO EN NOMBRE <BR/>";$i++;}  IF($Nvals[1] AND preg_match("/([0-9])/",$Nvals[1])==0)
{
$sql.= "E.Apellido_Paterno LIKE '%$Nvals[1]%' "; IF($countNvals>AND $Nvals[1]!=$Nvals[max(array_keys($Nvals))]) $sql .= " AND "; }
elseif(
preg_match("/([0-9])/",$Nvals[1])==1) { echo "TIENES UN NUMERO EN APELLIDO PATERNO<BR/>"$i++;} 
IF(
$Nvals[2] AND preg_match("/([0-9])/",$Nvals[2])==0){ $sql.= "E.Apellido_Materno LIKE '%$Nvals[2]%' "; IF($countNvals>AND $Nvals[2]!=$Nvals[max(array_keys($Nvals))])  $sql .= " AND "
}elseif(
preg_match("/([0-9])/",$Nvals[2])==1){ echo "TIENES UN NUMERO EN APELLIDO MATERNO <BR/>"$i++; } IF(($Nvals[3]) OR ($Nvals[4]) OR ($Nvals[5])){IF($Nvals[3] AND preg_match("/([0-9])/",$Nvals[3])==0) { $count++; IF($count>AND $count<=3)

$countNvals--; $grals .= " AND "; } 
$grals  .= " sexo LIKE '%$Nvals[3]%' "; }elseif(preg_match("/([0-9])/",$Nvals[3])==1) { echo "TIENES UN NUMERO EN SEXO <BR/>";  $i++; $Nvals[3] = ""; } 
IF(
$Nvals[4] AND preg_match("/([a-zA-Z])/",$Nvals[4])==0){
$count++; IF($count>AND $count<=3)  { $countNvals--; $grals .= " AND ";} $grals  .= " edad LIKE '%$Nvals[4]%' "; }elseif(preg_match("/([a-zA-Z])/",$Nvals[4])==1) { echo "TIENES LETRAS EN LA EDAD <BR/>"$i++; $Nvals[4] = NULL; } IF($Nvals[5] AND preg_match("/([0-9])/",$Nvals[5])==0) { $count++; IF($count>AND $count<=3) { $countNvals--; $grals .= " AND "; } $grals  .= " estado_civil LIKE '%$Nvals[5]' "; }elseif(preg_match("/([0-9])/",$Nvals[5])==1) { echo "TIENES UN NUMERO EN ESTADO CIVIL <BR/>"$i++; $Nvals[5] = ""; } 
$gral = @mysql_query($grals);
$j=0;while($gra = @mysql_fetch_row($gral))  { $j++; $sql  .= " E.id_general = ".$gra[0]; if($j>and $j<mysql_num_rows($gral)) $sql .= " OR "; } IF($countNvals>AND ($Nvals[5]!=$Nvals[max(array_keys($Nvals))] AND $Nvals[4]!=$Nvals[max(array_keys($Nvals))] AND $Nvals[3]!=$Nvals[max(array_keys($Nvals))]))  $sql .= " AND "; } IF($Nvals[6] AND preg_match("/^[A-Z]{4}[0-9]{6}[A-Z0-9]{0,8}?/",$Nvals[6])==1)  
{
$sql .= " E.CURP LIKE '%$Nvals[6]%' "; IF($countNvals>AND $Nvals[6]!=$Nvals[max(array_keys($Nvals))]) $sql.= " AND "; }
ELSEIF(
preg_match("/^[A-Z]{4}[0-9]{6}[A-Z0-9]{0,8}?/",$Nvals[6])==AND !empty($Nvals[6])) { echo "EL FORMATO EN EL CURP NO COINCIDE<br/>"$i++; } IF($Nvals[7] AND preg_match("/^[A-Z]{4}[0-9]{6}[A-Z0-9]{0,3}?/",$Nvals[7])==1) { $sql .= " E.RFC LIKE '%$Nvals[7]%'"; IF($countNvals>AND $Nvals[7]!=$Nvals[max(array_keys($Nvals))])$sql.= " AND "; }ELSEIF(preg_match("/^[A-Z]{4}[0-9]{6}[A-Z0-9]{0,3}?/",$Nvals[7])==AND !empty($Nvals[7])){ echo "EL FORMATO EN EL RFC NO COINCIDE<BR/>"$i++; } IF(($Nvals[8]) OR ($Nvals[9]) OR ($Nvals[10])) { IF($Nvals[8] AND preg_match("/([0-9])/",$Nvals[8])==0) { $count++; IF($count>AND $count<=3
$countNvals--; $esc .= " AND "; } 
$esc  .= " Titulo_carrera LIKE '%$Nvals[8]%' ";  } 
elseif(
preg_match("/([0-9])/",$Nvals[8])==1
{ echo 
"TIENES UN NUMERO EN EL TITULO DE LA CARRERA<BR/>"$i++; $Nvals[8] = ""; } 
IF(
$Nvals[9] AND preg_match("/([0-9])/",$Nvals[9])==0)  { $count++; IF($count>AND $count<=3) { $countNvals--; $esc .= " AND "; } $esc  .= " Institucion LIKE '%$Nvals[9]%' "; } elseif(preg_match("/([0-9])/",$Nvals[9])==1
{ echo 
"TIENES LETRAS EN LA EDAD <BR/>"$i++; } IF($Nvals[10] AND preg_match("/([0-9])/",$Nvals[10])==0) { $count++; IF($count>AND $count<=3) { $countNvals--; $esc .= " AND ";} 
$esc  .= " Descripcion LIKE '%$Nvals[10]' "; } elseif(preg_match("/([0-9])/",$Nvals[10])==1) { echo "TIENES UN NUMERO EN LA DESCRIPCION <BR/>"$i++; $Nvals[10] = ""; } $ESCUELA = @mysql_query($esc); $j 0
while(
$rowEscolaridad = @mysql_fetch_row($ESCUELA)) { $j++; $sql  .= " E.id_escolaridad = ".$rowEscolaridad[0]; if($j>and $j<mysql_num_rows($ESCUELA)) 
$sql .= " OR ";}
IF(
$countNvals>AND ($Nvals[8]!=$Nvals[max(array_keys($Nvals))] AND $Nvals[9]!=$Nvals[max(array_keys($Nvals))] AND $Nvals[10]!=$Nvals[max(array_keys($Nvals))])) $sql .= " AND ";} 
IF(
$Nvals[11] AND preg_match("/([a-zA-Z])/",$Nvals[11])==0) { $sql .= "E.IMSS LIKE '%$Nvals[11]%' "; IF($countNvals>AND $Nvals[11]!=$Nvals[max(array_keys($Nvals))]) $sql.= " AND "; }
ELSEIF(
preg_match("/([a-zA-Z])/",$Nvals[11])==1) { echo "EL REGISTRO DEL IMSS NO ACEPTA LETRAS, REVISE<br/>";  $i++;}
IF(
$Nvals[12] AND preg_match("/([a-cA-Ce-mE-Mo-zO-Z])/",$Nvals[12])==0) { $sql .= "E.INFONAVIT LIKE '%$Nvals[12]%' "; IF($countNvals>AND $Nvals[12]!=$Nvals[max(array_keys($Nvals))]) 
$sql.= " AND "; }ELSEIF(preg_match("/([a-cA-Ce-mE-Mo-zO-Z])/",$Nvals[12])==1) { echo "EL REGISTRO DEL INFONAVIT NO ACEPTA LETRAS A N/D, REVISE<br/>"$i++; } IF(($Nvals[13]) OR ($Nvals[14]) OR ($Nvals[15]) OR ($Nvals[16])) { IF($Nvals[13]) { $count++; IF($count>AND $count<=3){$countNvals--; $dir .= " AND "; } $dir  .= " calle LIKE '%$Nvals[13]%' "; } IF($Nvals[14] AND preg_match("/([0-9])/",$Nvals[14])==0){$count++;
IF(
$count>AND $count<=3) { $countNvals--; $dir .= " AND "; } $dir  .= " colonia LIKE '%$Nvals[14]%' ";}
IF(
$Nvals[15] AND preg_match("/([0-9])/",$Nvals[15])==0) { $count++; IF($count>AND $count<=3) { $countNvals--; $dir .= " AND "; } $dir .= " del_mun LIKE '%$Nvals[15]' "; } ELSEIF(preg_match("/([0-9])/",$Nvals[15])==1) { ECHO "EL CAMPO DE LA DELEGACION/MUNICIPIO SOLO ACEPTA LETRAS, REVISE<br/>";  $i++; } IF($Nvals[16] AND preg_match("/([0-9])/",$Nvals[16])==0) { $count++; IF($count>AND $count<=3) { $countNvals--; $dir .= " AND "; } $dir .= " estado LIKE '%$Nvals[16]' "; } ELSEIF(preg_match("/([0-9])/",$Nvals[16])==1){ECHO "EL CAMPO DEL ESTADO SOLO ACEPTA LETRAS, REVISE<br/>"$i++; } $direccion = @mysql_query($dir); $j 0; while($rowDireccion = @mysql_fetch_row($direccion)) { $j++; $sql  .= " E.id_direccion = ".$rowDireccion[0]; if($j>and $j<mysql_num_rows($direccion)) $sql .= " OR ";}IF($countNvals>AND ($Nvals[13]!=$Nvals[max(array_keys($Nvals))] AND $Nvals[14]!=$Nvals[max(array_keys($Nvals))] AND $Nvals[15]!=$Nvals[max(array_keys($Nvals))] AND $Nvals[16]!=$Nvals[max(array_keys($Nvals))])) $sql.= " AND "; } IF($Nvals[17] AND preg_match("/([a-zA-Z])/",$Nvals[17])==0){$sql .= " E.Sueldo = $Nvals[17] "; IF($countNvals>AND $Nvals[17]!=$Nvals[max(array_keys($Nvals))]) $sql.= " AND "; } ELSEIF(preg_match("/([a-zA-Z])/",$Nvals[17])==1) { ECHO "EL CAMPO DEL SUELDO SOLO ACEPTA NUMEROS, REVISE<br/>"$i++; } IF($Nvals[18] AND preg_match("/([0-9])/",$Nvals[18])==0){$job="SELECT Id_puesto FROM contra_perfil WHERE Nombre LIKE '%$Nvals[18]%'"$hob=@mysql_query($job); $hobs = @mysql_fetch_row($hob); $sql .=" Id_puesto = $hobs[0] "; IF($countNvals>AND $Nvals[18]!=$Nvals[max(array_keys($Nvals))]) $sql.= " AND "; }ELSEIF(preg_match("/([0-9])/",$Nvals[18])==1) { ECHO "EL CAMPO DEL PUESTO SOLO ACEPTA LETRAS, REVISE<br/>"$i++;}$Fini  FormatoAAMMDDFecha($cadena[19]); $Fmes  FormatoAAMMDDFecha($cadena[20]); $Ftrio FormatoAAMMDDFecha($cadena[21]); $Fanio FormatoAAMMDDFecha($cadena[22]); IF($Nvals[19] AND preg_match("/(\d{2}\-\d{2}\-\d{2})/",$Nvals[19])==1){$sql .= "E.Fecha_inicio LIKE '%$Fini%' "; IF($countNvals>AND $Nvals[19]!=$Nvals[max(array_keys($Nvals))])  $sql.= " AND "; }ELSEIF(preg_match("/(\d{2}\-\d{2}\-\d{2})/",$Nvals[19])==AND !empty($Nvals[19])) { ECHO "LA FECHA DE INICIO NO TIENE EL FORMATO DD-MM-AA EN NUMEROS, REVISE<br/>"$i++; } IF($Nvals[20] AND preg_match("/(\d{2}\-\d{2}\-\d{2})/",$Nvals[20])==1) { $sql .= "E.renew1 LIKE '%$Fmes%' "; IF($countNvals>AND $Nvals[20]!=$Nvals[max(array_keys($Nvals))]) $sql.= " AND "; }ELSEIF(preg_match("/(\d{2}\-\d{2}\-\d{2})/",$Nvals[20])==0  AND !empty($Nvals[20])) { ECHO "LA FECHA DE LA PRIMERA RENOVACION NO TIENE EL FORMATO DD-MM-AA, REVISE<br/>";  $i++; } IF($Nvals[21] AND preg_match("/(\d{2}\-\d{2}\-\d{2})/",$Nvals[21])==1) { $sql .= "E.renew2 LIKE '%$Ftrio%' "; IF($countNvals>AND $Nvals[21]!=$Nvals[max(array_keys($Nvals))]) $sql.= " AND "; }ELSEIF(preg_match("/(\d{2}\-\d{2}\-\d{2})/",$Nvals[21])==0  AND !empty($Nvals[21])) { ECHO "LA FECHA DE LA SEGUNDA RENOVACION NO TIENE EL FORMATO DD-MM-AA EN NUMEROS, REVISE<br/>"$i++; } IF($Nvals[22] AND preg_match("/(\d{2}\-\d{2}\-\d{2})/",$Nvals[22])==1) { $sql .= "E.renew3 LIKE '%$Fanio%' "; }ELSEIF(preg_match("/(\d{2}\-\d{2}\-\d{2})/",$Nvals[22])==AND !empty($Nvals[22])) { ECHO "LA FECHA DE LA TERCERA RENOVACION NO TIENE EL FORMATO DD-MM-AA EN NUMEROS, REVISE<br/>"$i++;}} 

Última edición por Urso; 16/11/2010 a las 15:09