Autor Tema: Curso PHP.Ejemplo consultas básicas a bases de datos MySQL queries CU00842B  (Leído 2092 veces)

bermartinv

  • Avanzado
  • ****
  • APR2.COM
  • Mensajes: 298
    • Ver Perfil
Adjunto mis soluciones al tema CU00842B del manual de programador web con PHP y editor Notepad++.

Citar
Utilizando la tabla agenda que hemos empleado en los ejemplos y funciones para manejo de cadenas PHP, realiza una consulta a la base de datos para extraer todos los nombres y determina cuántos nombres en la base de datos empiezan por M.

Ejemplo de resultados a obtener: En la base de datos los nombres que empiezan por M son: 2

El enlace:
http://cursophp.byethost14.com/aprenderaprogramar/baseDatos/nombresMSQL.php

Y el código:
Código: [Seleccionar]
<html><head><meta charset="utf-8"> </head>

<body>

<?php

$contador 
0;

$link mysqli_connect("sql300.byethost14.com""b14_19400633""xxxxxxxx");

mysqli_select_db($link"b14_19400633_baseDatos");

$tildes $link->query("SET NAMES 'utf8'"); //Para que se muestren las tildes correctamente

echo 'En la base de datos los nombres que empiezan por M son: ';

$result mysqli_query($link"SELECT nombre FROM agenda WHERE nombre like 'M%'");

    while(
$filas=mysqli_fetch_array($result)){
        
        echo 
'<br/>'.$filas['nombre'].'';
        
        
$contador++;
        
    }


    
mysqli_free_result($result);

    
mysqli_close($link);

echo 
'<br/>.Son  '.$contador.' en total.';

?>

</body></html>



Y par el segundo ejercicio

Citar
Crea un archivo php donde se realice una consulta a la base de datos para extraer todos los datos de la tabla y a continuación calcula la suma de habitantes de todos los países y cuántas de estas ciudades tienen metro. Muestra el resultado por pantalla.

Ejemplo de resultados a obtener:

La suma de habitantes de México D.F., Barcelona, Buenos Aires, Medellín, Lima, Caracas, Santiago, Antigua, Quito y La Habana es: 5663886 habitantes

De estas ciudades tienen metro: 5 ciudades.

El enlace:
http://cursophp.byethost14.com/aprenderaprogramar/baseDatos/habitantesMetro.php

Y el código:

Código: [Seleccionar]
<html><head><meta charset="utf-8"> </head>

<body>

<?php
$link 
mysqli_connect("sql300.byethost14.com""b14_19400633""xxxxxxxxx");

mysqli_select_db($link"b14_19400633_baseDatos");

$tildes $link->query("SET NAMES 'utf8'"); //Para que se muestren las tildes correctamente

$result mysqli_query($link"SELECT * FROM ciudades");

$contador_ciudades 0;

echo 
'La suma de todos los habitantes en ';

while(
$filas=mysqli_fetch_array($result)){
    
    
    
$habitantes += $filas['habitantes']; 
    
        
    
    
$metro += $filas['tieneMetro'];
    
    
$ciudad[$contador_ciudades] = $filas['ciudad'];
    
    
$contador_ciudades++;
        
    }
   
    for (
$i=0;$i<$contador_ciudades;$i++){
        echo 
$ciudad[$i].',';
    }
   
   
   echo 
' es '.$habitantes;
   echo 
'.Y hay '.$metro.' que tienen metro';
    
mysqli_free_result($result);

    
mysqli_close($link);


?>


</body>
</html>

Saludos
« Última modificación: 11 de Junio 2017, 17:39 por Ogramar »

pedro,,

  • Moderador Global
  • Experto
  • *******
  • APR2.COM
  • Mensajes: 1292
    • Ver Perfil
Re:Curso PHP.Ejemplo consulta PHP MySQL.CU00842B
« Respuesta #1 en: 02 de Abril 2017, 23:47 »
Hola bermartinv

El ejercicio 1 es correcto.

En el segundo ejercicio tuve que inicializar a cero estas dos variables antes de usarlas dentro del while, sino no me funcionaba:

Código: [Seleccionar]
$habitantes = 0;
$metro = 0;

Con esas dos líneas añadidas, el código me funcionó perfectamente.

Saludos.

bermartinv

  • Avanzado
  • ****
  • APR2.COM
  • Mensajes: 298
    • Ver Perfil
Re:Curso PHP.Ejemplo consulta PHP MySQL.CU00842B
« Respuesta #2 en: 03 de Abril 2017, 09:37 »
Gracias pedro,,
A mi me funciona bien sin declarar primero a 0 las variables. De todas maneras la buena formas de escribir codigo con PHP es inicializarlas. Este error es la costumbre de rabajar con otros lenguajes como javaScript que no hace falta inicializarlos y solo con su declaración es suficiente.

Lo dicho, muchas gracias pedro,,

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".