Ver Mensaje Individual
  #4 (permalink)  
Antiguo 19/06/2013, 15:42
Balium
 
Fecha de Ingreso: septiembre-2010
Mensajes: 11
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: Que los checkbox se envien al hacer submit

Muchas gracias por tu respuesta. Me sirvio mucho lo de los arrays.
Pero creo que no entendiste.

Yo tengo SI O SI que tener DOS formularios. Un formulario con el boton submit y otro formulario con los checkbox. Tienen que SI O SI estar en formularios separados.
Porque son dos funciones diferentes. Este es el código completo por si alguien lo quiere ver:

Código:
<html>
<head>
</head>
<body>
	<?php
		
		session_start();
		$accion = "";
		if(isset($_REQUEST['accion'])) $accion = $_REQUEST['accion'];
		
		if($accion == "borrar")
		{
			$borraralumnos = GetSelectedValuesFromGrid("grillaAlumnos");

			echo "Alumnos a borrar: ".count($borraralumnos);
			for($i=0;$i< count($borraralumnos);$i++)
			{
				echo $borraralumnos[i]."<br>";;
			}
		}

		CrearGrillaAlumnos();
	?>

		<form method="post" action="ejercicio60-alumnos_lst.php?accion=borrar">			
			<input type="submit" value="Borrar datos seleccionados" name="cmdBorrar">
		</form>
	<?php

		function GetSelectedValuesFromGrid($gridname)
		{
			
			$nrofilas = $_SESSION[$gridname."rows"];

			echo "Filas: ".$nrofilas."<br>";
			for($i=1;$i<=$nrofilas;$i++)
			{
				$nombrecheckbox = "chk".$gridname.$i;

				echo $nombrecheckbox."<br>";
				if(isset($_REQUEST[$nombrecheckbox]))
				{
					$values[] = $_REQUEST[$nombrecheckbox];					
				}
			}


		}

		function CrearGrillaAlumnos()
		{
			$alumnos = GetAlumnos();

			if($alumnos != false)
			{
				AddHTMLGrillaWithLinksAndCheckBox($alumnos,"ejercicio60-alumnos_abm.php","codigo","grillaAlumnos");
				
			}
		}	


		function AddHTMLGrillaWithLinksAndCheckBox($registros,$link,$clave,$nombre)
		{
			$columnas = GetColumnas($registros);			

			$i = 0;
			echo "<form method=\"post\">";

			echo "<table border=\"1\">";
			echo "<tr>";

			echo "<th></th>";			// Columna checkbox
			while($i < count($columnas))
			{
				if ($columnas[$i] != $clave)
				{			
					echo "<th>".$columnas[$i]."</th>";					
				}
				$i++;					
			}
			echo "<th></th>";			// Columna modificar
			echo "</tr>";



			$reg = mysql_fetch_array($registros);
			$j = 1;

			while($reg != false)
			{
				echo "<tr>";
				$valuecheckbox = $reg[$clave];
				$namecheckbox = "chk".$nombre.$j;
				echo "<td><input type=\"checkbox\" value=\"$valuecheckbox\" name=\"$namecheckbox\"></td>";
				
				for($i=0;$i<count($columnas);$i++)
				{
					if($columnas[$i] == $clave)
					{
						$codigo = $reg[$columnas[$i]];
					}
					else
					{
						echo "<td>";
						echo $reg[$columnas[$i]];
						echo "</td>";
					}
				}	

				$linkcompleto = $link."?value=modificar&clave=".$codigo;
				echo "<td><a href=\"$linkcompleto\">Modificar</a></td>";
				echo "</tr>";
				
				$j++;
				$reg = mysql_fetch_array($registros);
			}
			$namehidden = $nombre."rows";
			$j--;

			
			$_SESSION[$namehidden] = $j; 
			

			//echo "<input type=\"hidden\" name=\"$namehidden\" value=\"$j\">";

			echo "</table>";
			echo "</form>";
		}

		function GetColumnas($registros) 
		{ 
			$fields = array();
			for($i = 0; $i < mysql_num_fields($registros); $i++) 
			{
    				$field_info = mysql_fetch_field($registros, $i);
    				$fields[] = $field_info->name;
			}
			return $fields;			
		} 

		function GetAlumnos()
		{
			$conexion = ConectarIngresar_MySql();
			
			if($conexion != false)
			{
				$query = "select a.codigo,a.nombre,a.email,c.nombre as nombrecurso from alumnos a inner join cursos c on a.codigocurso = c.codigo";
				$registros = Ejecutar_MySqlQuery($query,$conexion);				
				return $registros;
			}
			else
			{
				return false;
			}	
			Cerrar_MySql($conexion);
		}
	
		function ConectarIngresar_MySql()
		{
			$conexion = Conectar_MySql("localhost","root","");

			if($conexion != false)
			{
				$pudo = Seleccionar_MySql("bbdd_phpya1",$conexion);
			
				if ($pudo != false)
				{
					return $conexion;
				}
				else
				{
					return false;
				}
			}
			else
			{
				return false;
			}
		}


		function Cerrar_MySql($conexion)
		{
			mysql_close($conexion);
		}


		function Ejecutar_MySqlQuery($query,$conexion)
		{
			$pudo = mysql_query($query,$conexion);
			return $pudo;	
		}

		function Seleccionar_MySql($base,$conexion)
		{
			$pudo = mysql_select_db($base,$conexion);
			return $pudo;

		}
		
		function Conectar_MySql($dir,$user,$pass)
		{
			$conexion = mysql_connect($dir,$user,$pass);
			return $conexion;			
		}

	?>
</body>
</html>
Muchas gracias!!