ソースを参照

Uploaded API "producto/read" PHP file which processes data of each particular product.

miguel.cruz15 2 年 前
コミット
f1fae7d1fd
共有1 個のファイルを変更した120 個の追加0 個の削除を含む
  1. 120
    0
      api/producto/read.php

+ 120
- 0
api/producto/read.php ファイルの表示

@@ -0,0 +1,120 @@
1
+<?php
2
+
3
+    // Headers:
4
+
5
+    header('Access-Control-Allow-Origin: *');
6
+    header('Content-Type: application/json');
7
+
8
+    include_once '../../config/Database.php';
9
+    include_once '../../models/Producto.php';
10
+
11
+    // Conectarse a la base de datos:
12
+
13
+    $database = new Database();
14
+    $db = $database->connect();
15
+
16
+    // Crear instancia de Producto para obtener datos:
17
+
18
+    $id = 1;
19
+
20
+    if (isset($_GET['id'])) {
21
+      $id = intval($_GET['id']); //mysqli_real_escape_string($db, $_GET['id']));
22
+    }
23
+
24
+    $producto = new Producto($db, $id);
25
+
26
+    // Obtener datos del producto dado su identificador:
27
+
28
+    $datos = $producto->maindata();
29
+    $disenos = $producto->designdata();
30
+    $inventario = $producto->inventorydata();
31
+    $insignias = $producto->insigniasdata();
32
+
33
+    // Contar filas de datos obtenidos:
34
+
35
+    $num1 = $datos->rowCount();
36
+    $num2 = $disenos->rowCount();
37
+    $num3 = $inventario->rowCount();
38
+    $num4 = $insignias->rowCount();
39
+
40
+    // Si la tabla de datos básicos no está vacía...
41
+
42
+    if ($num1 > 0) {
43
+
44
+      // Crear arreglo de datos del producto:
45
+
46
+      $producto_arr = array();
47
+      $producto_arr['datos'] = array();
48
+      $producto_arr['disenos'] = array();
49
+      $producto_arr['inventario'] = array();
50
+      $producto_arr['insignias'] = array();
51
+
52
+      // Crear subarreglo con datos básicos:
53
+
54
+      while($row = $datos->fetch(PDO::FETCH_ASSOC)) {
55
+        extract($row);
56
+
57
+        $fila = array(
58
+          'producto' => $nom_producto,
59
+          'comerciante' => $nom_comerciante,
60
+          'id_comerciante' => $id_comerciante,
61
+          'precio' => $precio,
62
+          'cantidad' => $cantidad,
63
+          'default_diseno' => $id_default_diseno,
64
+          'default_inventario' => $id_default_inventario
65
+        );
66
+
67
+        array_push($producto_arr['datos'], $fila);
68
+      }
69
+
70
+      // Llenar subarreglo con diseños del producto:
71
+
72
+      while($row = $disenos->fetch(PDO::FETCH_ASSOC)) {
73
+        extract($row);
74
+
75
+        $diseno = array(
76
+          'diseno' => $diseno,
77
+          'id_diseno' => $id_diseno,
78
+          'img_diseno' => $imagen_chunk1.$imagen_chunk2
79
+        );
80
+
81
+        array_push($producto_arr['disenos'], $diseno);
82
+      }
83
+
84
+      // Llenar subarreglo con datos de inventario del producto:
85
+
86
+      while($row = $inventario->fetch(PDO::FETCH_ASSOC)) {
87
+        extract($row);
88
+
89
+        $tipo = array(
90
+          'tamano' => $tamano,
91
+          'id_inventario' => $id_inventario,
92
+          'precio' => $precio,
93
+          'cantidad' => $cantidad
94
+        );
95
+
96
+        array_push($producto_arr['inventario'], $tipo);
97
+      }
98
+
99
+      // Llenar subarreglo con datos de insignias del producto:
100
+
101
+      while($row = $insignias->fetch(PDO::FETCH_ASSOC)) {
102
+        extract($row);
103
+
104
+        $tipo = array(
105
+          'id_insignia' => $id_insignia,
106
+          'nom_insignia' => $nom_insignia
107
+        );
108
+
109
+        array_push($producto_arr['insignias'], $tipo);
110
+      }
111
+
112
+      // Convertir a JSON y desplegar:
113
+
114
+      echo json_encode($producto_arr);
115
+
116
+    } else {
117
+      echo json_encode(array('message' => 'No hay productos disponibles.'));
118
+    }
119
+
120
+?>