从同一个数据库查询两个表不起作用:PHP它必须很容易,但我看不到它

从同一个数据库查询两个表不起作用:PHP它必须很容易,但我看不到它,php,mysql,Php,Mysql,我希望能在这里得到一些帮助,我是PHP新手 我有一个数据库,其中包含两个表产品和类别,正如您可以想象的那样,我希望查询这两个表,以便了解整个情况。问题是它不起作用。以前,我在同一个表中有这个信息,而且它是有效的,所以我想它与从同一个PHP文件查询两个表有关 代码如下: $query = "SELECT id, stock, nombre, foto, descripcion, celda , precio FROM productos WHERE 1 =

我希望能在这里得到一些帮助,我是PHP新手

我有一个数据库,其中包含两个表产品和类别,正如您可以想象的那样,我希望查询这两个表,以便了解整个情况。问题是它不起作用。以前,我在同一个表中有这个信息,而且它是有效的,所以我想它与从同一个PHP文件查询两个表有关

代码如下:

$query = "SELECT id, stock, nombre, foto, descripcion, celda , precio
          FROM productos
          WHERE 1 = 1";
$result = mysql_query($query);
$num = mysql_numrows($result);

$i=0;
$data = array();
while ($i < $num) {
  $data_id[$i] = mysql_result($result,$i,"id");
  $data_stock[$i] = mysql_result($result,$i,"stock");
  $data_nombre[$i] = mysql_result($result,$i,"nombre");
  $data_foto[$i] = mysql_result($result,$i,"foto");
  $data_precio[$i] = mysql_result($result,$i,"precio");
  $data_celda[$i] = mysql_result($result,$i,"celda");
  $data_descripcion[$i] = mysql_result($result,$i,"descripcion");
  ++$i;
}

$query2 = "SELECT namec, picturec
           FROM categorias
           WHERE 1 = 1 ";
$result2 = mysql_query($query2);
$num2 = mysql_numrows($result2);

$h = 0;
while ($h < $num2) {
  $data_celda_nombre[$h] = mysql_result($result2,$h,"namec");
  $data_celda_foto[$h] = mysql_result($result2,$h,"picturec");
  ++$h;
}

$data = array(
  "ids" => $data_id,
  "stocks" => $data_stock,
  "nombre" => $data_nombre,
  "foto" => $data_foto,
  "precio" => $data_precio,
  "celda" => $data_celda,
  "descripcion" => $data_descripcion,
  "celda_foto" => $data_celda_foto,
  "celda_nombre" => $data_celda_nombre
);

echo (json_encode($data));
问题是我没有名字和照片,为什么

有人能帮我吗

非常感谢。
Roberto L.

试试这段代码——我没有真正改变任何东西,只是对代码进行了重构,使其更加标准,如果这仍然不能满足您的要求,我将尝试解决您仍然存在的问题

$data_id = $data_stock = $data_nombre = $data_foto = $data_precio = $data_celda = $data_descripcion = $data_celda_nombre = $data_celda_foto = array();

$query = "SELECT id, stock, nombre, foto, descripcion, celda , precio
          FROM productos";
if (!$result = mysql_query($query)) die('MySQL Error: '.mysql_error());
while ($row = mysql_fetch_assoc($result)) {
  $data_id[] = $row['id'];
  $data_stock[] = $row['stock'];
  $data_nombre[] = $row['nombre'];
  $data_foto[] = $row['foto'];
  $data_precio[] = $row['precio'];
  $data_celda[] = $row['celda'];
  $data_descripcion[] = $row['descripcion'];
}

$query = "SELECT namec, picturec
          FROM categorias";
if (!$result = mysql_query($query)) die('MySQL Error: '.mysql_error());
while ($row = mysql_fetch_assoc($result)) {
  $data_celda_nombre[] = $row['namec'];
  $data_celda_foto[] = $row['picturec'];
}

$data = array(
  "ids" => $data_id,
  "stocks" => $data_stock,
  "nombre" => $data_nombre,
  "foto" => $data_foto,
  "precio" => $data_precio,
  "celda" => $data_celda,
  "descripcion" => $data_descripcion,
  "celda_foto" => $data_celda_foto,
  "celda_nombre" => $data_celda_nombre
);

echo json_encode($data);

谢谢你,戴夫。它仍然不起作用。我不知道为什么。我认为PHP不允许我在同一个PHP文件上查询两个不相关的表。为什么还会给我这么麻烦??谢谢@DaveRandom