Diferencia entre revisiones de «Supuestos PHP»

De MediaWiki
Ir a la navegación Ir a la búsqueda
 
(No se muestra una edición intermedia del mismo usuario)
Línea 1: Línea 1:
 +
* [[Programar alta e listaxe contra base de datos]]. EXERCICIO 1.1 de A1 Xuño 2022
 +
* [[Programar login para comprobar credenciais contra baase de datos]]. EXERCICIO 1.2 de A1 Xuño 2022
 +
* [[Programar empregando array asociativo]]. EXERCICIO 1.3 de A1 Xuño 2022
 +
 
= Expresións regulares =
 
= Expresións regulares =
 
{| class="wikitable"
 
{| class="wikitable"
Línea 20: Línea 24:
 
|-
 
|-
 
| Nº real con ata 4 decimais
 
| Nº real con ata 4 decimais
−
| ^\d*[\.,]?\d{0,4}$ dejando todo opcional encajaría “” !
+
| ^\d*[\.,]?\d{0,4}$ deixando todo opcional encaixaría “” !
 
|-
 
|-
 
| Nº do día da semana
 
| Nº do día da semana
Línea 33: Línea 37:
 
| Minutos (ou segundos)
 
| Minutos (ou segundos)
 
| ^[1-5]?\d$
 
| ^[1-5]?\d$
 +
|-
 
| Ficheiro con extensión de imaxe
 
| Ficheiro con extensión de imaxe
 
| .\.(gif|png|jpe?g)$
 
| .\.(gif|png|jpe?g)$

Revisión actual del 19:05 30 jul 2022

Expresións regulares

Expresión Patrón
Código Postal ^\d{5}$
NIF ^\d{8}[TRWAGMYFPDXBNJZSQVHLCKE]$
Matrículas (novas) ^\d{4}[BCDFGHJKLMNPRSTVWXYZ]{3}$
N.º entero positivo ^\d+$
N.º entero con signo ^[+\-]?\d+$
Nº real con ata 4 decimais ^\d*[\.,]?\d{0,4}$ deixando todo opcional encaixaría “” !
Nº do día da semana ^[1-7]$
Nº do mes (3[01])$
Hora (2[0-3])$
Minutos (ou segundos) ^[1-5]?\d$
Ficheiro con extensión de imaxe png|jpe?g)$
IP 2[0-4]\d|25[0-5])(\.[01]?\d?\d|2[0-4]\d|25[0-5]){3}$
Correo electrónico ^.+@.+\.([\da-zA-Z]){2,}$

Servizos web

Con SOAP

Con REST

Cesta da compra

Aplicación web con con autenticación de usuarios e cesta da compra onde se poden mercar produtos agrupados por categorías. A información da cesta almacénasa en sesión (pares codProducto / cantidad) Pódese seleccionar a opción Mercar ó finalizar a compra: insertaranse os rexistros adecuados nas taboas pedidos e lineaspedido.

NOTA: produtos, cesta e mercar están repartidos nos cartafois M (modelos), V(vistas) e no controlador

 1  // index.php login
 2 
 3  // agregar.php script que incrementa/decrementa as cantidades dun produto
 4 
 5  // eliminar.php elimina un produto da cesta (da sesión)
 6 
 7  // mercar.php inserta o pedido na BD
 8 
 9  // productos.php selección categoría/productos con posibilidade de enviar unidades á cesta
10 
11  // cesta.php visualización da cesta con posibilidade de cambiar unidades e eliminar
12 
13  // autentificación.php se non é un usuario autenticado destrue a sesión e redirixe á pantalla de login
14 
15  // conexión.php conecta coa BD
16 
17  // cerrarSesion.php destrue a sesión e volve á pantalla de login
18 
19 = Implementación de patróns =
20 == Singleton ==
21 :::<syntaxhighlight lang="php" line enclose="div" highlight="" >
22  <?php
23  class Singleton
24  {
25     private static $instancia = null;
26     // Constructor privado: non accesible desde fóra e tamén anulamos o constructor por defecto
27     private function __construct() {}
28 
29     private function __clone() {} // evitamos clonados
30 
31     public static function getInstance() {
32        if (is_null(self::$instancia))
33           self::$instancia = new Singleton();
34        return self::$instancia;
35     }
36  }
37  $singleton=Singleton::getInstance();
38  //$singleton=new Singleton();  daría erro xa que o constructor é privado