Ver Mensaje Individual
  #20 (permalink)  
Antiguo 05/10/2012, 13:47
maxpower2008
 
Fecha de Ingreso: diciembre-2007
Mensajes: 427
Antigüedad: 16 años, 4 meses
Puntos: 35
Respuesta: Consulta SQL para validar Select con usuarios

Cita:
Iniciado por homerolovera07 Ver Mensaje
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