PHP - Inner Join no me funciona.....

 
Vista:
Imágen de perfil de Eduardo
Val: 165
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Inner Join no me funciona.....

Publicado por Eduardo (175 intervenciones) el 23/12/2020 17:34:08
Hola a todos necesito ayuda.... tengo el siguiente problema para usar INNER JOIN y hacer consulta en dos tablas y mostrar los resultados

tengo dos tablas la cual tienen la siguiente estructura

Tabla: posicion_archivo

id_posicion
tipo_pos
estado_pos
numero_pos
carpeta_pos
id_nombre_pos
color_pos

la clave primaria de la anterior tabla es id_posicion y en el campo id_nombre_pos se almacenan los valores foráneos (identificacion) de la tabla datos_archivo que servirá de referencia para mostrar los datos que necesito la cual es la tabla a continuación

Tabla: datos_archivo

id
nombre
identificacion
municipio
estadotrabajador

la clave primaria y autoincremental es id y el campo identificación es un campo que almacena un valor único para cada trabajador, su identificación


deseo mostrar en una busqueda el tipo_pos, numero_pos, carpeta_pos y color_pos en un resultado hecho a id, nombre identificacion, municipio, estado trabajador para ser mostrado

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
// toma el valor a consultar y lo guarda en la variable siguiente
$nompropietario = $_POST['nombrepro'];
 
$serv = mysql_connect("localhost","usuario","contrasena");
mysql_select_db("basededatos",$serv);
//------------------PROBANDO CODIGO-----------------------------------------------------------------------
$consulta=mysql_query("SELECT t2.tipo_pos, t2.numero_pos, t2.carpeta_pos, t2.color_pos, t1.id, t1.nombre, t1.identificacion, t1.municipio, t1.estadotrabajador FROM posicion_archivo t2 INNER JOIN datos_archivo t1 WHERE t2.id_nombre_pos " . implode(" AND ", array_map(function($ele){return "(t1.nombre LIKE '$ele%' OR t1.nombre LIKE '% $ele%' OR t1.identificacion  LIKE '%$ele%' OR t1.municipio  LIKE '%$ele%')";
}, explode(" ", $nompropietario))) . ";", $serv);
//--------------CODIGO VIEJO ----------------------
//$consulta = mysql_query("SELECT * FROM datos_archivo WHERE " . implode(" AND ", array_map(function($ele){return "(nombre LIKE '$ele%' OR nombre LIKE '% $ele%' OR identificacion  LIKE '%$ele%' OR municipio  LIKE '%$ele%')";
//}, explode(" ", $nompropietario))) . ";", $serv);
//----------------------------------------------------------------------------------------------
$numero = mysql_num_rows($consulta);
 
//--------------------
if(empty($nompropietario))
{
echo mysql_error();
echo "<br><b><center>Ingrese el Nombre a consultar </center></b><br>";
//echo "<b><center><a href='consultanombre.php'>Reintentar</a></center></b>";
echo "<center><a href='consultanombre.php'><img src='./img/reintentar.png' width='82' height='20' alt=''/></a></center>";
}else{
if($row = mysql_fetch_array($consulta)) {
///*
 
// para la linea del Print (abajo) donde se muestra el Numero
//<td style='text-align: center'><a href= verempleado.php?id=".$row["id"]." target= '_blank' >".number_format($row['identificacion'], 0, '', '.')."</a></td>
print "<b><h2>";
print "</h2><center><table id='tabla' class='display' border=1 cellpadding=0 cellspacing=0>";
print "<thead><tr>
  <th width='236' bgcolor='#FF6600'>NOMBRES Y APELLIDOS</th>
  <th width='134' bgcolor='#FF6600'>IDENTIFICACIÓN</th>
  <th width='109' bgcolor='#FF6600'>MUNICIPIO</th>
  <th width='91' bgcolor='#FF6600'>UBICACIÓN</th>
   <th width='65' bgcolor='#FF6600'>ESTADO</th>
   <th width='80' bgcolor='#FF6600'>ETIQUETA</th>
   <th width='119' bgcolor='#FF6600'>COLOR</th>
</tr></thead><tbody>";
do {
print"<tr>
  <td><a href= verempleado.php?id=".$row["id"]."&identificacion=".$row["identificacion"]." target= '_blank' >".$row["nombre"]."</a></td>
  <td style='text-align: center'><a href= verempleado.php?id=".$row["id"]."&identificacion=".$row["identificacion"]." target= '_blank' >".$row['identificacion']."</a></td>
  <td><center><a href= verempleado.php?id=".$row["id"]."&identificacion=".$row["identificacion"]." target= '_blank' >".$row["municipio"]."</a></center></td>
  <td><center><a href= verempleado.php?id=".$row["id"]."&identificacion=".$row["identificacion"]." target= '_blank' >".$row["tipo_pos"]." ".substr($row["numero_pos"], 0, 1).$row["gab"].'<br>'." CARPETA: ".$row["carpeta_pos"]." </a></center></td>
  <td><center><a href= verempleado.php?id=".$row["id"]."&identificacion=".$row["identificacion"]." target= '_blank' >".$row["estadotrabajador"]."</a></center></td>
  <td><center><a href= verempleado.php?id=".$row["id"]."&identificacion=".$row["identificacion"]." target= '_blank' >".str_replace(' ', '', substr($row["municipio"], 0, 5))."-".$row["carpeta_pos"]."-".substr($row["estadotrabajador"], 0, 1)."-".substr($row["tipo_pos"], 0, 1).$row["numero_pos"]." </a></center></td>
  <td><center><a href= verempleado.php?id=".$row["id"]."&identificacion=".$row["identificacion"]." target= '_blank' >".$row["color_pos"]."</a></center></td>
  </tr>
";
}
while($row=mysql_fetch_array($consulta));
print"</tbody></table></center>";
//echo "<b><a href='javascript:window.print(); void 0;'>Imprimir</a></b>  |  ";
echo "<a href='javascript:window.print(); void 0;'><img src='./img/imprimir2.png' width='66' height='15' alt=''/></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
//echo "<b><a href='consultanombre.php'>Nueva Busqueda</a></b>";
echo "<a href='consultanombre.php'><img src='./img/nuevabusqueda2.png' width='104' height='16' alt=''/></a>";
}
//*/
else{
echo "<br>";
echo mysql_error();
print "<b><center><h3>Nombre: ".strtoupper($nompropietario)." no se encuentra en la Base de Datos</h3>";
//echo "<b><center><a href='consultanombre.php'>Nueva Busqueda</a></center></b>";
echo "<br>";
echo "<center><a href='agregarnuevo.php'><img src='./img/addboton.png' width='88' height='53'  alt=''/></a></center>";
echo "<br>";
echo "<br>";
echo "<br>";
echo "<center><a href='consultanombre.php'><img src='./img/reintentar.png' width='82' height='20'  alt=''/></a></center>";
}
}
break;
?>

espero me puedan ayudar.. mil Gracias!!!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder