Ver Mensaje Individual
  #10 (permalink)  
Antiguo 23/03/2010, 12:34
idjar
 
Fecha de Ingreso: febrero-2010
Mensajes: 86
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Pregunta!!!sobre select concatenado

Cita:
Iniciado por Carxl Ver Mensaje
Bueno al parecer no estás aplicando exactamente el código como te lo puse, mira las diferencias entre " y ', y mira como las uso para que tú la apliques igual. Resulta que si son campos varchar debes usar el valor entre comilas simples.

Saludos
mira la verdad quero que me entiendas bien y asi puedas ayudarme!
Código PHP:
$numero = (!empty($_POST["numero"])
                ? 
" numero_normativa=".trim($_POST["numero"])
                : 
"");
 
                
$normativa = (!empty($_POST['normativa'])
                ? (!empty(
$numero
                ? 
'AND tipo_normativa='.trim($_POST['normativa'])
                : 
'tipo_normativa='.trim($_POST['normativa']))
                : 
'');
     
                
$ministerio = (!empty($_POST['ministerio'])
                ? (!empty(
$numero) || !empty($normativa)
                ? 
'AND nombre_ministerio ='.trim($_POST['ministerio'])
                : 
'nombre_ministerio ='.trim($_POST['ministerio']))
                : 
'');
 
                
$materia = (!empty($_POST['materia'])
                ? (!empty(
$numero) || !empty($normativa) || !empty($ministerio)
                ? 
' AND nombre_materia ='.trim($_POST['materia'])
                : 
' nombre_materia ='.trim($_POST['materia']))
                : 
'');
 
                
$amb = (!empty($_POST['amb'])
                ? (!empty(
$numero) || !empty($normativa) || !empty($ministerio) || !empty($materia)
                ? 
' AND nombre_amb='.trim($_POST['amb'])
                : 
' nombre_amb='.trim($_POST['amb']))
                : 
'');
 
                
$where = (!empty($numero) || !empty($normativa) || !empty($ministerio) || !empty($materia) || !empty($amb
                ? 
" WHERE "
                
'');
                
                echo 
$normativa.'<br>';
                echo 
$where.'<br>';
                
                
$result =mysql_query("SELECT * FROM normativa"  
                
$where
                
$numero 
                
$normativa
                
$ministerio
                
$materia
                
$amb); 
            
//$query = mysql_query($s) or die(mysql_error());
            
echo $result;                        
                if (!
$result
                    {
                        echo 
"No se ha podido ejecutar correctamente la consulta: " mysql_error();
                        exit;
                    }

                if (
mysql_num_rows($result) == 0
                    {
                        echo 
"No hay registros encontrados";
                        exit;
                    }
            
?> 

mira ese es el select completo ahora veras la vase


CREATE TABLE IF NOT EXISTS `normativa` (
`id_normativa` int(10) NOT NULL AUTO_INCREMENT,
`nombre_normativa` varchar(50) NOT NULL,
`numero_normativa` int(10) NOT NULL,
`tipo_normativa` varchar(50) NOT NULL,
`nombre_amb` varchar(50) NOT NULL,
`nombre_materia` varchar(50) NOT NULL,
`nombre_ministerio` varchar(50) NOT NULL,
`resumen_normativa` mediumtext NOT NULL,
`normativa` longtext NOT NULL,
`ultima_modificacion` mediumtext NOT NULL,
`ultima_fecha_modificacion` date NOT NULL,
`cheq_list` int(10) NOT NULL,
PRIMARY KEY (`id_normativa`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=39 ;


podrias indicarme que esta mal solo con una para que funcione yo la replico con las demas plis!!!