Autor
|
Tema: CONSULTA DE TABLAS POR FILTRADO DE TEXTO (Leído 3,793 veces)
|
smagno
Desconectado
Mensajes: 22
|
Estoy realizando una consulta generalizada por tablas. Bueno cuando entro por primera vez funciona haciendo la consulta, pero cuando presiono el boton buscar para hacer el filtrado. se pierden los datos iniciales lo mismo que las sessiones y me muestra el siguiente mensaje SELECT , FROM ORDER BY MySql Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' FROM ORDER BY' at line 1
disculpen el poco de echo ya que asi pude mirar el error. Que estoy haciendo mal??? Aqui esta el codigo.. <?php session_start(); $cTabla = trim($_GET['cTabla']); $cCampo1 = trim($_GET['cCampo1']); $cCampo2 = trim($_GET['cCampo2']); $cOrden = trim($_GET['cOrden']); $nCondi = trim($_GET['nCondi']); $cCondi = trim($_GET['cCondi']); $_SESSION['s_cTabla'] = $cTabla; echo 'Tabla: '.$cTabla.' Tabla session :'.$_SESSION['s_cTabla'];
if($cOrden=='N'){ $cOrden=$cCampo2;} else{ $cOrden=$cCampo1;}
$sql = "SELECT $cCampo1, $cCampo2 FROM $cTabla ORDER BY $cCampo2";
if (isset ($Buscar)) { //Si fue apretado el botón buscar echo "Select ".$_POST["selFiltro"]." "; echo "Text ".$_POST["txtFiltro"]." tabla session:".$_SESSION['s_cTabla']; $SelFiltro = trim($_POST['selFiltro']); $txtFiltro = trim($_POST['txtFiltro']); if ($SelFiltro == "N"){ $cOrder = $cCampo2; }else{ $cOrder = $cCampo1; } if ($txtFiltro==NULL){ if($SelFiltro == "N"){ $sql = "SELECT $cCampo1, $cCampo2 FROM $cTabla ORDER BY $cCampo2"; echo "pase por aqui"; }else{ $sql = "SELECT $cCampo1, $cCampo2 FROM $cTabla ORDER BY $cCampo1"; } }else{ if($SelFiltro == "N"){ $sql = "SELECT $cCampo1, $cCampo2 FROM $cTabla ORDER BY $cCampo2"; }else{ $sql = "SELECT $cCampo1, $cCampo2 FROM $cTabla ORDER BY $cCampo1"; } } echo "paso 2".$sql;
MostrarConsulta(); } ?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <head>
<title>.:: MAGNO ::. Buscar Datos</title> <link rel="shortcut icon" href="../img/magno.ico" type="image/x-icon" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <link href="../css/HeaderFr.css" rel="stylesheet" type="text/css" />
<script> function efecto(id,tip) { var col = '#3399FF' if(tip==2){col=""} var cel = document.getElementById(id) cel.style.backgroundColor=col } function llama(php) { document.location.href=php } </script> </head> <body> <form action="<?=$PHP_SELF?>" method="post" > <div> <table> <tr> <td style="width: 100px"> <table> <tr> <td style="width: 82px; height: 22px"> <select name="selFiltro"> <option value="N" selected> Nombre</option> <option value="C"> Codigo</option> </select> </td> <td style="width: 82px"> <input name="txtFiltro" type="text" font-names="Verdana" size="46px"> </td> <td style="width: 82px"><input type="submit" name="Buscar" value="Buscar" onClick=""></td> </tr> <tr> <td colspan="3" style="width: 50px" valign="top"> <div id="divGrid" class="Marco" style="overflow: auto; width: 456px; height: 400px">
<? MostrarConsulta() ?> </div> </td> </tr> </table> </td> </tr> </table> </div> </form> </body> </html> <? function MostrarConsulta(){ include_once("clases/funciones.class.php"); global $cTabla, $cCampo1, $cCampo2, $cOrden, $nCondi, $cCondi, $sql; $fun = new Funciones(); $fun->conecta(); $ali = array("left","left"); //alineacion $wid = array(90,290); //width $ico = array( array("edit.png","Click para Seleccionar o Editar",""), array("delete.png","Click para Eliminar","")); echo "paso 1".$sql; $res = $fun->consulta($sql); $fun->lista($res,$ali,$wid,$ico);
} ?>
Gracias de antemano.
|
|
|
En línea
|
|
|
|
DarkItachi
Desconectado
Mensajes: 516
Itachi Uchiha
|
Estoy realizando una consulta generalizada por tablas. Bueno cuando entro por primera vez funciona haciendo la consulta, pero cuando presiono el boton buscar para hacer el filtrado. se pierden los datos iniciales lo mismo que las sessiones y me muestra el siguiente mensaje SELECT , FROM ORDER BY MySql Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' FROM ORDER BY' at line 1
disculpen el poco de echo ya que asi pude mirar el error. Que estoy haciendo mal??? Aqui esta el codigo.. <?php session_start(); $cTabla = trim($_GET['cTabla']); $cCampo1 = trim($_GET['cCampo1']); $cCampo2 = trim($_GET['cCampo2']); $cOrden = trim($_GET['cOrden']); $nCondi = trim($_GET['nCondi']); $cCondi = trim($_GET['cCondi']); $_SESSION['s_cTabla'] = $cTabla; echo 'Tabla: '.$cTabla.' Tabla session :'.$_SESSION['s_cTabla'];
if($cOrden=='N'){ $cOrden=$cCampo2;} else{ $cOrden=$cCampo1;}
$sql = "SELECT $cCampo1, $cCampo2 FROM $cTabla ORDER BY $cCampo2";
if (isset ($Buscar)) { //Si fue apretado el botón buscar echo "Select ".$_POST["selFiltro"]." "; echo "Text ".$_POST["txtFiltro"]." tabla session:".$_SESSION['s_cTabla']; $SelFiltro = trim($_POST['selFiltro']); $txtFiltro = trim($_POST['txtFiltro']); if ($SelFiltro == "N"){ $cOrder = $cCampo2; }else{ $cOrder = $cCampo1; } if ($txtFiltro==NULL){ if($SelFiltro == "N"){ $sql = "SELECT $cCampo1, $cCampo2 FROM $cTabla ORDER BY $cCampo2"; echo "pase por aqui"; }else{ $sql = "SELECT $cCampo1, $cCampo2 FROM $cTabla ORDER BY $cCampo1"; } }else{ if($SelFiltro == "N"){ $sql = "SELECT $cCampo1, $cCampo2 FROM $cTabla ORDER BY $cCampo2"; }else{ $sql = "SELECT $cCampo1, $cCampo2 FROM $cTabla ORDER BY $cCampo1"; } } echo "paso 2".$sql;
MostrarConsulta(); } ?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <head>
<title>.:: MAGNO ::. Buscar Datos</title> <link rel="shortcut icon" href="../img/magno.ico" type="image/x-icon" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <link href="../css/HeaderFr.css" rel="stylesheet" type="text/css" />
<script> function efecto(id,tip) { var col = '#3399FF' if(tip==2){col=""} var cel = document.getElementById(id) cel.style.backgroundColor=col } function llama(php) { document.location.href=php } </script> </head> <body> <form action="<?=$PHP_SELF?>" method="post" > <div> <table> <tr> <td style="width: 100px"> <table> <tr> <td style="width: 82px; height: 22px"> <select name="selFiltro"> <option value="N" selected> Nombre</option> <option value="C"> Codigo</option> </select> </td> <td style="width: 82px"> <input name="txtFiltro" type="text" font-names="Verdana" size="46px"> </td> <td style="width: 82px"><input type="submit" name="Buscar" value="Buscar" onClick=""></td> </tr> <tr> <td colspan="3" style="width: 50px" valign="top"> <div id="divGrid" class="Marco" style="overflow: auto; width: 456px; height: 400px">
<? MostrarConsulta() ?> </div> </td> </tr> </table> </td> </tr> </table> </div> </form> </body> </html> <? function MostrarConsulta(){ include_once("clases/funciones.class.php"); global $cTabla, $cCampo1, $cCampo2, $cOrden, $nCondi, $cCondi, $sql; $fun = new Funciones(); $fun->conecta(); $ali = array("left","left"); //alineacion $wid = array(90,290); //width $ico = array( array("edit.png","Click para Seleccionar o Editar",""), array("delete.png","Click para Eliminar","")); echo "paso 1".$sql; $res = $fun->consulta($sql); $fun->lista($res,$ali,$wid,$ico);
} ?>
Gracias de antemano. Para mí que no recibes bien las variables. $cTabla = trim($_GET['cTabla']); $cCampo1 = trim($_GET['cCampo1']); $cCampo2 = trim($_GET['cCampo2']); $cOrden = trim($_GET['cOrden']); $nCondi = trim($_GET['nCondi']); $cCondi = trim($_GET['cCondi']); $_SESSION['s_cTabla'] = $cTabla;
Si las variables estuviesen vacías el resultado sería el que da el error.
|
|
|
En línea
|
Come to me when you have these eyes...
By more that you try it, a feather never will achieve to fly.
|
|
|
smagno
Desconectado
Mensajes: 22
|
DarkItachi,
Si las recibo bien por que el inicialmente el me hace la consulta bien pero cuando voy hacer un filtrado y presiono buscar se pierde el contenido de las variables.
|
|
« Última modificación: 27 Octubre 2009, 01:18 am por smagno »
|
En línea
|
|
|
|
DarkItachi
Desconectado
Mensajes: 516
Itachi Uchiha
|
KarkItachi Arghhh eso dolió.... inicial mente Aghh eso dolió aún más! Prueba sin la función trim() a ver.
|
|
|
En línea
|
Come to me when you have these eyes...
By more that you try it, a feather never will achieve to fly.
|
|
|
Mr. Crowley
Desconectado
Mensajes: 343
Costa Rica
|
Hola, no he leido mucho el codigo... pero OJO aqui: function MostrarConsulta() Por lo que veo es una funcion PHP... <div id="divGrid" class="Marco" style="overflow: auto; width: 456px; height: 400px"> <? MostrarConsulta() ?> </div>
Esta confundiendo javascript con PHP... la funcion que llama en esa capa debe ser la de javascript... poque seria Ajax quien hace la consulta y luego trae el resultado a la capa divGrid. Como le digo, no he leido el codigo... pero el error debe de estar ahi
|
|
|
En línea
|
|
|
|
smagno
Desconectado
Mensajes: 22
|
Mr. Crowley
MostrarConsulta() si es una funcion php inicialmente si me realiza la consulta pero cuando presiono el boton buscar en el post se pierde todo el contenido de las variables lo mismo que las variables de session [$cTabla, $cCampo1, $cCampo2, $cOrden, $nCondi, $cCondi] quedan en blanco.
Aprovecho y te comento ya realizo el popup de la ventana para hacer la busqueda de la consulta perfectamente.
Ahora se me presenta este problema no encuentro forma para solucionarlo.
!!! AMIGO CROWLEY NO SE ME PIERDA YA QUE UD. A SIDO UNA AYUDA MUY IMPORTANTE !!!
Agradeciendole de antemano.
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
consulta para muestra con 2 tablas
Bases de Datos
|
maxmag
|
0
|
2,410
|
4 Julio 2012, 05:43 am
por maxmag
|
|
|
consulta msql en tablas con campos ID
Dudas Generales
|
yosoytusol
|
5
|
3,375
|
30 Agosto 2014, 10:04 am
por Markul
|
|
|
Consulta de multiples tablas de mysql
Bases de Datos
|
soy_nicanor
|
4
|
4,666
|
17 Mayo 2015, 06:28 am
por ZeroVzla
|
|
|
Filtrado de texto en Linux
GNU/Linux
|
MasterAndHack
|
1
|
1,782
|
6 Enero 2016, 16:26 pm
por MasterAndHack
|
|
|
consulta a estas tablas en mysql
Desarrollo Web
|
elmatador2
|
1
|
2,067
|
14 Julio 2016, 16:02 pm
por soyloqbuskas
|
|