Ver Mensaje Individual
  #4 (permalink)  
Antiguo 23/03/2011, 01:56
Avatar de Triby
Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: problema de update multiplo

Bueno, parece que lo mas facil seria usar matrices (arrays) para los campos:

Código HTML:
Ver original
  1. <tr>
  2. <td bgcolor="#FFFFFF">Numero</td>
  3. <td bgcolor="#FFFFFF">Nombre</td>
  4. <td bgcolor="#FFFFFF"><input type='checkbox' name='checkbox1[]' value='1'/></td>
  5. <td bgcolor="#FFFFFF"><input type='checkbox' name='checkbox2[]' value='1'/></td>
  6. <td bgcolor="#FFFFFF"><input type='checkbox' name='checkbox3[]' value='1'/></td>
  7. <td bgcolor="#FFFFFF"><input type='checkbox' name='checkbox4[]' value='1'/></td>
  8. <td bgcolor="#FFFFFF"><input type='checkbox' name='checkbox5[]' value='1'/></td>
  9. <td bgcolor="#FFFFFF"><input type='checkbox' name='checkbox6[]' value='1'/></td>
  10. <td bgcolor="#FFFFFF"><input name="textfield[]" type="text" size="10" maxlength="10" /></td>
  11. <!-- Copie y pegue... pero por aqui falta el campo nota[] -->
  12. <td bgcolor="#FFFFFF"><input name="juicio[]" type="text" size="80" maxlength="150" /></td>
  13. </tr></table>

Si te es muy necesario el ID para cada input de texto, entonces puedes poner: id="textfield-#" (donde # seria del 1 al 6 respectivamente) y lo mismo para juicio.

Ahora, en tu PHP necesitas verificar cada una de las 6 lineas (cero a 5):

Código PHP:
Ver original
  1. for($i = 0; $i <= 5; $i++) {
  2.     // Para cada checkbox (del 1 al 6) haces lo mismo
  3.     $check1 = $_POST['checkbox1'];
  4.     // Con asignacion ternaria es mas facil
  5.     $c1 = (isset($check[$i]) && $check[$i] = 1) ? 'SI' : 'NO';
  6.  
  7.     // Ahora los input de texto, los escapas para evitar inyeccion SQL o problemas con comillas
  8.     $nota = mysql_real_escape_string($_POST['nota'][$i]);
  9.     $textfield = mysql_real_escape_string($_POST['textfield'][$i]);
  10.     $juicio = mysql_real_escape_string($_POST['juicio'][$i]);
  11.  
  12.     // Solo falta hacer el UPDATE y listo!
  13.     // ... usando las variables $c1 ... $c6, $nota, $textfield y $juicio
  14.     // ... supongo que el filtro sera usando $i+1 como id
  15. }
__________________
- León, Guanajuato
- GV-Foto