Ir al contenido


Foto

Problema con array o while tratando de trabajar con xajax


  • Por favor identifícate para responder
2 respuestas en este tema

#1 jooz

jooz

    Member

  • Miembros
  • PipPip
  • 45 mensajes

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.....

<?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>

  • 0

#2 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.419 mensajes
  • LocationRepública Dominicana

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();
?>

  • 0

#3 jooz

jooz

    Member

  • Miembros
  • PipPip
  • 45 mensajes

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

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....
  • 0




IP.Board spam blocked by CleanTalk.