我正在处理将根据相关项目显示的产品列表,这意味着如果有两个或多个与单个项目相关的产品,则应在表格中显示它们,在此我显示代码和视图:
我查询的模型:
class ModeloProductos{ /*=======================================
====== MOSTRAR PROMATE =============================================*/
static public function mdlMostrarPromate($tabla, $item, $valor){ if($item != null){ $stmt = Conexion::conectar()->prepare("SELECT * FROM $tabla WHERE $item = :$item");
$stmt -> bindParam(":".$item, $valor, PDO::PARAM_STR); $stmt -> execute();
return $stmt -> fetch();
}else{ $stmt = Conexion::conectar()->prepare("SELECT * FROM $tabla WHERE $item = :$item");
$stmt -> execute(); return $stmt -> fetchAll(); }
控制器:
class ControladorProductos{ /*=============================================
MOSTRAR PROMATE =============================================*/
static public function ctrMostrarPromate($item, $valor){
$tabla = "productos";
$respuesta = ModeloProductos::mdlMostrarPromate($tabla, $item, $valor); //var_dump($respuesta); return $respuesta; } }
视图如下所示,值得一提的是,在$ value中,我从url的_GET方法调用了项目的ID:
<?php $item = "id_categoria"; $valor = $_GET["idPromate"];
$productos = ControladorProductos::ctrMostrarPromate($item, $valor);
$listaproductos = array($productos); foreach ($listaproductos as $key => $value)
{ echo ' <tr> <td>'.($key+1).'</td> <td class="text-uppercase">'.$value["descripcion"].'</td> <td class="text-
uppercase">'.$value["tipoM"].'</td> <td class="text-
uppercase">'.$value["nomProyecto"].'</td> <td class="text-
uppercase">'.$value["stock"].'</td> <td class="text-
uppercase">'.$value["fecha"].''</td> }
在视图中没有数组的情况下,它会显示偏移量错误,因此使用数组尝试发送与可见的项目ID链接的产品列表,然后使用foreach尝试分解列表中的信息view,所以起初我想我会实现的,因为它向我展示了这个结果:
但是当在phpMyAdmin中进行模型查询时,我意识到有两个与该项目相关的产品:
当我因为他没有向我展示其他结果而感到怀疑时,就在那里,我将非常有帮助