PHP - pasar valor de radio button

 
Vista:
sin imagen de perfil

pasar valor de radio button

Publicado por Fernando (12 intervenciones) el 25/04/2016 19:51:57
Buen Día compañeros vengo trabajando un proyecto de hace tiempo
es un sistema de consultas generado con php y una conexión a mysql
he generado una tabla con un campo de búsqueda.

acabo de integrar a esta busqueda algunos radio button que los estoy trabajando con switch case.
al generar una consulta selecciono que es lo que estoy buscando .
ID, colonia, calle etc.
muestra los resultados y si son mas de 100 se ejecuta la funcion de paginacion.
el problema se genera cuando quiero cambiar a la siguiente pagina de los resultados.

al parecer el radio button pierde el valor y al avanzar a siguiente pagina muestra todos los resultados sin el filtro.
para esto me mantengo por ejemplo en la pagina 2 y selecciono de nuevo la opcion de busqueda , ejecuto la busqueda y me muestra los resultados del filtro de la pagina 2.
alguien podria orientarme a mantener el valor del radio button o pasarlo por la url en la pginacion?
adjunto archivos de codigo.
Gracias de antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de kip
Val: 2.325
Plata
Ha disminuido 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

pasar valor de radio button

Publicado por kip (877 intervenciones) el 09/05/2016 00:35:51
Lo que podrias hacer es crear una variable $_SESSION que almacene el radio button seleccionado.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

pasar valor de radio button

Publicado por Fernando (12 intervenciones) el 11/05/2016 16:07:46
buen dia gracias por tu respuesta , Esto mantendria el valor del radio button seleccionado ?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de kip
Val: 2.325
Plata
Ha disminuido 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

pasar valor de radio button

Publicado por kip (877 intervenciones) el 13/05/2016 23:38:47
Hola, claro el problema que tienes radica al cambiar la pagina de resultados.
Podrias almacenar aquel campo de busqueda seleccionado en una variable $_SESSION:

1
$_SESSION['loqueestasbuscando'] = $row['camposeleccionado']

Luego de almacenarla, en el inicio del archivo podrias crear una condicion que almacene aquel valor al radio button de busqueda.

Espero me entiendas, si necesitas mas ayuda avisas y nos cuentas como te quedo.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

pasar valor de radio button

Publicado por Fernando (12 intervenciones) el 16/05/2016 23:59:19
gracias Por tu respuesta , si dejame realizo las pruebas y te comento como me fue . disculpa la demora
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

pasar valor de radio button

Publicado por Fernando (12 intervenciones) el 17/05/2016 17:41:47
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
<?php
function paginar ($pagina,$num_registros,$registros,$nombre_pagina,$variables="",$variable_pagina="num")
{
if ($num_registros>$registros)//si la variable que guarda el numero de registros que hay en la tabla es mayor a los registros que  quiero  mostrar.. hacer la siguiente condicion
 {
 	if (!is_numeric($pagina))//si  la variable pagina , la cual es la que indica el numero de pagina ,,,, no es numerica,, entonces
		$pagina=1;// la variable pagina  tomara  el valor  1
	$paginas = ceil($num_registros/$registros);	//El total de paginas  sera el numero de registros entre los registros que quiero mostrar. el ceil es para aproximar,, ejemplo  no poner 2.5 paginas, si no  3.
 	if ($variables=="")//si variables es igual a  Vacio,, la cual se inicializo al inicio del codigo..entonces
		$enlace='index.php?sec=1'.$nombre_pagina ."?&$variable_pagina=";//se crea variable con el nombre enlace ,, que sera igual al valor de nombre de pagina concatenado con la variable pagina  la cual  tiene el valor string num y toma el siguiente valor ?&num= 
	else//si no 
		$enlace='index.php?sec=1'.$nombre_pagina ."?&$variables&$variable_pagina=";//se declara variable llamada enlace   la cual tomara el valor de  $nombre_pagina concatenada con variables declarada arriba como vacia,junto con  variable_pagina que tiene el valor string num.  se forma enlace y  toma el siguiente valor   y toma el valor enlace toma el valor    ?X&num=   donde X es alguna valor que tome la variable Variables
 
 
	//Pagina Anterior
	if(($pagina -1) > 0) {//si la variable pagina menos 1  la cual es  el numero de pagina actual   es mayor a cero entonces..
		$paginacion.= "<a href='$enlace". ($pagina-1) ."&busqueda_txt=". $_REQUEST["busqueda_txt"]."'><img src='Imagenes/iconos/back.png' width='40' height='40' border='0'> Anterior</a> ";//se declara una variable paginacion a la cual se le concatena  un enlace mediante la variable enlace,,donde  asu vez se concatena con  el numero de pagina y la palabra "Anterior".
		}
	if ($paginas>15) //SI son más de 15, mostrar solo hasta 15...... si la variable paginas la cual contiene el numero de paginas es mayor a 15  entonces..
	{
		if ($pagina<15) //Comienza en 1.......si la variable pagina la cual es la que indica el numero de pagina es menor a 15  entonces..
		{
			$pagina_desde=1;   // se declara una variable llamada pagina_desde,, y se le asigna el valor 1 la cual indica desde donde comienza
			$pagina_hasta=15;  // se declara tambien una variable llamada Pagina_hasta y se le asigna el valor del limpite de paginas por  rango....se asigna el valor 15, para mostrar en el primer rango solo hasta la pagina 15
		} else {  // si no  cumplir con la siguiente Condicion
			$pagina_desde=$pagina-7;     //se declara la variable  pagina_desde y se asigna el valor de la variable pagina la cual indica el  numero de pagina -7
			if (($pagina+7)>$paginas)    // si... la variable pagina  +7 es mayor  a la variable paginas la cual guarda el numero de paginas.. entonces
				$pagina_hasta=$paginas;			// se declara una variable pagina_hasta a la cual se le asigna  el valor paginas.
			else							// si noo
				$pagina_hasta=$pagina+7;   // se declara  una variable pagina_hasta  a la cual se le asigna el valor de pagina,, +7 
			 $paginacion.=" <a href='$enlace". 1 ."&busqueda_txt=". $_REQUEST["busqueda_txt"]."' title='Ir a la primera p&aacute;gina'>1</a> ... ";					// se declara una variable llamada paginacion  la cual se concatena un en lace mediante la variable enlace  seguida del numero 1 el cual indica la pagina  numero  1  concatenado con  el texto ir a la primera pagina ..
		}
 
 
 
		//Listado de paginas
		for ($i=$pagina_desde; $i<=$pagina_hasta; $i++){   //hace un recorrido for  el cual  se declara una variable j ala cual se le asigna el valor  pagina_desde; el segundo parametro  es donde indica que se hara el bucle mientras que  J sea menor o igual a Pagina_hasta  el terecer parametro indica  el contador,, el cual va incrementando uno hasta que la variable  sea igual al limite del bucle.
			if ($pagina == $i) {   //  si  la variable pagina  es igual a lo que esta en j  entonces
				$paginacion.= "<b><font color='#FF0000' size='3'>".$pagina."</font></b> ";  //se declara una variable  llamada paginacion la cual se concatena  con la variable  pagina que es la que indica el numero de pagina 
			} else {  // si no 
				$paginacion.="<a href='$enlace". $i ."&busqueda_txt=". $_REQUEST["busqueda_txt"]."'>$i</a> ";  // se declara una variable llamada paginacion  la cual se concatena  con la variable enlace y a su vez con la variable j para crear el enlace
			}
		 }
		 if (($pagina+7)<$paginas) // si  la variable pagina +7 es menor al numero de paginas  entonces 
			 $paginacion.="... <a href='$enlace". $paginas ."&busqueda_txt=". $_REQUEST["busqueda_txt"]."' title='Ir a la &uacute;ltima p&aacute;gina'>". $paginas ."</a> ";  // se declara una variable paginacion   concatenada con la variable enlace para crearlo a su vez concatenado con la variable  paginas que es el total de paginas ,, con el texto ir a la ultima pagina  concatenado con el valor paginas.
	} else {  //si no 
	//Listado de paginas menores o iguales a 20
		for ($i=1; $i<=$paginas; $i++){     //se ejecuta el ciclo asignando una variable con valor =1 ,, luego se hace el bucle  mientras que la variable j sea menor o igual  a la variable paginas ,, el tercer parametro es el contador que va incrementando en 1
			if ($pagina == $i) {  // si   la variable pagina   es igual a lo que hay en la variable j  entonces
				$paginacion.= "<b><font color='#FF0000' size='3'>".$pagina."</font></b> ";  // se declara una variable  paginacion  concatenada con  la variable pagina
			} else {   // si no 
				$paginacion.="<a href='$enlace". $i ."&busqueda_txt=". $_REQUEST["busqueda_txt"]."'>$i</a> "; //  se declara una variable paginacion  concatenada con la variable enlace  y asu vez con la variable j  para crear un enlace 
			}
		 }
	}
	//P&aacute;gina Siguiente
	if(($pagina + 1)<=$paginas) {   // si  la variable pagina +1  es menor   o igual al total de  paginas  entonces ..
		$paginacion.= " <a href='$enlace". ($pagina+1) ."&busqueda_txt=". $_REQUEST["busqueda_txt"]."'>Siguiente<img src='Imagenes/iconos/next.png' width='40' height='40' border='0'></a>"; //  declarar una variable paginacion  concatenada con la variable enlace la cual  se concatena a su vez con la variable  pagina  y asu vez  la palabra siguiente.  "&busqueda_txt=". $_REQUEST["busqueda_txt"]." se concateno con esta parte para que  ejecutara el procedimiento al ir ala siguiente pagina o anterior. de lo contrario al momento de acceder a un enlace perdia la busqueda.
	}
 }
 	return "<font face=\"Arial Narrow\" style=\"font-size:20px;\">$paginacion</font>"; // regresa los valores de funcion
}
 
?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

pasar valor de radio button

Publicado por Fernando (12 intervenciones) el 17/05/2016 17:40:52
Buen dia adjunto los dos archivos de codigo relacionados , abajo se encuentra el de la paginacion que es una funcion.
intente hacer las pruebas agregando:
<?php
session_start();
$seleccionado = $_POST['OpcionesBusqueda'];
$_SESSION['OpcionesBusqueda'] = $seleccionado;
?>
incluyendo el session start en el archivo paginacion pero no tuve exito , estoy perdido
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
<?PHP
//por el momento no respeta la paginacion debido a que se agrego un criterio de busqueda el cual son los radio button , es necesario concatenar el valor del radio button con los links de paginacion.
include ("Conexion/Conexion2.php");
include ("paginacion.php");
//****************************************FILTRO**********************
$seleccionado =  $_POST['OpcionesBusqueda'];
print_r($_POST);
switch($_POST["OpcionesBusqueda"])
{
		case 1:
 
			echo"ID";
			if($_REQUEST["btn_buscar"]!="" || $_REQUEST["busqueda_txt"]!="")//verifica si el usuario pulso el boton buscar  y  el campo  de texto  esta vacio 
			{if(is_numeric($_REQUEST["busqueda_txt"]))// verifica si lo que escribio es numerico en el cuadro de texto
			$filtro=" WHERE ViviendaId =".$_REQUEST["busqueda_txt"];}
			break;
 
		case 2:
			echo"Estatus";
			if($_REQUEST["btn_buscar"]!="" || $_REQUEST["busqueda_txt"]!="")//verifica si el usuario pulso el boton buscar  y  el campo  de texto  esta vacio 
			{$filtro=" WHERE Situacion like '%".$_REQUEST["busqueda_txt"]."%'";}
			break;
 
		case 3:
			echo"Promotor";
			if($_REQUEST["btn_buscar"]!="" || $_REQUEST["busqueda_txt"]!="")//verifica si el usuario pulso el boton buscar  y  el campo  de texto  esta vacio 
			{$filtro=" WHERE Desc_Promotor like '%".$_REQUEST["busqueda_txt"]."%'";}
			break;
 
		case 4:
			echo"Calle";
			if($_REQUEST["btn_buscar"]!="" || $_REQUEST["busqueda_txt"]!="")//verifica si el usuario pulso el boton buscar  y  el campo  de texto  esta vacio 
			{$filtro=" WHERE Calle like '%".$_REQUEST["busqueda_txt"]."%'";}
			break;
 
		case 5:
			echo"Num Exterior";
			if($_REQUEST["btn_buscar"]!="" || $_REQUEST["busqueda_txt"]!="")//verifica si el usuario pulso el boton buscar  y  el campo  de texto  esta vacio 
			{$filtro=" WHERE NumeroExtarior = ".$_REQUEST["busqueda_txt"];}
			break;
 
		case 6:
			echo"Calle";
			if($_REQUEST["btn_buscar"]!="" || $_REQUEST["busqueda_txt"]!="")//verifica si el usuario pulso el boton buscar  y  el campo  de texto  esta vacio 
			{$filtro=" WHERE Colonia like '%".$_REQUEST["busqueda_txt"]."%'";}
			break;
 
 
		default:
			echo"Seleccione una opcion para la busqueda porfavor";
 
}
	//$Mensaje="Buscando:" .$_REQUEST[busqueda_txt];//se guarda el mensaje en la variable Mensaje para poder mandarlo a llamar mas abajo o mas adelante
 
	//else {$Mensaje= "<font color='red'>Porfavor Escriba  algo en el cuadro de texto antes de realizar la busqueda</font>";}//si no escribio nada entonces mostrar este mensaje
 
?>
 
<?PHP
$Consulta_registros=mysql_query("select * from registros_juridico t1  LEFT JOIN Promotores t2 ON t1.Promotor=t2.ID_Promotor $filtro");//se asigna variable para  hacer consulta sql
$num_registros=mysql_num_rows($Consulta_registros);//se guarda cuantos registros se encontraron se manda a llamar la variable que contiene la consulta
if($num_registros==0)//si la variable es igual a 0 registros muestra mensaje
{
	echo "No se han encontrado Registros";
	echo "<br><a href='index.php?sec=1'>Regresar </a>";
	mysql_close($link);
	exit();
}
 
/*INICIO SECCION DE PAGINACION*/
$registros=100;
$pagina=$_GET["num"];
if(is_numeric($pagina))
	$inicio=(($pagina-1)*$registros);
	else
		$inicio=0;
 
?>
<div align="center" class="fila_titulo">
<img src="./Imagenes/iconos/buscar-exp.png" height="48" width="48"/>
  <p>Busqueda de Registros</p>
  <form id="form1" name="form1" method="post" action="">
    <label>
    <input name="busqueda_txt" type="text" id="busqueda_txt" value="<?PHP echo $_GET["busqueda_txt"] ?>" autofocus />
	<?PHP  echo $num_registros; ?>
    </label>
    <label>
    <input name="btn_buscar" type="submit" id="btn_buscar" value="Buscar" />
    </label>
 
 
	<?PHP
	echo $Mensaje;
	?>
 <table width="200">
      <tr>
        <td><label>
          <input type="radio" name="OpcionesBusqueda" value="1" <?php if ($seleccionado == 1){echo 'checked="checked"';} ?>/>
          ID_Expediente</label></td>
      </tr>
      <tr>
        <td><label>
          <input type="radio" name="OpcionesBusqueda" value="2" <?php if ($seleccionado == 2){echo 'checked="checked"';} ?>/>
          Estatus</label></td>
      </tr>
      <tr>
        <td><label>
          <input type="radio" name="OpcionesBusqueda" value="3" <?php if ($seleccionado == 3){echo 'checked="checked"';} ?> />
          Promotor</label></td>
      </tr>
      <tr>
        <td><label>
          <input type="radio" name="OpcionesBusqueda" value="4"  <?php if ($seleccionado == 4){echo 'checked="checked"';} ?>/>
          Calle</label></td>
      </tr>
      <tr>
        <td><label>
          <input type="radio" name="OpcionesBusqueda" value="5"  <?php if ($seleccionado == 5){echo 'checked="checked"';} ?>/>
          Num exterior</label></td>
      </tr>
	        <tr>
        <td><label>
          <input type="radio" name="OpcionesBusqueda" value="6"  <?php if ($seleccionado == 6){echo 'checked="checked"';} ?>/>
          Colonia</label></td>
      </tr>
    </table>
 
 
 
  </form>
 
 
 <p>
 </p>
 <p>
 </p>
 
</div>
<div class="barra">
    <div class="contenido" >
   <p><a href="index.php?sec=3">Registrar Nuevo <img src="Imagenes/iconos/new.png"  width="30" height="30"/></a>  </p>
  <table width="1392" border="1" cellpadding="0" cellspacing="0"  align="center">
 
<tr>
           <td width="45"  align="center" bgcolor="#99CC00">ID</td>
		    <td width="75"  align="center" bgcolor="#99CC00">CREDITO ORIGINAL</td>
			<td width="79"  align="center" bgcolor="#99CC00">CREDITO ACTUAL</td>
		   <td width="100"  align="center" bgcolor="#99CC00">ESTATUS</td>
		   <td width="118"  align="center" bgcolor="#99CC00">PROMOTOR</td>
		   <td width="127"  align="center" bgcolor="#99CC00">UBICACION DEL ARCHIVO</td>
	       <td width="100"  align="center" bgcolor="#99CC00">COL</td>
		   <td width="141"  align="center" bgcolor="#99CC00">CALLE</td>
			<td width="53"  align="center" bgcolor="#99CC00">No.EXT</td>
			<td width="54"  align="center" bgcolor="#99CC00">No.INT</td>
			<td width="106"  align="center" bgcolor="#99CC00">CONDOMINIO</td>
			<td width="49"  align="center" bgcolor="#99CC00">MANZ</td>
			<td width="55"  align="center" bgcolor="#99CC00">LOTE</td>
			<td width="80"  align="center" bgcolor="#99CC00">ESTADO EXP</td>
		   <td width="46"  align="center" bgcolor="#99CC00">MOD</td>
		   <td width="47"  align="center" bgcolor="#99CC00">DEL</td>
		   <td width="81"  align="center" bgcolor="#99CC00">ASIGNAR</td>
    </tr>
 
<?php
if ($filtro=="")
 $Consulta_registros=mysql_query("select * from registros_juridico t1  LEFT JOIN Promotores t2 ON t1.Promotor=t2.ID_Promotor  ". $filtro ." order by ViviendaID ASC LIMIT $inicio,$registros");
else{
$Consulta_registros=mysql_query("select * from registros_juridico t1  LEFT JOIN Promotores t2 ON t1.Promotor=t2.ID_Promotor ". $filtro ." order by ViviendaID ASC LIMIT $inicio,$registros");
}
 
 
$i = 0 ;
 while ($mostrar_resultados=mysql_fetch_array($Consulta_registros)){
 
$modificar="<a href='index.php?sec=mr&cod={$mostrar_resultados['ViviendaId']}'><img src='Imagenes/iconos/edit.png' width='35' height='35' border='0'></a>";
 
$eliminar="<a href='index.php?sec=cer&cod={$mostrar_resultados['ViviendaId']}'><img src='Imagenes/iconos/delete.png' width='40' height='40' border='0'></a>";
 
$asignacion="<a href='index.php?sec=as&cod={$mostrar_resultados['ViviendaId']}'>Asignar<img src='Imagenes/iconos/move.png' width='30' height='30' border='0'></a>";
 
 
?>
     <tr class="fila_<?php echo $i%2 ; ?> ">
           <td  align="center" ><?PHP echo $mostrar_resultados['ViviendaId']?>  </td>
		   <td  align="center" ><?PHP echo $mostrar_resultados['Credito_Original']?>  </td>
		   <td  align="center" ><?PHP echo $mostrar_resultados['Credito_Actual']?>  </td>
		   <td  align="center" ><?PHP echo $mostrar_resultados['Situacion']?>  </td>
		   <td  align="center" ><?PHP if($mostrar_resultados["ID_Promotor"]==$mostrar_resultados["Promotor"])
		  																 echo $mostrar_resultados['Desc_Promotor'];
																		 else { echo "error al mostrar la informacion";}?>  </td>
	       <td  align="center" ><?PHP echo $mostrar_resultados['UbicacionArchivo']?> </td>
		   <td  align="center" ><?PHP echo $mostrar_resultados['Colonia']?>  </td>
		   <td  align="center" ><?PHP echo $mostrar_resultados['Calle']?>  </td>
		   <td  align="center" ><?PHP echo $mostrar_resultados['NumeroExtarior']?>  </td>
		   <td  align="center" ><?PHP echo $mostrar_resultados['NumeroInterior']?>  </td>
		   <td  align="center" ><?PHP echo $mostrar_resultados['NumeroCondominio']?>  </td>
		   <td  align="center" ><?PHP echo $mostrar_resultados['Manzana']?>  </td>
		   <td  align="center" ><?PHP echo $mostrar_resultados['Lote']?>  </td>
		   <td  align="center" ><?PHP  $estatus=$mostrar_resultados['Estado_exp'];
		   																switch ($estatus){
																		 case 1: echo"Escriturada";
																		 break;
																		 case 2: echo"Archivado";
																		 break;
																		 case 3: echo"Prestado";
																		 break;
																		 case 4: echo"Pendiente";
																		 break;
																		 case 5: echo"Devuelto a Infonavit";
																		 break;
																		 default:
																		 echo "Ingrese algun estatus porfavor";
																		 }
		   																?>  </td>
 
		   <td  align="center" ><?PHP echo $modificar ?></td>
		   <td align="center" ><?PHP echo $eliminar ?> </td>
		   <td align="center" ><?PHP echo $asignacion ?> </td>
     </tr>
<?php
$i ++;
}
 
?>
</table>
</div>
</div>
    <p>&nbsp;  </p>
 
<div align="center"  class="fila_titulo">
 
<?PHP
 echo paginar ($pagina,$num_registros,$registros,$nombre_pagina,$variables="",$variable_pagina="num" )
?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar