Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Paginacion + Ajax

Estas en el tema de Paginacion + Ajax en el foro de Frameworks JS en Foros del Web. A ver si alguien me puede echar una mano, con este que tiene tela. Tengo una aplicación que carga una serie de datos paginándolos, a ...
  #1 (permalink)  
Antiguo 17/12/2007, 15:41
 
Fecha de Ingreso: junio-2007
Mensajes: 10
Antigüedad: 17 años, 5 meses
Puntos: 0
Paginacion + Ajax

A ver si alguien me puede echar una mano, con este que tiene tela. Tengo una aplicación que carga una serie de datos paginándolos, a continuación se proporciona la posibilidad de insertar un nuevo dato. Mi idea es que, el dato se inserte y a continuación se actualice los datos que estamos observando.

El problema: Al actualizar un dato, y recarga los datos, me devuelve al inicio de la paginación, y lo que es más extraño me cambia todos los enlaces de paginación. Para comprender un poco mejor mi caso, os expongo el código a continuación.

prueba.php
Código PHP:
<? include('../identificacion/fun1.php'); 
identificacion();
es_admin();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>Posteo de quejas</title>
<link href="../css/pagination.css" rel="stylesheet" type="text/css" />
</head>
<body> 
<div id="formulario" style="display:none;">
</div>
<div id="resultado"><?php include('tramite.php');?></div>
<p><a href="../menu.php">Volver Al menu</a></p>
</body>
</html>
tramite.php
Código PHP:
<?

require('../comp/conexion.php');
$user=$_SESSION["usuario"];
echo 
"<p>HUECAS</p>";
$_pagi_sql="SELECT * from huecas";
$_pagi_cuantos 10;
$_pagi_nav_num_enlaces=5;
$_pagi_nav_anterior="◄";
$_pagi_nav_siguiente="►";
$_pagi_nav_primera="1";
$_pagi_separador="";
include(
"../otros/paginator.inc.php");
$_pagi_nav_ultima=$_pagi_totalPags;

if (
mysql_num_rows($_pagi_result)){ 
     echo 
"<table border = '1' align='center' > "
     echo 
"<tr bgcolor='#FFFFFF'> \n";
     echo  
'<th colspan="2" scope="col">ACCION</th> ';
     echo  
'<th scope="col">PALABRA</th> ';
     echo 
"</tr> \n"
    
    while (
$registro mysql_fetch_array($_pagi_result)) { // comienza un bucle que leera todos los registros y ejecutara las ordenes que siguen
        
$cate$registro['categoria'] ;
        
$id=$registro['id'] ;
        
        echo 
"<tr> \n";
    
        echo 
'<th scope="row"><img src="../img/borrar.png" /></th> ';

        echo 
"<td align='center' ><a style=\"text-decoration:underline;cursor:pointer;\" onclick=\"pedirDatos('".$registro['palabras']."')\"><img src='../img/editar.png' /></a></td> "
    
        echo  
"<td align='center' >" $registro['palabras'] . "</td> \n"

        echo 
"</tr> \n";
        
    } 
// fin del bucle de ordenes
    
    
echo "</table> \n"
    echo
"<div class='pagination'><p align='center'>".$_pagi_navegacion."</p></div>";
    
mysql_free_result($_pagi_result); // libera los registros de la tabla
}
else{
  echo 
"¡ No se ha encontrado ningún registro !";
}

require(
'../comp/terminar.php');
?>
ajax.js
Código:
function objetoAjax(){
	var xmlhttp=false;
	try {
		xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	} catch (e) {
		try {
		   xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (E) {
			xmlhttp = false;
  		}
	}

	if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
		xmlhttp = new XMLHttpRequest();
	}
	return xmlhttp;
}

function enviarDatosEmpleado(){
	//donde se mostrará lo resultados
	divResultado = document.getElementById('resultado');
	divFormulario = document.getElementById('formulario');
	//valores de los inputs
	antigua=document.frmempleado.antigua.value;
	nueva=document.frmempleado.nueva.value;
	
	//instanciamos el objetoAjax
	ajax=objetoAjax();
	//usando del medoto POST
	//archivo que realizará la operacion
	//actualizacion.php
	ajax.open("POST", "../otros/actualizacion.php",true);
	ajax.onreadystatechange=function() {
		if (ajax.readyState==4) {
			//mostrar los nuevos registros en esta capa
			divResultado.innerHTML = ajax.responseText
			//mostrar un mensaje de actualizacion correcta
			divFormulario.innerHTML = "<p>La actualizaci&oacute;n se realiz&oacute; correctamente</p>";
			
		}
	}
	//muy importante este encabezado ya que hacemos uso de un formulario
	ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	//enviando los valores
	ajax.send("nueva="+nueva+"&antigua="+antigua)
}

function pedirDatos(palabra){
	//donde se mostrará el formulario con los datos
	divFormulario = document.getElementById('formulario');
	
	
	//instanciamos el objetoAjax
	ajax=objetoAjax();
	//uso del medotod GET
	ajax.open("POST", "../otros/consulta_por_id.php");
	ajax.onreadystatechange=function() {
		if (ajax.readyState==4) {
			//mostrar resultados en esta capa
			divFormulario.innerHTML = ajax.responseText
			//mostrar el formulario
			divFormulario.style.display="block";
			
		}
	}
	//como hacemos uso del metodo GET
	//colocamos null
	ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	//enviando los valores
	ajax.send("palabra="+palabra)
}

function nuevaPalabra(){
	//donde se mostrará lo resultados
	divResultado = document.getElementById('resultado');
		divFormulario = document.getElementById('formulario');

	//valores de los inputs
	nueva_p=document.nueva_palabra.nueva.value;
	
	//instanciamos el objetoAjax
	ajax=objetoAjax();
	//usando del medoto POST
	//archivo que realizará la operacion
	//actualizacion.php
	ajax.open("POST", "../otros/nueva_hueca.php",true);
	ajax.onreadystatechange=function() {
		if (ajax.readyState==4) {
			//mostrar los nuevos registros en esta capa
			divResultado.innerHTML = ajax.responseText
			//mostrar un mensaje de actualizacion correcta
			divFormulario.innerHTML = "<p>Insertada correctamente</p>";
			
		}
	}
	//muy importante este encabezado ya que hacemos uso de un formulario
	ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	//enviando los valores
	ajax.send("nueva_p="+nueva_p)
}
consulta_por_id.php
Código PHP:
<?php
$antigua
=$_POST['palabra'];
//muestra los datos consultados en los campos del formulario
?>

<form name="frmempleado" action="" 
onsubmit="enviarDatosEmpleado(); return false">
    <input name="antigua" type="hidden" value="<?php echo $antigua?>" />
  <p>Palabra a modificar 
    <input name="nueva" type="text" value="<?php echo trim($antigua); ?>" />
  </p>
  <p>
    <input type="submit" name="Submit" value="Actualizar" />
  </p>
</form>
y actualizacion.php
Código PHP:
<?php
    
        
//Configuracion de la conexion a base de datos
require('../comp/conexion.php');

//variables POST
$nueva=$_POST['nueva'];
$nuevafiltro1($nueva);
$antigua=$_POST['antigua'];
$nueva =  " ".$nueva." ";

//actualiza los datos del empleados
$sql="UPDATE huecas SET palabras='$nueva' WHERE palabras='$antigua'";

mysql_query($sql,$con);

require(
'../comp/terminar.php');

include(
'../otros/tramite.php');

?>
Nota: El proyecto, funciona, si os da algun error es que he copiado mal todo el toxo, el problema esta entorno al innerHTML, pero no consigo solucionarlo.

Por favor ayuda!!!!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:05.