Foros aprenderaprogramar.com

Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: Javano en 11 de Junio 2015, 18:57

Título: Warning: mysql_fetch_assoc() expects parameter 1 to be resource boolean CU00842B
Publicado por: Javano en 11 de Junio 2015, 18:57
Buen día a todos espero que tengan un excelente día, bueno les comento mi inquietud.

Estoy practicando php y mysql, tengo una base de datos llamada concesionario la cual tiene tres tablas "autos,vendedores,ventas" las cuales están relacionada, autos con ventas y vendedores con ventas, para mi ejercicio coloque solo 4 campos en la tabla ventas "id_ventas,fecha,id_autos,id_vendedores", como se puede observar para poder mostrar datos de esta tabla se deben hacer una consulta a las otras dos tablas realice la consulta en mysql asi

Código: [Seleccionar]
SELECT ventas.fecha, vendedores.nombre, vendedores.apellidos, autos.marca, autos.placa FROM ventas LEFT JOIN autos ON ventas.id_auto = autos.id_autos LEFT JOIN vendedores ON ventas.id_vendedor=vendedores.id_vendedores;

y me muestra los resultas que le pido pero al momento de montar el codigo en el script con php me muestra este error
 
Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\concesionario\listarventas.php on line 27

El código que utilizo para mostrar en la web es este

Código: [Seleccionar]
<?php
 
include ("conectarse.php");
$link=Conectarse();
?>

<!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=utf-8" />
<title>Documento sin título</title>
</head>

<body>
<FORM ACTION="listarVendedores.php" >
Agregar Nueva Venta
          <TABLE BORDER=1 CELLSPACING=1 CELLPADDING=1 align="center">
                         <TR>
                             <Th>Fecha</Th>
                             <Th colspan="2">Auto</Th>
                             <Th colspan="2">Vendedor</Th>         
                             <Th>Acciones</Th>
                         </TR>
                              <?php
                             $peticion
="SELECT ventas.fecha, vendedores.nombre, vendedores.apellidos, autos.marca, autos.placa FROM ventas LEFT JOIN autos ON ventas.id_auto = autos.id_autos LEFT JOIN vendedores ON ventas.id_vendedor=vendedores.id_vendedores; order by fecha";
                              
$result=mysql_query($peticion,$link );
                             echo 
$count =mysql_num_rows($result);
                              while(
$row mysql_fetch_assoc($result)) 
                              {
?>

                          <tr>
                               <td><?php echo $row["fecha"?></td>
                               <td><?php echo $row["marca"]?></td>
                               <td><?php echo $row["placa"]?></td>
                               <td><?php echo $row["nombre"]?></td>
                               <td><?php echo $row["apellidos"]?></td>
                               <td> <a href="modificar.php">Modificar</a> - Eliminar</td>
                          </tr>
                                <?php
                                 
}
                                
?>

                    </table>
                    <p></p>
          </FORM>
</body>
</html>

Le agradezco me puedan colaborar identificando el error porque no doy cual es
el codigo de la BD completa es este

Código: [Seleccionar]
# Host: localhost  (Version: 5.6.24)
# Date: 2015-06-11 11:54:43
# Generator: MySQL-Front 5.3  (Build 4.214)

/*!40101 SET NAMES utf8 */;

#
# Structure for table "autos"
#

DROP TABLE IF EXISTS `autos`;
CREATE TABLE `autos` (
  `id_autos` int(11) NOT NULL AUTO_INCREMENT,
  `marca` varchar(30) CHARACTER SET utf8 NOT NULL DEFAULT '',
  `modelo` varchar(10) COLLATE utf8_spanish_ci NOT NULL DEFAULT '',
  `tipo` varchar(20) COLLATE utf8_spanish_ci NOT NULL DEFAULT '',
  `color` varchar(15) COLLATE utf8_spanish_ci NOT NULL DEFAULT '',
  `placa` varchar(10) COLLATE utf8_spanish_ci NOT NULL DEFAULT '',
  `precio` int(11) NOT NULL DEFAULT '0',
  PRIMARY KEY (`id_autos`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8 COLLATE=utf8_spanish_ci;

#
# Data for table "autos"
#

INSERT INTO `autos` VALUES (1,'renault','2010','deportivo','negro','abc100',2536000),(2,'Mazda','2009','automovil','Naranja','abc101',3025698),(3,'Ferrari','2011','deportivo','blanco','abc102',3625982),(4,'mercedes benz','2010',' camioneta','gris','abc103',4536254),(5,'honda','2010','convertible','amarillo','abc104',5236548),(6,'Mazda','2014','convertible','rojo','abc105',2365887),(7,'Ferrari','2016','Carrera','Rojo','abc106',125365989);

#
# Structure for table "vendedores"
#

DROP TABLE IF EXISTS `vendedores`;
CREATE TABLE `vendedores` (
  `id_vendedores` int(11) NOT NULL AUTO_INCREMENT,
  `cedula` int(11) NOT NULL DEFAULT '0',
  `nombre` varchar(40) COLLATE utf8_spanish_ci NOT NULL DEFAULT '',
  `apellidos` varchar(40) COLLATE utf8_spanish_ci NOT NULL DEFAULT '',
  `direccion` varchar(90) CHARACTER SET utf8 DEFAULT NULL,
  `telefono` varchar(15) COLLATE utf8_spanish_ci DEFAULT NULL,
  PRIMARY KEY (`id_vendedores`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8 COLLATE=utf8_spanish_ci;

#
# Data for table "vendedores"
#

INSERT INTO `vendedores` VALUES (1,654987,'fabian','lima','otro hueco peor','3121111110'),(2,646587,'edwin','luna','la montana','3107304117'),(3,9879878,'jaime','ochoa','otro hueco','3130000001'),(4,321464,'jeisser','rodriguez','el hueco','3116959616'),(6,123456,'geiver','miranda','ptw wilches','579878');

#
# Structure for table "ventas"
#

DROP TABLE IF EXISTS `ventas`;
CREATE TABLE `ventas` (
  `id_ventas` int(11) NOT NULL AUTO_INCREMENT,
  `fecha` date NOT NULL DEFAULT '0000-00-00',
  `id_auto` int(11) NOT NULL DEFAULT '0',
  `id_vendedor` int(11) NOT NULL DEFAULT '0',
  PRIMARY KEY (`id_ventas`),
  KEY `llave_auto_ventas` (`id_auto`),
  KEY `llave_vendedores_ventas` (`id_vendedor`),
  CONSTRAINT `llave_auto_ventas` FOREIGN KEY (`id_auto`) REFERENCES `autos` (`id_autos`) ON DELETE CASCADE ON UPDATE CASCADE,
  CONSTRAINT `llave_vendedores_ventas` FOREIGN KEY (`id_vendedor`) REFERENCES `vendedores` (`id_vendedores`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_spanish_ci;

#
# Data for table "ventas"
#

INSERT INTO `ventas` VALUES (1,'2012-02-03',2,3),(2,'2012-05-01',1,2);
Título: Re:Tutorial básico del programador web: PHP desde cero CU00842B
Publicado por: Mastermind en 11 de Junio 2015, 22:36
Hola aquí se comenta un problema parecido https://www.aprenderaprogramar.com/foros/index.php?topic=2403 a lo mejor te sirve

Saludos  :D
Título: Re:Tutorial básico del programador web: PHP desde cero CU00842B
Publicado por: Javano en 12 de Junio 2015, 23:36
Ya encontré el problema gracias de todo modos, es un ; que esta antes del order by.
Título: Re:Tutorial básico del programador web: PHP desde cero CU00842B
Publicado por: Mastermind en 13 de Junio 2015, 01:08
Parece mentira que un simple ; pueda generar un dolor de cabeza pero así es la programación  ???

Saludos