Ver Mensaje Individual
  #2 (permalink)  
Antiguo 25/11/2010, 05:10
Avatar de tersipodes
tersipodes
 
Fecha de Ingreso: noviembre-2010
Mensajes: 23
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: usar variables de sesion y crear bandera (como lo hago?)

Hola,

Te dejo tu código algo depurado para conseguir lo que quieres. Vas bien encaminado pero falta que utilices correctamente el paso de información para realizar unas o otras acciones. No necesitas en absoluto los flags, puesto que lo único que debes hacer es actualizar la variable de sesión que contiene el nombre del alumno cuando realices una nueva búsqueda.

Modificando un poco el código, cuando realices una nueva búsqueda, se actualiza (o crea, depende) la variable de sesión $_SESSION['alumnobus']. Cuando le des a cualquiera de las opciones que tienes para los alumnos, esta información no se pierde. Cuando vuelvas a la página donde muestra tu búsqueda, continuará teniendo el valor anterior, por lo que no pasa absolutamente nada. Si realizaras una segunda búsqueda, en ese caso, el if puesto, actualizaría el valor de esta variable, y ya está. No es necesario realizar tanto control de paso de datos en tu caso.

Aquí te dejo tu código pegado con algunos comentarios. Espero que te sea de ayuda.



***pagina 1 (buscador)

<?php
session_start();
if ($_SESSION["usuario"])
{
?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>..::Consultas::..</title>
<script language="javascript" type="text/javascript" src="js/funciones.js"></script>

<style type="text/css">
<!--
.Estilo1 {color: #FFFFFF}
-->
</style>
</head>
<body background="img/contabilidad.JPG" onLoad="limpiar()">
<form name="form" method="post" action="muestrabusqueda1.php">
<h3 class="Estilo1" style="text-decoration:blink">ESCRIBE EL NOMBRE DEL ALUMNO A CONSULTAR</h3>
<hr />
<p>
<input name="nabusqueda" type="text" />
</p>
<p>
<input type="button" value="Enviar" title="Enviar" onClick="validar()">
<input name="" type="reset" value="Borrar" />
<input type="hidden" name="vars" value="0"/>
</p>
<a href="Menu_alumnos.php" title="regresar">
<img src="img/Regresar.png" width="50" height="50" border="0" />
</a>
</form>
</body>
</html>
<?
//NO HACE FALTA QUE HABRAS EL CÓDIGO PHP CON <?php DESPUES DE LA PRIMERA VEZ
//CON QUE PONGAS <? SERÍA SUFICIENTE.
}
else
{
echo "<script type='text/javascript'>
alert('favor de loguearse');
window.location='index.php';
</script>";
}
?>

******pagina 2 (muestra el resultado de la busqueda y crea la variable)

<?php
session_start();
if (isset($_SESSION["usuario"]))
{
require_once('Connections/cn.php');



if($_POST['vars']!=null)
{
$_SESSION['alumnobus'] = $_POST['nabusqueda'];

}


$nombreb = $_SESSION['alumnobus'] ;
mysql_select_db($database_cn, $cn);
$query_consulta = "SELECT * FROM alumnos WHERE alumnos.nombre like'%$nombreb%'";
$consulta = mysql_query($query_consulta, $cn) or die(mysql_error());

?>
<html>
<head>
<title>BUSQUEDA</title>
<h3 align="justify" class="Estilo1" >Busqueda de :<?php echo $nombreb; ?></h3>
<style type="text/css">
<!--
.Estilo1 {color: #FFFFFF}
-->
</style>
<script language="javascript" type="text/javascript" src="js/funciones.js"></script>
</head>

<body background="img/contabilidad.JPG">
<table border="1">
<tr style="background-color:#0099FF">
<td valign="top" align="center" width="10" class="Estilo1"><strong>ID</strong></td>
<td valign="top" align="center" width="300" class="Estilo1"><strong>Nombre</strong></td>
<td valign="top" align="center" width="200" class="Estilo1"><strong>Carrera</strong></td>
<td valign="top" align="center" width="70" class="Estilo1"><strong>Semestre</strong></td>
<td valign"top" align="center" width="150" class="Estilo1"><strong>Plantel</strong></td>
<td valign="top" align="center" width="100" class="Estilo1"><strong>Matricula</strong></td>
<td valign="top" align="center" width="80" class="Estilo1"><strong>Funciones</strong></td>

<?
//ES MEJOR UTLIZAR EL WHILE QUE EL DO-WHILE, PUESTO QUE SI NO HA ENCONTRADO NADA
//NO MOSTRARÁ NINGUNA FILA. SI UTILIZAS EL DO-WHILE, SIEMPRE MOSTRARÁ ALGO
//AUNQUE SEAN ERRORES

while ($row_consulta = mysql_fetch_assoc($consulta)) { ?>
<tr>
<td class="Estilo1" align="center"><strong><? echo $row_consulta['ID']; ?></strong></td>
<td class="Estilo1" align="center"><strong><? echo $row_consulta['nombre']; ?></strong></td>
<td class="Estilo1" align="center"><strong><? echo $row_consulta['carrera']; ?></strong></td>
<td class="Estilo1" align="center"><strong><? echo $row_consulta['semestre']; ?></strong></td>
<td class="Estilo1" align="center"><strong><? echo $row_consulta['plantel']; ?></strong></td>
<td class="Estilo1" align="center"><strong><? echo $row_consulta['matricula']; ?></strong></td>
<td width="55" align="center" valign="top">
<a href="modifial.php?ID=<? echo $row_consulta['ID'];?>" title="Modificar Datos de <?php echo $row_consulta['nombre'];?> ">
<img src="img/modificar.bmp" width="24" height="24" border="0">
</a>
<a href="adminpagos.php?ID=<? echo $row_consulta['ID'];?>" title="Registrar Pago">
<img src="img/pago.bmp" width="24" height="24" border="0">
</a>
<a href="javascript:void(0)" title="Eliminar Alumno" onClick="eliminar_al('<? echo $row_consulta['ID'];?>')">
<img src="img/eliminar.png" width="24" height="24" border="0">
</a>
<a href="hispag.php?ID=<? echo $row_consulta['ID'];?>" title="Historial de pagos">
<img src="img/hispag.png" width="24" height="24" border="0">
</a>
</td>
</tr>

<? } ?>

</table>
<a href="busqueda1.php" title="regresar">
<img src="img/Regresar.png" width="50" height="50" border="0" />
</a>
</body>
</html>

<?
}
else
{
echo "<script type='text/javascript'>
alert('Usted no está logueado');
window.location='index.php';
</script>";
}
?>



******pagina 3 (modifico la inf del usuario y tambien la variable a valor 1)

<?php
session_start();
//si el user no inició sesion chauuu
if (!$_SESSION["usuario"])
{echo "<script type='text/javascript'>
alert('Usted no esta logueado');
window.location='index.php';
</script>";}

/* NO SE NECESITAN LOS FALGS
if($_SESSION['flag']==0)
{
$bandera=$_SESSION['flag'];
$_SESSION['flag'] = 1;
echo $bandera;
}
*/
?>
<html>
<head>
<title>..::Administracion de pago::..</title>
<style type="text/css">
<!--
.Estilo1 {color: #FFFFFF}
-->
</style>
<script language="javascript" type="text/javascript" src="js/funciones.js"></script>

</head>
<body background="img/contabilidad.JPG">

<?
require_once ('Connections/cn.php');

//conexion
mysql_select_db($database_cn, $cn);

//recuperamos las variables
$valor=$_GET['ID'];

//evitamos problemas con caracteres especiales
mysql_query("SET NAMES 'utf8'");

//consulta
$consulta=mysql_query("select * from pagos where ID_alumno='$valor'");

//cuantas entradas hay?
$total=mysql_num_rows($consulta);

// si no hay consultas mostramos el if
if($total==0)
{
?>
<form action="recibeadminpagos.php" method="post" name="form1">
<table width="360" border="0">
<td><span class="Estilo1"><strong>Promedio semestre anterior</span>:</strong></td>
<td><input type="text" name="psa"/></td>
</tr>
<tr>
<td><span class="Estilo1"><strong>Total a pagar</span>:</strong></td>
<td><input type="text" name="total"/></td>
</tr>
<tr>
<td><span class="Estilo1"><strong>Concepto de pago:</span></strong></td>
<td><select name="conceptopago">
<option value="inscripcion">Inscripcion</option>
<option value="cene">Colegiatura Enero</option>
<option value="cfeb">Colegiatura Febrero</option>
<option value="cmar">Colegiatura Marzo</option>
<option value="cabr">Colegiatura Abril</option>
<option value="cmay">Colegiatura Mayo</option>
<option value="cjun">Colegiatura Junio</option>
<option value="cjul">Colegiatura Julio</option>
<option value="cago">Colegiatura Agosto</option>
<option value="csep">Colegiatura Septiembre</option>
<option value="coct">Colegiatura Octubre</option>
<option value="cnov">Colegiatura Noviembre</option>
<option value="cdic">Colegiatura Diciembre</option>
<option value="BIPN">BECA IPN</option>
<option value="BSEP">BECA SEP</option>
<option value="BTON">BECATON</option>
</select></td>
</tr>
<tr>
<td><span class="Estilo1"><strong>Periodo de pago</strong></span></td>
<td><select name="periodopago">
<option value="normal">1-5</option>
<option value="sancion+">6-20</option>
<option value="sancion+">21-ultimo dia del mes</option>
</select></td>
</tr>
<tr>
<td><span class="Estilo1"><strong>Cantidad:</strong></span></td>
<td><input type="text" name="cantidad"/></td>
</tr>
<tr>
<td><span class="Estilo1"><strong>F.R:</strong></span></td>
<td><input type="text" name="facorec"/></td>
</tr>
</table>
<p>
<input type="hidden" name="ID" value="<? echo $valor; ?>" />
<input type="button" value="Enviar" title="Enviar" onClick="validar()">
<input type="reset" value="Limpiar" title="borrar"/>
</p>
<a href="muestrabusqueda1.php" title="regresar">
<img src="img/Regresar.png" width="50" height="50" border="0" />
</a>
</form>

<?
}
?>

</body>
</html>