PHP - Donde se deben cerrar la conección

 
Vista:

Donde se deben cerrar la conección

Publicado por Francisco Daniel (45 intervenciones) el 12/06/2020 18:52:36
Hola a todos. Muchas gracias por la ayuda que me estan dando con php. Soy nuevo con este lenguaje, es por eso de tanta preguntas. Mi pregunta ahora es la siguiente:

Ten go mi Index.php distintas secciones, en las cuales consulto mi base de datos Mysql para mostrar alguna información. El problema está en que no me muestra nada luego de cerrar mi base de datos. por ejemplo

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<?php
 
try {
        require_once('includes/funciones/bd_conexion.php');
        $sql= "Select * " ;
        $sql .= " FROM noticia " ;
        $sql .= " ORDER BY fecha DESC limit 3 ";
 
 
 
        $resultado = $conn->query($sql);
 
 
    } catch(\Exception $e) {
        $error = $e->getmessage();
    }
?>
 
<?php while($pro = $resultado->fetch_assoc()) { ?>
 
    <div class="imagen_noticia">
      <img src="img/fotos/<?php echo $resultado['imagen']?>" alt="Imágen Testimonial">
    </div>
 
    <div class="noticia">
      <h3><?php echo $resultado['titulo']?></h3>
      <p><?php echo $resultado['texto']?></p>
 
      <div class="referencia_noticia">
        <p>Fecha Publicación: <span><?php echo $resultado['fecha']?></span>
      </div>
    </div>
 
    <a href="#" class="buttom float-right">Leer Mas...</a>
 
<?php } ?>

y si pongo:

1
2
3
<?php
    $conn->close();
?>

No me muestra nada mas. Llega hasta esa linea y no muestra nada. Ni el html que sigue.

Que estoy haciendo mal?

Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Julio
Val: 2.994
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Donde se deben cerrar la conección

Publicado por Julio (830 intervenciones) el 12/06/2020 18:57:29
Hola.

Probablemente estás pasando por el catch y capturando el error que te da, pero como no lo imprimes no te muestra nada. Dentro del catch prueba a imprimir el error que guardas en la variable $error.

-----------------------------
Aprende la programación desde una perspectiva básica y simplista en Programación Básica
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Donde se deben cerrar la conección

Publicado por Francisco Daniel (45 intervenciones) el 12/06/2020 19:55:30
Lo imprimo con:

1
2
3
echo "<pre>";
var_dump($error);
echo "</pre>";

pero no me muestra nada. Esta bien asi?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de joel
Val: 2.488
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Donde se deben cerrar la conección

Publicado por joel (753 intervenciones) el 12/06/2020 20:55:46
La verdad, es que PHP cuando finaliza la carga de la pagina, el solo cierra todas las conexiones abiertas.

Yo nunca he cerrado una conexión a base de datos desde código.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Kathyu
Val: 2.205
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Donde se deben cerrar la conección

Publicado por Kathyu (677 intervenciones) el 12/06/2020 23:54:05
Pero casi todos recomiendan cerrar siempre la CONEXIÓN
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
-3
Comentar
Imágen de perfil de joel
Val: 2.488
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Donde se deben cerrar la conección

Publicado por joel (753 intervenciones) el 13/06/2020 11:13:22
Hola kathyu, la verdad es que yo nunca lo he leído... a no ser que ejecutes PHP como un script.

fíjate que las conexiones PDO, no tienen un método "close" para cerrarlas... tienes que poner a null el constructor para cerrarlas!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Kathyu
Val: 2.205
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Donde se deben cerrar la conección

Publicado por Kathyu (677 intervenciones) el 13/06/2020 13:11:15
Cuando dice ejecutándolo como un script a que se refiere exactamente?

https://www.php.net/manual/es/mysqli.close.php Ellos, que se suponen son los que dictan las buenas practicas y cánones de PHP lo recomiendan.


PD: Al que no le gustó mi "camuflada critica constructiva" sobre lo mal escrito que está la palabra "coneccion", sepa una cosa; que sea del país que sea, la palabra es incorrecta, debe ser por ley con X porque viene del vocablo latín "connexĭo".

Evil_0381
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de joel
Val: 2.488
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Donde se deben cerrar la conección

Publicado por joel (753 intervenciones) el 13/06/2020 20:58:00
Si, me refiero a script, al código PHP que se ejecuta sin un servidor web, desde la consola o terminal, el cual no tiene un timeout, y se puede estar ejecutando por tiempo indefinido, ahí si puede ser necesario cerrar cualquier conexión, pero en una pagina web, no tienen ningun sentido, al igual que tampoco pasa nada si no cierras tu código PHP con "?>" (Siempre y cuando sea un código solo de PHP)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de javier
Val: 1.057
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Donde se deben cerrar la conección

Publicado por javier (277 intervenciones) el 17/06/2020 07:17:56
hola

para cerrar, que siempre es recomendable, una conexion con PDO se hace igualando a null el objeto

1
$bd = null

saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar