<?php
require ('../xajax/xajax_core/xajax.inc.php');
require ('conexion.php');
$xajax = new xajax();
// inicia funcion
function procesa_form($form_entrada)
{ //validación
$vclave = "".$form_entrada["vclave"]."";
$busq = "".$form_entrada["Buscar"]."";
$opt = "".$form_entrada["opt"]."";
if ($busq==""){
$salida .= "<table border='0' align='center' >";
$salida .= "<tr bordercolorlight='#00CC00' >";
$salida .= "<td align='center'><h2>campo de busqueda no puede estar vacio</h2></td>";
$salida .= "</tr>";
$salida .= "</table>";
$respuesta = new xajaxResponse();
$respuesta->assign("mensaje","innerHTML",$salida);
return $respuesta;
} else {
//$sql= "Select * from Dpersonales where ".$vclave." ".$opt." ".$busq." ";
$sql= "Select * from Dpersonales";
$consulta=mysql_query($sql);
$salida = "$sql";
while($row = mysql_fetch_array($consulta)){
$salida .= "<table border='1' align='center' >";
$salida .= "<tr>";
$salida .= "<td align='center'>Cedula</td>";
$salida .= "<td align='center'>Apellidos</td>";
$salida .= "<td align='center'>Nombres</td>";
$salida .= "<td align='center'>Periodo</td>";
$salida .= "<td align='center'>Ambiente</td>";
$salida .= "</tr>";
$salida .= "<tr>";
$salida .= "<td align='center'>" .$row["Cedula"]."</td>";
$salida .= "<td align='center'>" .$row["Apellidos"]."</td>";
$salida .= "<td align='center'>" .$row["Nombres"]."</td>";
$salida .= "<td align='center'>" .$row["Periodo"]."</td>";
$salida .= "<td align='center'>" .$row["Ambiente"]."</td>";
$salida .= "</tr>";
$salida .= "</table>";
$salida .= "<br>";
$respuesta = new xajaxResponse();
$respuesta->assign("mensaje","innerHTML",$salida);
return $respuesta; }
}}// termia funcion
$xajax->registerFunction("procesa_form");
$xajax->processRequest();
?>
<html>
<head> <title>Listado</title>
<?php $xajax-> printJavascript("../xajax"); ?>
</head>
<body>
<div id="mensaje1" align="center"></div>
<h1 align="center">datos a listar</h1>
<div id="divform" align="center">
<form id="form">
<select id="vclave" name="vclave">
<option value="Cedula">Cedula</option>
<option value="Nombres">Nombres</option>
<option value="Apellidos">Apellidos</option>
<option value="Periodo">Periodo</option>
</select>
<select id="opt" name="opt">
<option value="=">=</option>
<option value="IN">IN</option>
<option value="LIKE">LIKE</option>
</select>
<input type="text" placeholder="Busqueda" name="Buscar"/>
<input type="button" value="Buscar" onclick="xajax_procesa_form(xajax.getFormValues('form'))"/> <br>
</form>
</div>
<div id="mensaje" align="center" > </div>
</body>
</html>

Problema con array o while tratando de trabajar con xajax
Comenzado por
jooz
, ene 08 2012 08:31
2 respuestas en este tema
#1
Escrito 08 enero 2012 - 08:31
hola buenas noches.... estoy comnzando con la programacion y estoy aprendiendo a usar xajax pero tengo un problema y no se si es el array o el while, la cosa es que solo me muestra un registro traido de la bd y no los mas o menos 130 registros que hay... les coloco el codigo para que lo revisen y cuenten que puede estar fallando...... desde gracias por compartir conmigo sus conocimientos tan valiosos para los que comenzamos en este apreciado rol.....
#2
Escrito 10 enero 2012 - 09:53
Prueba con estos cambios:
<?php
require ('../xajax/xajax_core/xajax.inc.php');
require ('conexion.php');
$xajax = new xajax();
// inicia funcion
function procesa_form($form_entrada)
{ //validación
$vclave = "".$form_entrada["vclave"]."";
$busq = "".$form_entrada["Buscar"]."";
$opt = "".$form_entrada["opt"]."";
if ($busq=="")
{
$salida .= "<table border='0' align='center' >";
$salida .= "<tr bordercolorlight='#00CC00' >";
$salida .= "<td align='center'><h2>campo de busqueda no puede estar vacio</h2></td>";
$salida .= "</tr>";
$salida .= "</table>";
$respuesta = new xajaxResponse();
$respuesta->assign("mensaje","innerHTML",$salida);
return $respuesta;
} else {
//$sql= "Select * from Dpersonales where ".$vclave." ".$opt." ".$busq." ";
$sql= "Select * from Dpersonales";
$consulta=mysql_query($sql);
$salida = "$sql";
while($row = mysql_fetch_array($consulta))
{
$salida .= "<table border='1' align='center' >";
$salida .= "<tr>";
$salida .= "<td align='center'>Cedula</td>";
$salida .= "<td align='center'>Apellidos</td>";
$salida .= "<td align='center'>Nombres</td>";
$salida .= "<td align='center'>Periodo</td>";
$salida .= "<td align='center'>Ambiente</td>";
$salida .= "</tr>";
$salida .= "<tr>";
$salida .= "<td align='center'>" .$row["Cedula"]."</td>";
$salida .= "<td align='center'>" .$row["Apellidos"]."</td>";
$salida .= "<td align='center'>" .$row["Nombres"]."</td>";
$salida .= "<td align='center'>" .$row["Periodo"]."</td>";
$salida .= "<td align='center'>" .$row["Ambiente"]."</td>";
$salida .= "</tr>";
$salida .= "</table>";
$salida .= "<br />";
} //while
$respuesta = new xajaxResponse();
$respuesta->assign("mensaje","innerHTML",$salida);
return $respuesta;
} //else
} //function
$xajax->registerFunction("procesa_form");
$xajax->processRequest();
?>
#3
Escrito 10 enero 2012 - 06:53
gracias enecumene por responder
te comento que el problema no era el array ni el while sino que tenia en la base de datos ciertos datos con ñ y nombres con tildes tube que remplazarlos y asi funciono tambien hice un camio con el while ya que dsde me creaba una tabla por cada registro quedando asi
ahora me gustaria saber como hacer para que me mostrara toda la lista entrar y despues yo ir filtrando segun sea el caso....
te comento que el problema no era el array ni el while sino que tenia en la base de datos ciertos datos con ñ y nombres con tildes tube que remplazarlos y asi funciono tambien hice un camio con el while ya que dsde me creaba una tabla por cada registro quedando asi
while($row = mysql_fetch_array($consulta))
{
$salida .= "<tr>";
$salida .= "<td align='center'>" .$row["Cedula" ] ."</td>";
$salida .= "<td align='center'>" .$row["Apellidos"]."</td>";
$salida .= "<td align='center'>" .$row["Nombres"]."</td>";
$salida .= "<td align='center'>" .$row["Periodo"]."</td>";
$salida .= "<td align='center'>" .$row["Ambiente"]."</td>";
$salida .= "</tr>";
}// while
ahora me gustaria saber como hacer para que me mostrara toda la lista entrar y despues yo ir filtrando segun sea el caso....