Skip to content

Commit d68ab1a

Browse files
author
alemandiazcarlos
committed
ok
1 parent 92c61d4 commit d68ab1a

File tree

15 files changed

+1902
-214
lines changed

15 files changed

+1902
-214
lines changed
Lines changed: 125 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,125 @@
1+
<?php
2+
3+
// http://localhost/Proyecto/codefuncode/blog_entradas/error_consulta_larga/buscador/buscador.php
4+
$GLOBALS['conexion'] = "conn.php";
5+
busca_anuncio();
6+
7+
function busca_anuncio()
8+
{
9+
$idmarca = 1;
10+
$idmodelo = 2;
11+
12+
include $GLOBALS['conexion'];
13+
try {
14+
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
15+
$conn->exec('SET CHARACTER SET UTF8');
16+
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
17+
// $conn->execute('SET CHARACTER SET UTF8');
18+
$stmt = $conn->prepare(
19+
"SELECT
20+
anuncio.idanuncio,
21+
anuncio.nombre,
22+
anuncio.pagado,
23+
-- anuncio.direccion,
24+
anuncio.telefono,
25+
anuncio.email,
26+
anuncio.idcategoria,
27+
categoria.nombre as nombre_categoria,
28+
anuncio.idmarca,
29+
marca.nombre as nombre_marca,
30+
anuncio.idmodelo,
31+
modelo.nombre as nombre_modelo,
32+
anuncio.year,
33+
anuncio.idclasificacion,
34+
clasificacion.nombre as nombre_clasificacion,
35+
anuncio.idcondicion,
36+
condicion.nombre as nombre_condicion,
37+
anuncio.idtransmission,
38+
transmission.nombre as nombre_trasmission,
39+
anuncio.licencia,
40+
anuncio.multas,
41+
anuncio.millage,
42+
anuncio.descripcion,
43+
-- anuncio.imagen,
44+
anuncio.full_lablel,
45+
anuncio.idpueblo,
46+
pueblo.nombre as nombre_pueblo,
47+
anuncio.precio,
48+
anuncio.mejoroferta
49+
FROM
50+
anuncio,
51+
categoria,
52+
marca,
53+
modelo,
54+
clasificacion,
55+
condicion,
56+
transmission,
57+
pueblo
58+
WHERE anuncio.idmarca=:idmarca
59+
AND anuncio.idmodelo=:idmodelo
60+
AND categoria.idcategoria=anuncio.idcategoria
61+
AND marca.idmarca=anuncio.idmarca
62+
AND modelo.idmodelo=anuncio.idmodelo
63+
AND clasificacion.idclasificacion=anuncio.idclasificacion
64+
AND condicion.idcondicion=anuncio.idcondicion
65+
AND transmission.idtransmission=anuncio.idtransmission
66+
AND pueblo.idpueblo=anuncio.idpueblo"
67+
// GROUP BY anuncio.idanuncio"
68+
);
69+
$stmt->bindParam(':idmarca', $idmarca);
70+
$stmt->bindParam(':idmodelo', $idmodelo);
71+
72+
if ($stmt->execute()) {
73+
74+
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
75+
// $result = $stmt->fetchAll();
76+
77+
for ($i = 0; $i < count($result); $i++) {
78+
79+
$imagenes_encontradas = buscaImagenes_anuncio($result[$i]['idanuncio']);
80+
81+
array_push($result[$i], $imagenes_encontradas);
82+
83+
}
84+
85+
echo json_encode($result);
86+
87+
} else {
88+
$result = array(
89+
"resultado" => "error");
90+
echo json_encode($result);
91+
}
92+
93+
} catch (PDOException $e) {
94+
echo "Error: " . $e->getMessage();
95+
}
96+
$conn = null;
97+
98+
}
99+
100+
function buscaImagenes_anuncio($id)
101+
{
102+
103+
include $GLOBALS['conexion'];
104+
try {
105+
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
106+
107+
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
108+
109+
$stmt = $conn->prepare("SELECT * FROM imagenes WHERE idanuncio=:idanuncio");
110+
$stmt->bindParam(':idanuncio', $id);
111+
$stmt->execute();
112+
113+
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
114+
115+
return $result;
116+
117+
} catch (PDOException $e) {
118+
// NOTA
119+
// Retorna falso , sin embargo no esta controlada
120+
// la acción y retorna falso, sera error grave
121+
// return false;
122+
echo "Error: " . $e->getMessage();
123+
}
124+
$conn = null;
125+
}
Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
<?php
2+
// http://localhost/Proyecto/codefuncode/blog_entradas/error_consulta_larga/buscador/buscador2.php
3+
$GLOBALS['conexion'] = "conn.php";
4+
5+
$idmarca = 1;
6+
$idmodelo = 2;
7+
8+
$consulta =
9+
"SELECT
10+
anuncio.idanuncio,
11+
anuncio.nombre,
12+
anuncio.pagado,
13+
anuncio.telefono,
14+
anuncio.email,
15+
anuncio.idcategoria,
16+
categoria.nombre as nombre_categoria,
17+
anuncio.idmarca,
18+
marca.nombre as nombre_marca,
19+
anuncio.idmodelo,
20+
modelo.nombre as nombre_modelo,
21+
anuncio.year,
22+
anuncio.idclasificacion,
23+
clasificacion.nombre as nombre_clasificacion,
24+
anuncio.idcondicion,
25+
condicion.nombre as nombre_condicion,
26+
anuncio.idtransmission,
27+
transmission.nombre as nombre_trasmission,
28+
anuncio.licencia,
29+
anuncio.multas,
30+
anuncio.millage,
31+
anuncio.descripcion,
32+
anuncio.full_lablel,
33+
anuncio.idpueblo,
34+
pueblo.nombre as nombre_pueblo,
35+
anuncio.precio,
36+
anuncio.mejoroferta,
37+
imagenes.descripcion_imagen,
38+
imagenes.nombre_directorio ,
39+
imagenes.ruta_imagen
40+
FROM anuncio
41+
JOIN categoria ON categoria.idcategoria=anuncio.idcategoria
42+
JOIN marca ON marca.idmarca=anuncio.idmarca
43+
JOIN modelo ON modelo.idmodelo=anuncio.idmodelo
44+
JOIN clasificacion ON clasificacion.idclasificacion=anuncio.idclasificacion
45+
JOIN condicion ON condicion.idcondicion=anuncio.idcondicion
46+
JOIN transmission ON transmission.idtransmission=anuncio.idtransmission
47+
JOIN pueblo ON pueblo.idpueblo=anuncio.idpueblo
48+
JOIN imagenes ON imagenes.idanuncio=anuncio.idanuncio
49+
AND imagenes.numero_imagen=1
50+
WHERE anuncio.idmarca={$idmarca}
51+
AND anuncio.idmodelo={$idmodelo}";
52+
53+
busca_anuncio($consulta);
54+
function busca_anuncio($consulta)
55+
{
56+
header('Content-Type: application/json; charset=utf-8');
57+
// $idmarca =
58+
// json_decode($_GET['idmarca']);
59+
// $idmodelo =
60+
// json_decode($_GET['idmodelo']);
61+
62+
include $GLOBALS['conexion'];
63+
try {
64+
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
65+
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
66+
$stmt = $conn->query($consulta);
67+
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
68+
echo json_encode($result);
69+
70+
} catch (PDOException $e) {
71+
echo "Error: " . $e->getMessage();
72+
}
73+
$conn = null;
74+
75+
}
Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
<?php
2+
// https://forum.infinityfree.net/t/db-error-the-select-would-examine-more-than-max-join-size-rows/5885
3+
// http://localhost/Proyecto/codefuncode/blog_entradas/error_consulta_larga/buscador/buscador3.php
4+
$GLOBALS['conexion'] = "conn.php";
5+
6+
$idmarca = 1;
7+
$idmodelo = 2;
8+
9+
$consulta =
10+
"SELECT
11+
anuncio.idanuncio,
12+
anuncio.nombre,
13+
anuncio.pagado,
14+
anuncio.telefono,
15+
anuncio.email,
16+
anuncio.idcategoria,
17+
categoria.nombre as nombre_categoria,
18+
anuncio.idmarca,
19+
marca.nombre as nombre_marca,
20+
anuncio.idmodelo,
21+
modelo.nombre as nombre_modelo,
22+
anuncio.year,
23+
anuncio.idclasificacion,
24+
clasificacion.nombre as nombre_clasificacion,
25+
anuncio.idcondicion,
26+
condicion.nombre as nombre_condicion,
27+
anuncio.idtransmission,
28+
transmission.nombre as nombre_trasmission,
29+
anuncio.licencia,
30+
anuncio.multas,
31+
anuncio.millage,
32+
anuncio.descripcion,
33+
anuncio.full_lablel,
34+
anuncio.idpueblo,
35+
pueblo.nombre as nombre_pueblo,
36+
anuncio.precio,
37+
anuncio.mejoroferta,
38+
imagenes.descripcion_imagen,
39+
imagenes.nombre_directorio ,
40+
imagenes.ruta_imagen
41+
FROM anuncio
42+
JOIN categoria ON categoria.idcategoria=anuncio.idcategoria
43+
JOIN marca ON marca.idmarca=anuncio.idmarca
44+
JOIN modelo ON modelo.idmodelo=anuncio.idmodelo
45+
JOIN clasificacion ON clasificacion.idclasificacion=anuncio.idclasificacion
46+
JOIN condicion ON condicion.idcondicion=anuncio.idcondicion
47+
JOIN transmission ON transmission.idtransmission=anuncio.idtransmission
48+
JOIN pueblo ON pueblo.idpueblo=anuncio.idpueblo
49+
JOIN imagenes ON imagenes.idanuncio=anuncio.idanuncio
50+
AND imagenes.numero_imagen=1
51+
WHERE anuncio.idmarca={$idmarca}
52+
AND anuncio.idmodelo={$idmodelo}";
53+
54+
echo "<br/>";
55+
echo "<br/>";
56+
echo "=====================================================================";
57+
echo "<br/>";
58+
echo "Literal de la consulta";
59+
echo "<br/>";
60+
echo "<br/>";
61+
echo $consulta;
62+
echo "<br/>";
63+
echo "<br/>";
64+
echo "<br/>";
65+
echo "=====================================================================";
66+
echo "<br/>";
67+
echo "Resultado de la consulta ";
68+
echo "<br/>";
69+
echo "<br/>";
70+
busca_anuncio($consulta);
71+
function busca_anuncio($consulta)
72+
{
73+
// header('Content-Type: application/json; charset=utf-8');
74+
75+
include $GLOBALS['conexion'];
76+
try {
77+
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
78+
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
79+
$stmt = $conn->query($consulta);
80+
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
81+
echo json_encode($result);
82+
83+
} catch (PDOException $e) {
84+
echo "Error: " . $e->getMessage();
85+
}
86+
$conn = null;
87+
88+
}

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy