ARCHIVO: class.select.php
Código PHP:
<?php
class selects extends MySQL
{
var $code = "";
function cargarInstituciones($usuario)
{
$consulta = parent::consulta("SELECT nombre_institucion FROM institucion, usuario WHERE institucion.Nombre = usuario.NOMBRE and usuario.NOMBRE='".$usuario."' ORDER BY nombre_institucion ASC");
$num_total_registros = parent::num_rows($consulta);
if($num_total_registros>0)
{
$instituciones = array();
while($institucion = parent::fetch_assoc($consulta))
{
$code = $institucion["nombre_institucion"];
$nombre = $institucion["nombre_institucion"];
$instituciones[$code]=$nombre;
}
return $instituciones;
}
else
{
return false;
}
}
}
?>
La funcion de arriba esta bien.
ARCHIVO: cargar-institucion.php
Código PHP:
<?php
session_start();
include("clases/class.mysql.php");
include("clases/class.select.php");
$selects = new selects();
$usuario=$_SESSION['usuario'];
$instituciones = $selects->cargarInstituciones($usuario);
foreach($instituciones as $key=>$value)
{
echo "<option value=\"$key\">$value</option>";
}
?>
Ahora aca donde llamas a la funcon cargarInstituciones le envias la variable usuario sin ningun valor por eso no te funciona
$usuario debe tener el valor del nombre de usuario que inicia sesion.
$usuario=$_SESSION['usuario'];
Datos del SELECT que esta en el formulario:
Código PHP:
Institucion:
<select name="institucion" id="institucion">
<option value="0">Selecciona Uno...</option>
<?
$query1= mysql_query("SELECT * FROM institucion, usuario WHERE institucion.Nombre = usuario.NOMBRE",$db);// and usuario.Nombre=$usuario que debe tener el valor del usuario que inicia sesion
while ($datos1=mysql_fetch_assoc($query1)){
echo '<option value="'.$datos1['nombre_institucion'].'">'.$datos1['nombre_institucion'].'</option>';
}
?>
</select>
Igual en este select no estas filtrando por el usuario que inicia sesion el mismo inconveniente de mas arriba
eso es todo lo q utilizo ademas del codigo de como inicio sesion el usuario q lo puse al principio