bytes.cat

La wiki d'FP d'informàtica

Eines de l'usuari

Eines del lloc


php

Diferències

Ací es mostren les diferències entre la revisió seleccionada i la versió actual de la pàgina.

Enllaç a la visualització de la comparació

Ambdós costats versió prèvia Revisió prèvia
Següent revisió
Revisió prèvia
php [2023/10/05 18:18]
enric_mieza_sanchez [Exercicis] array de vaixells vs matriu
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/Ubuntu. Instal·lar PHP és tan fàcil i obvi com: Treballarem PHP sobre GNU/Linux Debian/Ubuntu. Instal·lar PHP és tan fàcil i obvi com:
- $ sudo apt install php+  $ 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 347: Línia 347:
   - Utilitza l'exercici 4 dels taulells de jocs amb el nom de les files (lletres) i columnes (números).   - Utilitza l'exercici 4 dels taulells de jocs amb el nom de les files (lletres) i columnes (números).
   - Crea un array amb un submarí i mostra-ho al taulell.   - Crea un array amb un submarí i mostra-ho al taulell.
 +    * Col·loca'l en una posició aleatòria cada cop que es carrega.
     * 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'algorisme ha de funcionar amb qualsevol tipus de longitud de vaixell.     * L'algorisme ha de funcionar amb qualsevol tipus de longitud de vaixell.
   - 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.   - 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.
Línia 370: Línia 372:
   * [[https://www.w3schools.com/html/html_form_input_types.asp|Tipus de input field]].   * [[https://www.w3schools.com/html/html_form_input_types.asp|Tipus de input field]].
   * [[https://www.w3schools.com/php/php_forms.asp|Gestió de les dades dels formularis en PHP]]   * [[https://www.w3schools.com/php/php_forms.asp|Gestió de les dades dels formularis en PHP]]
 +  * Per comprovar si certes variables $_GET o $_POST ens arriben, es sol emprar la [[https://www.php.net/manual/en/function.isset.php|funció isset() de PHP]]. Per exemple:<code php>if( isset($_POST["nom"]) ) {
 +    // codi a executar aquí...
 +}</code>
  
  
Línia 439: Línia 444:
  
 ==== Enviar emails ==== ==== Enviar emails ====
 +
 +Disposar d'un servidor d'email s'ha convertit en una tasca complicada degut a les grans quantitats de Spam que circulen. Disposar d'un servidor d'email que passi els controls antispam és força complicat. Podeu conèixer mes detalls a l'article [[email Linux Docker]]. 
 +
 +Disposem, al menys, de dos maneres de fer-ho:
 +  - Tenint un **servidor d'email local com postfix** i enviant mitjançant la [[https://www.php.net/manual/es/function.mail.php|comanda PHP mail()]].
 +  - Utilitzant les **llibreries ''phpmailer''**: amb aquesta llibreria podem enviar mitjançant un servidor extern (caldran credencials).
 +
 +\\
 +
 +=== 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'aquest servidor resulta relativament senzill.
 +
 +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'email
 +  pot tenir diverses línies
 +  acabem l'email amb un "." o bé amb CTRL+D
 +
 +...i s'enviarà l'email. Comproveu la carpeta de Spam perquè probablement vagi a parar allà.
 +
 +\\
 +
 +=== Opció 2: libs PHPMailer ===
 +Amb aquesta llibreria podem enviar mitjançant un servidor extern (caldran credencials).
  
   * [[https://netcorecloud.com/tutorials/send-an-email-via-gmail-smtp-server-using-php/|Enviar emails utilitzant SMTP Gmail amb PHP]].   * [[https://netcorecloud.com/tutorials/send-an-email-via-gmail-smtp-server-using-php/|Enviar emails utilitzant SMTP Gmail amb PHP]].
Línia 446: Línia 482:
  
 Per carregar les llibreries al vostre codi cal canviar els ''require'' que hi ha per: Per carregar les llibreries al vostre codi cal canviar els ''require'' que hi ha per:
-  require vendor/autoload.php+  require "vendor/autoload.php";
  
 <WRAP important> <WRAP important>
php.1696529935.txt.gz · Darrera modificació: 2023/10/05 18:18 per enric_mieza_sanchez