Ací es mostren les diferències entre la revisió seleccionada i la versió actual de la pàgina.
Ambdós costats versió prèvia Revisió prèvia Següent revisió | Revisió prèvia | ||
php [2022/09/15 14:45] enrique_mieza_sanchez [Diccionaris o Arrays Associatius] |
php [2024/09/26 15:28] (actual) enric_mieza_sanchez [Formularis, GET, POST i PHP] |
||
---|---|---|---|
Línia 21: | Línia 21: | ||
Treballarem PHP sobre GNU/Linux Debian/ | Treballarem PHP sobre GNU/Linux Debian/ | ||
- | $ sudo apt install php | + | |
En aquest article no necessitem parar massa atenció a les versions ja que treballarem amb els bàsics del llenguatge, però si estem instal·lant programari tipus [[CMS]] i similars caldrà que revisem bé la versió instal·lada i les llibreries afegides. | En aquest article no necessitem parar massa atenció a les versions ja que treballarem amb els bàsics del llenguatge, però si estem instal·lant programari tipus [[CMS]] i similars caldrà que revisem bé la versió instal·lada i les llibreries afegides. | ||
Línia 213: | Línia 213: | ||
\\ | \\ | ||
- | ===== Segueix el curs bàsic de PHP ===== | ||
- | Segueix el [[https:// | ||
- | |||
- | En particular, para atenció a la [[https:// | ||
- | |||
- | Fes la pràctica de la fórmula de resolució de l' | ||
- | |||
- | Tens referències interessants a les pàgines de W3Schools: | ||
- | * [[https:// | ||
- | * [[https:// | ||
- | * Menció a part necessiten els diferents tipus d' | ||
- | |||
- | Un particular i útil [[https:// | ||
- | |||
- | \\ | ||
===== Estructures de dades ====== | ===== Estructures de dades ====== | ||
Línia 300: | Línia 285: | ||
Al tanto, que com podeu veure en realitat no es reordena l' | Al tanto, que com podeu veure en realitat no es reordena l' | ||
+ | \\ | ||
==== Diccionaris o Arrays Associatius ==== | ==== Diccionaris o Arrays Associatius ==== | ||
Línia 337: | Línia 323: | ||
</ | </ | ||
- | \\ | ||
- | Per iterar un array associatiu sol ser més fàcil utilitzar el // | + | Per iterar un array associatiu sol ser més fàcil utilitzar el // |
+ | |||
+ | <sxh php> | ||
+ | foreach( $sons as $animal => $so ) | ||
+ | { | ||
+ | echo "El $animal fa $so.< | ||
+ | } | ||
+ | </ | ||
\\ | \\ | ||
Línia 355: | Línia 347: | ||
- Utilitza l' | - Utilitza l' | ||
- Crea un array amb un submarí i mostra-ho al taulell. | - 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. | + | * Col·loca' |
* Comprova que funciona en horitzontal i vertical. | * Comprova que funciona en horitzontal i vertical. | ||
+ | * Comprova que no surt dels límits de la quadrícula. | ||
* L' | * L' | ||
- | - Crea un array amb un vaixell de cada tipus (fixe) i mostra-ho al taulell. | + | - Pensa en 2 maneres diferents per definir una partida sencera amb diversos vaixells i justifica pros i contres. En concret es recomana analitzar //array// de vaixells vs matriu de caselles. |
- | - Crea un array amb tota una partida amb valors aleatoris: 4 fragates, 3 submarins, 2 destructors i 1 portaavions. | + | - Crea una matriu per a la partida |
- | * Comprova que cada cop que recarregueu el tauler | + | - Omple ara la matriu |
- | - Ajusta el generador de partida anterior | + | * 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 | ||
+ | * No importa si els vaixells es solapen o si surten dels límits. | ||
+ | - Ajusta el generador de partida anterior | ||
+ | * Evitar que cap vaixell surti dels límits del taulell. | ||
+ | * Evitar | ||
+ | * Evitar que els vaixells es " | ||
+ | </ | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ===== Formularis, GET, POST i PHP ===== | ||
+ | |||
+ | Referències bàsiques a W3Schools: | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * Per comprovar si certes variables $_GET o $_POST ens arriben, es sol emprar la [[https:// | ||
+ | // codi a executar aquí... | ||
+ | }</ | ||
+ | |||
+ | |||
+ | Altres: | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | |||
+ | |||
+ | <WRAP tip> | ||
+ | Vés a les [[https:// | ||
</ | </ | ||
Línia 367: | Línia 390: | ||
===== Arxius ===== | ===== Arxius ===== | ||
- | Si volem guardar dades en arxius en PHP, disposem de diverses funcions per a realitzar aquestes operacions: | + | Si volem guardar dades en arxius en PHP, disposem de diverses funcions per a realitzar aquestes operacions. |
+ | |||
+ | Funcions "a lo bèstia" | ||
* [[https:// | * [[https:// | ||
* [[https:// | * [[https:// | ||
* [[https:// | * [[https:// | ||
+ | |||
+ | Funcions més " | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | |||
+ | |||
Si volem guardar les dades d'un array, no tindrem prou amb aquestes funcions, ja que al guardar les dades d'un array les concatena totes juntes. | Si volem guardar les dades d'un array, no tindrem prou amb aquestes funcions, ja que al guardar les dades d'un array les concatena totes juntes. | ||
Línia 400: | Línia 432: | ||
Examina l' | Examina l' | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ===== Més coses ===== | ||
+ | \\ | ||
+ | |||
+ | ==== Carregar imatges ==== | ||
+ | Aquí tens un [[https:// | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ==== Enviar emails ==== | ||
+ | |||
+ | Disposar d'un servidor d' | ||
+ | |||
+ | Disposem, al menys, de dos maneres de fer-ho: | ||
+ | - Tenint un **servidor d' | ||
+ | - Utilitzant les **llibreries '' | ||
+ | |||
+ | \\ | ||
+ | |||
+ | === Opció 1: Servidor local === | ||
+ | És important que tinguem obert el port 25 de sortida. Tots els servidors de Cloud ho estan limitant per evitar spammers, i cal demanar un permís especial perquè funcioni. | ||
+ | |||
+ | Si disposem d' | ||
+ | |||
+ | Instal·lem postfix i mailutils: | ||
+ | $ sudo apt install postfix mailutils | ||
+ | |||
+ | Chequejem la instal·lació enviant un email: | ||
+ | $ mail [email protected] | ||
+ | Cc: | ||
+ | Subject: prova de correu | ||
+ | aqui poso el text de l' | ||
+ | pot tenir diverses línies | ||
+ | acabem l' | ||
+ | |||
+ | ...i s' | ||
+ | |||
+ | \\ | ||
+ | |||
+ | === Opció 2: libs PHPMailer === | ||
+ | Amb aquesta llibreria podem enviar mitjançant un servidor extern (caldran credencials). | ||
+ | |||
+ | * [[https:// | ||
+ | |||
+ | <WRAP todo> | ||
+ | Utilitza el tutorial indicat més amunt per enviar un email. Fes un formulari que permeti ajustar destinatari, | ||
+ | |||
+ | Per carregar les llibreries al vostre codi cal canviar els '' | ||
+ | require " | ||
+ | |||
+ | <WRAP important> | ||
+ | **Utilitza l' | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | \\ | ||