Problemas al intentar conectar dos tablas diferentes creadas con MysQL

Hola amigos, necesito hacer una consulta donde me diga un objeto existe en otra tabla por ejemplo,
en una tabla tengo: id_prod nombre cantidad
en la otra tengo: id_prestamo, id_producto
y deseo hacer una consulta donde me muestre todos mis productos y me diga si existe alguno de ese tipo prestado, ejm.
consulta select                                  tabla1                                      tabla2
producto1     no            id_producto          nombre               id_prestamo   id_producto
producto2     si                       1                 producto1                      1                      2
producto3     si                       2                 producto2                       2                     2
                                               3 producto3 3 2
                                                                                                         4 3
En el select deben estar todos mis productos de la tabla 1, y en la tabla2 pueden estar repetidos o prestados varios artículos del mismo tipo, lo que quiero es que me diga si existen al menos uno prestado me diga que si, y si no existe ninguno me diga que no.
De antemano muchas gracias a quien pueda ayudarme :)

1 respuesta

Respuesta
1
El que te diga si o no, dependerá de algún campo que previamente guarde dicha información.
Te agregaré un ejemplo de una consulta, la cual además tiene paginación para que muestre POR cantidad de registros por página. Cuídalo, que me costó harto hacerlo.
**********************
<? session_start();
// comprobar variables de sesión
  if (session_is_registered("valid_user"))
  {  }
  else
  {
echo "
<script>location.href='../index.php';</script>
";
  }
?>
<?include("../includes/head.php");?>
<html>
<head>
<title>Lista de Artículos</title>
<LINK REL="stylesheet" HREF="../estilos.css" TYPE="text/css">
</head>
<body background="../images/fondo.jpg">
<table border="0" align="center">
<tr>
<td><img src="./imagenes/lista.gif"></img></td>
<td><a href="buscar.php">    <img border=0 src="../images/buscar.gif" title="Buscar registro"></img></td>
<td><a href="ingresar.php">    <img border=0 src="../images/agregar.gif" title="Agregar registro"></img></td>
</tr>
</table>
<SCRIPT LANGUAGE="JavaScript">
function imprimir() {
  if (window.print)
    window.print()
  else
    alert("Disculpe, su navegador no soporta esta opción.");
}
</SCRIPT>
<?
include("../conex.php");
$link=conectarse();
if(!isset($_GET['pag'])){
/*Si la Variable Pag no esta en la URL, la setea en  por defecto Primera Pagina*/
$pag=1;
}else{
/*De lo contrario la Variable de Sistema $_GET captura la variable pasada por la Url 'pag' y la asiga la Asigna a la Variable $pag */
$pag=$_GET['pag'];
}
/*Esta Variable es la que indica la cantidad de registros a mostrarse en cada una de las páginas del sistema de Paginacion*/
$hasta=10;    
/* Es aquí donde se indicara la primera posision del cursor para recoger los datos en la base de datos*/
$desde=($hasta*$pag)-$hasta;
$sql="SELECT * FROM articulos ORDER BY inv_id LIMIT $desde, $hasta";
$resultado= mysql_query($sql,$link);
        echo "
<div align=center>";
        echo "
<table align=center border=1 width=70%>
";
        echo "
<tr>
";
        echo "
<td align=center><b><font size=4>ID</font></b></td>
<td align=center><b><font size=4>Código</font></b></td>
<td width=50 align=center><b><font size=4>Imágen<font></b></td>
<td align=center><b><font size=4>Nombre</font></b></td>
<td align=center><b><font size=4>Stock</font></b></td>
<td align=center><b><font size=4>Familia</font></b></td>
<td align=center><b><font size=4>Acción</font></b></td>
";
        echo "
</tr>
";
while ($row = mysql_fetch_array($resultado)){
        echo "
<tr>
<td>$row[inv_id]</td>
<td>$row[inv_codigo]</td>
<td align=center><img class="cien" src=$row[inv_rutafoto]></img></td>
<td>$row[inv_nombre]</td>
<td align=center>$row[inv_stock]</td>
<td align=right>$row[inv_familia]</td>
<td align=center>
            <a href=editarf.php?inv_id=$row[inv_id]><img widht=32 height=32 border=0 src=../images/editar.gif></img></a>&nbsp&nbsp
            <a href=borrarf.php?inv_id=$row[inv_id]><img widht=32 height=32 border=0 src=../images/borrar.gif></img></a></td>
<BR>";
        }
        echo "
</tr>
";
        echo "
</table>
";
        echo "</div>
";
?>
<br>
<?PHP
/*
Desde aca se crea el Paginador
1.- Creo una Consulta SQL para saber la cantidad de Registro de la tabla 'COUNT("CAMPO")'*/
$sql="select count(inv_nombre) from articulos";
$todo=mysql_query($sql,$link);
$r2=mysql_fetch_row($todo);
/*2.- Funcion CEIL("valor_a redondear"), esta función
redondea al entero siguiente, osea 2.3 = 3, para obtener la
cantidad de paginas q debo emplear en este paginador segun cual sea la consulta*/
$paginas=ceil($r2[0]/$hasta);
/*3.- Se imprime un Mensaje "PÁGINA [X] DE [Y]", pero puede ser como uno quiera
q este emsaje aparesca, o simplememnte se pude anular, pero es buena ida
decir al visitante cuantas paginas arroja su consulta, ya sea en un Buscador
En un curso, en un álbum de música, en cualquier tipo de paginación que se necesite mostrar*/
echo "<br><center>Página <b>".$pag."</b> de <b>".$paginas."</b></center>";
/*4.- Se Crea el Mensaje Atrás, Index, Adelante
* primera pagian ($pag=1)
* retrocede una pagina ($pag=$pag-1)
* delanta una pagina ($pag=$pag+1)
* ultima pagina ($pag=$paginas)*/
echo "<center><a href=\"mostrar.php\"><img border=0 src=../images/home.gif title=\"Inicio\"></a></center>";
echo "
<table border=0 align=center width=80>
";
echo "
<tr>
";
echo "
<td>";
if($pag>1){
    echo "    <center>
        <a href=\"mostrar.php?pag=1\"><img border=0 src=../images/primero.gif title=\"Ir al primer registro\"></a>
        <a href=\"mostrar.php?pag=".($pag-1)."\"><img border=0 src=../images/anterior.gif title=\"Ir al registro anterior\"></a></center>";
}
if($pag<$paginas){
    echo "    <center>
        <a href=\"mostrar.php?pag=".($pag+1)."\"><img border=0 src=../images/siguiente.gif title=\"Ir al siguiente registro\"></a>
        <a href=\"mostrar.php?pag=".($paginas)."\"><img border=0 src=../images/ultimo.gif title=\"Ir al último registro\"></a></center>";
        }    
echo "</td>
";
echo "
</tr>
";
echo "
</table>
";
/*Por ultimo se leerá la Base de datos y se imprime en pantalla y se obtiene un resultado*/
mysql_free_result($todo);                                                                                            
?><br>
<a href="menu.php" title="Volver"><img border="0" src=../images/back.gif></a>
<A HREF="javascript:imprimir()" title="Imprimir"><img border="0" src=../images/print.gif></A>
</body>
</html>

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas