bytes.cat

La wiki d'FP d'informàtica

Eines de l'usuari

Eines del lloc


php_checkboxes

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_checkboxes [2026/09/22 14:49]
enric_mieza_sanchez [Checkboxes bàsic]
php_checkboxes [2026/09/25 15:04] (actual)
enric_mieza_sanchez [Checkboxes amb array]
Línia 3: Línia 3:
 Aquest article ve dels fonaments en [[PHP]]. Aquest article ve dels fonaments en [[PHP]].
  
-Els checkboxes poden tenir un tractament particular en PHP que els fa molt útils.+Els checkboxes es poden resoldre com a variables independents cadascun, o bé a través d'un array, que ho fa mes convenient. 
 + 
 +{{tag> #FpInfor #Daw #DawMp07 #DawMp07Uf1 #DawMp07Uf1 #php }}
  
 \\ \\
Línia 9: Línia 11:
 ===== Checkboxes bàsic ===== ===== Checkboxes bàsic =====
  
-Considera aquest codi:+Volem implementar una llista de la compra com aquesta: 
 + 
 +{{checkboxes_compra.png?300}} 
 + 
 +Resoldríem la part HTML així:
  
 <file php checkboxes.html> <file php checkboxes.html>
Línia 26: Línia 32:
 </form> </form>
 </file> </file>
 +
 +Ens enviarà les dades com seria mes esperable (si seleccionem Ous i Cebes):
 +<code>
 +$_POST = array(2) {
 +  ["ous"]=>
 +  string(2) "on"
 +  ["cebes"]=>
 +  string(2) "on"
 +}</code>
  
 I el processament d'aquest formulari: I el processament d'aquest formulari:
Línia 57: Línia 72:
 ===== Checkboxes amb array ===== ===== Checkboxes amb array =====
  
-Si volem enviar tots els elements de la compra en un sol array, es pot fer canviant el formulari inicial, i al ''name'' de cada checkbox posar-hi el nom de la variable array, per nosaltres ''prod[]'':+Si volem enviar tots els elements de la compra en un sol array, es pot fer canviant el formulari inicial, i al ''name'' de cada checkbox posar-hi el nom de la variable array, per nosaltres ''prods[]'':
  
  
Línia 63: Línia 78:
 <h3>Llista de la compra amb array</h3> <h3>Llista de la compra amb array</h3>
 <form action="checkboxes_array2.php" method="post"> <form action="checkboxes_array2.php" method="post">
- <input type="checkbox" id="patates" name="prod[]">+ <input type="checkbox" id="patates" name="prods[]" value="patates">
  <label for="patates">Patates</label>  <label for="patates">Patates</label>
  <br>  <br>
- <input type="checkbox" id="ous" name="prod[]">+ <input type="checkbox" id="ous" name="prods[]" value="ous">
  <label for="ous">Ous</label>  <label for="ous">Ous</label>
  <br>  <br>
- <input type="checkbox" id="cebes" name="prod[]">+ <input type="checkbox" id="cebes" name="prods[]" value="cebes">
  <label for="cebes">Cebes</label>  <label for="cebes">Cebes</label>
  <br>  <br>
Línia 76: Línia 91:
 </file> </file>
  
 +Fixa't ara en què:
 +  * Tenim l'array ''prods[]'' enlloc de l'identificador de la variable.
 +  * Hi ha un nou camp ''value='...nomproducte...''' que serà el què s'enviarà per POST.
 +
 +Això ens enviaria les dades via POST d'aquesta altra manera, diferent de l'exemple anterior:
 +
 +<code>$_POST = array(1) {
 +  ["prods"]=>
 +  array(2) {
 +    [0]=>
 +    string(3) "ous"
 +    [1]=>
 +    string(5) "cebes"
 +  }
 +}
 +</code>
 +
 +<file php checkboxes_array2.php>
 +<?php
 +
 +echo "<p>A la cistella hi ha:</p>\n";
 +echo "<ul>\n";
 +foreach( $_POST["prods"] as $elem ) {
 + echo "<li>$elem</li>\n";
 +}
 +echo "</ul>";
 +
 +var_dump($_POST);
 +</file>
  
php_checkboxes.1790088563.txt.gz · Darrera modificació: 2026/09/22 14:49 per enric_mieza_sanchez