Diferencia entre revisiones de «Acceso a bases de datos desde linguaxes de script de servidor»

De MediaWiki
Ir a la navegación Ir a la búsqueda
Línea 3: Línea 3:
 
* Aprender  
 
* Aprender  
  
= Programando con PHP =
+
= Programando con PHP o acceso a bases de datos =
 +
 
 +
As aplicacións web fan habitualmente un uso intenso de bases de datos para diversos obxectivos. Nelas poden gardar, por exemplo, a lista de usuarios coñecidos, as opcións dos distintos menús, cachés de contidos ou alias de URLs.
 +
 
 +
As bases de datos son un medio eficaz, flexible, seguro e de alto rendemento de almacenar información e facela accesible a todas as aplicacións que precisen o seu uso. Deste xeito, a aplicación web pode ser só un dos múltiples clientes que estean a utilizar a información da base de datos.
 +
 
 +
Cando se programa a aplicación web con PHP, MySQL é o sistema xestor de bases de datos que se utiliza máis habitualmente.
 +
 
 +
O seu uso é realmente simple, porque o programador dispoñerá dun conxunto de funcións que lle permitirán establecer unha comunicación entre a aplicación e o servidor de bases de datos e pedirlle a execución de todo tipo de operacións.
 +
 
 
Podes atopar máis información nestes artigos:
 
Podes atopar máis información nestes artigos:
 
*  [https://wiki.cifprodolfoucha.es/index.php?title=Programaci%C3%B3n_con_PHP titorial] específico de PHP.
 
*  [https://wiki.cifprodolfoucha.es/index.php?title=Programaci%C3%B3n_con_PHP titorial] específico de PHP.
 +
 +
Está particularmente ben e con código con exemplos o [https://www.w3schools.com/php/php_mysql_intro.asp titorial de PHP e Mysql de w3schools].
  
 
Videotitorial:
 
Videotitorial:
 
* [https://openwebinars.net/academia/portada/php-mysql/]
 
* [https://openwebinars.net/academia/portada/php-mysql/]
 +
 +
= Conexión =
 +
O primeiro paso para utilizar unha base de datos será tratar de establecer unha comunicación co servidor no que se atope. No caso de MySQL utilizaremos a función mysqli_connect().
 +
 +
<syntaxhighlight lang="php">
 +
$conexion = mysqli_connect($host, $login, $contrasinal, $base);
 +
 +
if(!$conexion) {
 +
  exit();
 +
}
 +
</syntaxhighlight>
 +
 +
Conectarse a unha base de datos implica coñecer o seu nome, en que máquina está o servidor de bases de datos e ter unha parella de login e contrasinal que permita o acceso.
 +
 +
A continuación haberá que comprobar que a conexión foi posible e en caso de que non o fose tomaranse as medidas oportunas. Se a aplicación web confía no uso dunha base de datos para o seu correcto funcionamento a acción probablemente deba rematar o script, como se fai neste exemplo coa chamada á función exit().
 +
 +
Se a conexión tivo éxito, a maior parte do traballo que faremos a continuación consistirá en enviar consultas SQL ao servido de base de datos para pedirlle que actualice os datos ou para recuperar información. Utilizarase a función mysqli_query().
 +
 +
<syntaxhighlight lang="php">
 +
$conexion = mysqli_connect($host, $login, $contrasinal, $base);
 +
$resultado = mysqli_query($conexion, $consulta);
 +
if($resultado) {
 +
  //A consulta executouse correctamente
 +
} else {
 +
  //Houbo algún problema coa execución da consulta
 +
}
 +
</syntaxhighlight>
 +
 +
 +
= Consultas de actualización =
 +
 +
As consultas de actualización da base de datos terán a estrutura xenérica vista no apartado anterior. Unha vez enviada a consulta ao servidor de bases de datos só queda averiguar se a súa execución foi correcta e, nalgunhas ocasións, utilizar o dato de cantas filas se viron afectadas polos cambios, usando a función mysqli_affected_rows();
 +
 +
<syntaxhighlight lang="php">
 +
$conexion = mysqli_connect($host, $login, $contrasinal, $base);
 +
$resultado = mysqli_query($conexion, 'DELETE FROM clientes');
 +
if($resultado) {
 +
  echo 'Borráronse ' . mysqli_affected_rows($conexion) . ' clientes';
 +
} else {
 +
  echo 'Non foi posible o borrado';
 +
}
 +
</syntaxhighlight>
 +
 +
= Consultas de lectura =
 +
Cando se trata dunha consulta de lectura, haberá que engadir ao proceso anterior o necesario para o tratamento dos datos recibidos como contestación.
 +
 +
<syntaxhighlight lang="php">
 +
$conexion = mysqli_connect($host, $login, $contrasinal, $base);
 +
$resultado = mysqli_query($conexion, 'SELECT * FROM clientes');
 +
if($resultado) {
 +
  while($fila = mysqli_fetch_assoc($resultado)) {
 +
echo $fila['id'] . '-' . $fila['nome'];
 +
  }
 +
} else {
 +
  echo 'Non foi posible a lectura';
 +
}
 +
</syntaxhighlight>
 +
 +
Habitualmente incluiremos un bucle que se encargue de percorrer cada unha das filas que forman a resposta da base de datos. Neste exemplo utilízase a función mysqli_fetch_assoc() que colle unha fila do resultado e convírtea nun array asociativo para que o seu tratamento dentro do programa sexa sinxelo.
  
 
= Laravel =
 
= Laravel =

Revisión del 13:44 18 ene 2023

Obxectivos

  • Aprender

Programando con PHP o acceso a bases de datos

As aplicacións web fan habitualmente un uso intenso de bases de datos para diversos obxectivos. Nelas poden gardar, por exemplo, a lista de usuarios coñecidos, as opcións dos distintos menús, cachés de contidos ou alias de URLs.

As bases de datos son un medio eficaz, flexible, seguro e de alto rendemento de almacenar información e facela accesible a todas as aplicacións que precisen o seu uso. Deste xeito, a aplicación web pode ser só un dos múltiples clientes que estean a utilizar a información da base de datos.

Cando se programa a aplicación web con PHP, MySQL é o sistema xestor de bases de datos que se utiliza máis habitualmente.

O seu uso é realmente simple, porque o programador dispoñerá dun conxunto de funcións que lle permitirán establecer unha comunicación entre a aplicación e o servidor de bases de datos e pedirlle a execución de todo tipo de operacións.

Podes atopar máis información nestes artigos:

Está particularmente ben e con código con exemplos o titorial de PHP e Mysql de w3schools.

Videotitorial:

Conexión

O primeiro paso para utilizar unha base de datos será tratar de establecer unha comunicación co servidor no que se atope. No caso de MySQL utilizaremos a función mysqli_connect().

$conexion = mysqli_connect($host, $login, $contrasinal, $base);

if(!$conexion) {
   exit();
}

Conectarse a unha base de datos implica coñecer o seu nome, en que máquina está o servidor de bases de datos e ter unha parella de login e contrasinal que permita o acceso.

A continuación haberá que comprobar que a conexión foi posible e en caso de que non o fose tomaranse as medidas oportunas. Se a aplicación web confía no uso dunha base de datos para o seu correcto funcionamento a acción probablemente deba rematar o script, como se fai neste exemplo coa chamada á función exit().

Se a conexión tivo éxito, a maior parte do traballo que faremos a continuación consistirá en enviar consultas SQL ao servido de base de datos para pedirlle que actualice os datos ou para recuperar información. Utilizarase a función mysqli_query().

$conexion = mysqli_connect($host, $login, $contrasinal, $base);
$resultado = mysqli_query($conexion, $consulta);
if($resultado) {
   //A consulta executouse correctamente
} else {
   //Houbo algún problema coa execución da consulta
}


Consultas de actualización

As consultas de actualización da base de datos terán a estrutura xenérica vista no apartado anterior. Unha vez enviada a consulta ao servidor de bases de datos só queda averiguar se a súa execución foi correcta e, nalgunhas ocasións, utilizar o dato de cantas filas se viron afectadas polos cambios, usando a función mysqli_affected_rows();

$conexion = mysqli_connect($host, $login, $contrasinal, $base);
$resultado = mysqli_query($conexion, 'DELETE FROM clientes');
if($resultado) {
   echo 'Borráronse ' . mysqli_affected_rows($conexion) . ' clientes';
} else {
   echo 'Non foi posible o borrado';
}

Consultas de lectura

Cando se trata dunha consulta de lectura, haberá que engadir ao proceso anterior o necesario para o tratamento dos datos recibidos como contestación.

$conexion = mysqli_connect($host, $login, $contrasinal, $base);
$resultado = mysqli_query($conexion, 'SELECT * FROM clientes');
if($resultado) {
   while($fila = mysqli_fetch_assoc($resultado)) {
	echo $fila['id'] . '-' . $fila['nome'];
   }
} else {
   echo 'Non foi posible a lectura';
}

Habitualmente incluiremos un bucle que se encargue de percorrer cada unha das filas que forman a resposta da base de datos. Neste exemplo utilízase a función mysqli_fetch_assoc() que colle unha fila do resultado e convírtea nun array asociativo para que o seu tratamento dentro do programa sexa sinxelo.

Laravel

Resumo

Referencias