Taula de continguts

Fites DAW MP07 UF1

Programació web entorn servidor

Els exercicis/fites tenen els següents objectius:

  1. Generar pàgines HTML utilitzant estructures de dades i control de flux bàsic de PHP.
  2. Enviar i processar dades amb els mètodes POST i GET.
  3. Accedir a fitxers per a lectura i per a escriptura.
  4. Utilitzar sessions per emmagatzemar informació.

L'enunciat de les fites intenten ser independents del llenguatge de programació.

Sobre PHP podeu llegir:

, , , , , , , , , , , , ,

Fita 1: Generació HTML

Exercici 1.1

Fes els següents exercicis en PHP.

Cal que a tots els exercicis hi hagi variables per als límits (N,M).

Exercici 5

Exercici 1.2

Batalla Naval

Anem a fer una aproximació a un joc de batalla naval. Els típics elements de joc son:

Realitza els següents exercicis:

  1. Utilitza l'exercici 4 dels taulells de jocs amb el nom de les files (lletres) i columnes (números).
  2. Crea un array amb un submarí i mostra-ho al taulell.
    • Raona quines opcions tens per definir aquest element i quina té més avantatges.
    • Comprova que funciona en horitzontal i vertical.
    • L'algorisme ha de funcionar amb qualsevol tipus de longitud de vaixell.
  3. Crea un array amb un vaixell de cada tipus (fixe) i mostra-ho al taulell.
  4. Crea un array amb tota una partida amb valors aleatoris: 4 fragates, 3 submarins, 2 destructors i 1 portaavions.
    • Els vaixells han de tenir col·locació aleatòria, incloent que puguin estar en vertical o en horitzontal.
    • Comprova que cada cop que recarregueu el tauler et surt una partida diferent.
    • No importa si els vaixells es solapen o si surten dels límits.
  5. Ajusta el generador de partida anterior aplicant aquestes millores:
    • Evitar que cap vaixell surti dels límits del taulell.
    • Evitar que es solapin els vaixells.
    • Evitar que els vaixells es «toquin» (cel·les adjacents).


Exercici 1.3

Sudoku en PHP

  1. Crea un taulell de Sudoku (9×9) amb les marques per indicar els quadrants (cada 3 files/columnes).
  2. Afegeix nombres aleatoris en 20 cel·les del taulell.
  3. Afegeix un camp de formulari a cada cel·la per fer-lo «jugable».

Si poseu nombres aleatoris la partida pot no ser resoluble.

Si vols animar-te a fer un joc funcional de Suoku pots seguir l'article Sudoku PHP.


Fita 2: Ús formularis amb GET i POST

Aquí teniu un bon exemple essencial per a la gestió de les dades de formularis amb PHP.

Us pot interessar l'article sobre PHP checkboxes.

Exercici 2.1

Crea un formulari de login:

Exercici 2.2

Generador de links. L'exercici consta de 3 pàgines.

Exercici 2.3

Crea un selector de skins, amb un dropdown menu o SELECT que canvii els colors de la pàgina web.

ex23pg1.php :

La resolució la tens en aquesta pàgina PHP forms: selector de skins.

Exercici 2.4

Formulari per comprovar la correcció d'una contrasenya repetida en 2 camps.

ex24pg1.php : conté

ex24pg2.php : realitzarà 2 tests (i cap més) per assegurar la contrasenya:

  1. Comprovar que els 2 camps continguin la mateixa contrasenya. Si no es compleix, donarà el missatge “ERROR: les contrasenyes han de coincidir”.
  2. Ha de comprovar que la contrasenya tingui al menys 1 número. Si no es compleix, donarà el missatge “ERROR: la contrasenya ha de tenir al menys un número”.

La pàgina no realitzarà cap altra comprovació.


Exercici 2.5

Pots consultar els apunts de PHP checkboxes per resoldre aquest exercici.

Exercici amb checkboxes




Fita 3: Ús de FITXERS

Exercici 3.1

Consta d’1 pàgina PHP i 2 arxius TXT.

Exercici 3.2

Consta d’1 sola pàgina PHP i 1 arxiu TXT.

Exercici 3.3

ex33.txt : crea un arxiu de text i dona-li els permisos adequats per tal que Apache hi pugui escriure. Posa algun text d'exemple tipus lorem ipsum.

ex33pagina1.php : la pàgina ha de mostrar

Exercici 3.4

Ens demanen un conversor per a una wiki similar a Markdown. A partir d’un arxiu de text, caldrà mostrar una pàgina web HTML amb seccions. Les seccions es marcaran amb el símbol ## a l’inici de la línia, que s’ha de mostrar amb el tag <H1>.

Arxiu de text: Codi generat Visualitzem:
## La 1a Guerra Mundial <h1>La 1a Guerra Mundial</h1>

La 1a Guerra Mundial

Caldrà crear 2 arxius:

ex34.txt:

ex34pagina1.php :

Exercici 3.5

NOTA: aquest exercici combina formularis i arxius.

Us anirà bé repassar l'article PHP checkboxes.

L'exercici consta de 3 arxius:

  1. productes.txt : contindrà una llista de productes, un per línia.
  2. botiga.php : llegirà el contingut de productes.txt i crearà un formulari amb:
    • Un checkbox per cada producte amb el nom del producte.
    • Un input text per al nom de l'usuari.
    • Un submit button.
  3. comandes.txt : quan s'envii el formulari es guardarà la comanda en aquest arxiu de text, de la forma:
    nom_d'usuari,prod1,prod2,etc.




Fita 4: Ús de PHP SESSIONS

Exercici 4.1

Farem un joc de «endevina el número» en 3 pàgines.

Exercici 4.2

Consta de 3 pàgines.

Exercici 4.3

Farem una “màquina d’escriure” o un “teclat en pantalla” que anirà enregistrant i mostrant els caràcters que anem clicant.

ex43pagina1.php : mostrarà

Exercici 4.4

Prendre notes de text. Consta d’una sola pàgina PHP.

ex44pagina1.php :