Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: geshiro en 14 Enero 2016, 03:31 am



Título: ayuda con una consulta en php ya que rediseñe mi base de datos
Publicado por: geshiro en 14 Enero 2016, 03:31 am
cuando tenia mis tablas separadas si me agarra va bien pero al cambiarla por tablas relacionadas foreigns key  , ya no me muestra mi tabla de mis produtos

Código
  1. function searchProduct($id,$main=false,$limit=false){
  2. if($main !== false && $limit !== false){
  3. $sql="SELECT * FROM product WHERE code like '%".$id."%' or product like '%".$id."%' ORDER BY idproduct ASC LIMIT $main,$limit";
  4. }else{
  5. $sql="SELECT * FROM product WHERE code like '%".$id."%' or product like '%".$id."%' ORDER BY idproduct";
  6. }
  7. echo $sql;
  8. $this->conexion->conexion->set_charset('utf8');
  9. $result=$this->conexion->conexion->query($sql);
  10. $array = array();
  11. while($record = $result->fetch_array(MYSQL_NUM)){
  12. $array[] = $record;
  13. }
  14. return $array;
  15. $this->conexion->cerrar();
  16. }
mis tablas son estas
Código
  1. CREATE TABLE IF NOT EXISTS `product` (
  2.  `idproduct` INT(11) NOT NULL,
  3.  `code` VARCHAR(15) NOT NULL,
  4.  `product` VARCHAR(50) NOT NULL,
  5.  `price` DECIMAL(9,2) NOT NULL,
  6.  `stock` INT(11) NOT NULL
  7. ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
  8.  
  9. --
  10. -- Volcado de datos para la tabla `product`
  11. --
  12.  
  13. INSERT INTO `product` (`idproduct`, `code`, `product`, `price`, `stock`) VALUES
  14. (1, 'MG01', 'IPHONE 4S', '5000.00', 6),
  15. (2, 'TCL01', 'IMAC', '5000.00', 6),
  16. (3, 'ILK059', 'SAMSUNG', '5000.00', 6),
  17. (4, '4520', 'HAWEI', '5000.00', 6),
  18. (5, 'A081', 'SNOWBOARD', '5000.00', 6),
  19. (6, 'MSD01', 'SKYBOARD', '5000.00', 6),
  20. (7, 'AUR01', 'SADDS', '5000.00', 6),
  21. (8, 'SA-205', 'CCD', '5000.00', 6),
  22. (9, 'KB-1830', 'USB', '5000.00', 6),
  23. (10, 'MGa01', 'MOVIES', '5000.00', 6),
  24. (11, 'PAS48', 'KNM', '5000.00', 6),
  25. (12, 'OE86Z', 'PJAGDS', '5000.00', 6),
  26. (13, 'HVMHFV', 'ASSAD', '5000.00', 6),
  27. (14, 'AFDD', 'CXVVXC', '5000.00', 6),
  28. (15, 'DASFSDFD', 'XCXCV', '5000.00', 6);
  29.  
  30. -- --------------------------------------------------------
  31.  
  32. --
  33. -- Estructura de tabla para la tabla `purchase`
  34. --
  35.  
  36. CREATE TABLE IF NOT EXISTS `purchase` (
  37.  `idpurchase` INT(11) NOT NULL,
  38.  `user_iduser` INT(11) NOT NULL,
  39.  `user_typeuser_idtypeuser` INT(11) NOT NULL,
  40.  `product_idproduct` INT(11) NOT NULL
  41. ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
  42.  
  43. --
  44. -- Volcado de datos para la tabla `purchase`
  45. --
  46.  
  47. INSERT INTO `purchase` (`idpurchase`, `user_iduser`, `user_typeuser_idtypeuser`, `product_idproduct`) VALUES
  48. (1, 1, 1, 10),
  49. (2, 2, 2, 10);
  50.  
  51. ADD CONSTRAINT `fk_purchase_product1` FOREIGN KEY (`product_idproduct`) REFERENCES `product` (`idproduct`) ON DELETE NO ACTION ON UPDATE NO ACTION,
  52.  


Título: Re: ayuda con una consulta en php ya que rediseñe mi base de datos
Publicado por: sodark en 4 Marzo 2016, 19:39 pm
Revisa el manual de Sql , como realizar consultas a tablas relacionadas.