Saludos, tengo una función en javascript que sirve para paginar resultados de una consulta a base de datos, la tengo en una pagina cursos_index.php el cual recibe la variable especialidadId por medio de url.
Código PHP:
Ver originalESPECIALIDAD
<BR/>
<?php
$especialidadId=$_GET['especialidadId'];
echo $especialidadId;
$sql="select especialidadNombre from especialidad, tematicas where especialidad.especialidadId='".$especialidadId."' and tematicas.especialidadId=especialidad.especialidadId";
$nombre=$data['especialidadNombre'];
echo $nombre;
?>
este es el javascript
Código Javascript
:
Ver original<html lang="es">
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<title>Jose Aguilar - Paginación de resultados con jQuery, Ajax y PHP</title>
<link type="text/css" href="css/styles.css" rel="stylesheet" />
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('.paginate').live('click', function(){
$('#content').html('<div class="loading"><img src="images/loading.gif" width="70px" height="70px"/></div>');
var page = $(this).attr('data');
var dataString = 'page='+page;
$.ajax({
type: "GET",
url: "includes/pagination.php",
data: dataString,
success: function(data) {
$('#content').fadeIn(1000).html(data);
}
});
});
});
</script>
</head>
<body>
<div id="central">
<div class="service_category">Artículos</div>
<div id="content">
<?php require('includes/pagination.php'); ?></div>
</div>
</body>
</html>
como ven requiere a pagination.php que es este:
Código PHP:
Ver original<?php
define('DB_SERVER', 'localhost'); define('DB_SERVER_USERNAME', 'root'); define('DB_SERVER_PASSWORD', ''); define('DB_DATABASE', 'ambientevirtual');
$conexion = mysql_connect(DB_SERVER
, DB_SERVER_USERNAME
, DB_SERVER_PASSWORD
);
[I]@$especialidadId=2;[/I]
$query_num_services = mysql_query("select especialidadNombre from especialidad, tematicas where especialidad.especialidadId='".$especialidadId."' and tematicas.especialidadId=especialidad.especialidadId", @$conexion);
//Si hay registros
if ($num_total_registros > 0) {
//numero de registros por página
$rowsPerPage = 3;
//por defecto mostramos la página 1
$pageNum = 1;
// si $_GET['page'] esta definido, usamos este número de página
if(isset($_GET['page'])) { $pageNum = $_GET['page'];
}
//echo 'page'.$_GET['page'];
//contando el desplazamiento
$offset = ($pageNum - 1) * $rowsPerPage;
$total_paginas = ceil($num_total_registros / $rowsPerPage);
$query_services = mysql_query("SELECT tematicaNombre, materialDescripcion, tematicasDescripcion, tematicas.especialidadId, docenteId FROM tematicas, especialidad WHERE especialidad.especialidadId= '".$especialidadId."' and tematicas.especialidadId=especialidad.especialidadId ORDER BY tematicas.tematicasId ASC LIMIT $offset, $rowsPerPage"); //$service = new Service($row_services['service_id']);
$descripcion_desformateada = strip_tags($row_services['tematicasDescripcion']); $arrayTexto = split(' ',$descripcion_desformateada); $texto = '';
$contador = 0;
// Reconstruimos la cadena
$texto .= ' '.$arrayTexto[$contador];
$contador++;
$p_desc = $texto.'...<br>';
echo '
<div class="service_list" id="service'.$row_services['materialDescripcion'].'" data="'.$row_services['materialDescripcion'].'">
<div class="center_block">
<a title="'.$row_services['tematicaNombre'].'" class="product_img_link" href="#">
<img width="129" height="129" alt="'.$row_services['tematicaNombre'].'" src="../../../images/services/no-picture.jpg"></a>
<h3><a title="'.$row_services['tematicaNombre'].'" href="#">'.$row_services['tematicaNombre'].'</a></h3>
<p class="product_desc">'.$p_desc.'</p>';
echo '<div class="rating" id="rating'.$row_services['tematicasDescripcion'].'" data="'.$row_services['tematicasDescripcion'].'">';
echo '<div id="sumrating" data="<?=$sum_ratings?>" style="display:none"> </div>
<div id="numrating" data="<?=$num_ratings?>" style="display:none"> </div>
<div id="actual" data="<?=$rating?>" style="display:none;"> </div>
<div class="ok" style="display:none;"> </div>
</div>
</div>
</div>';
}
if ($total_paginas > 1) {
echo '<div class="pagination">';
echo '<ul>';
if ($pageNum != 1)
echo '<li><a class="paginate" data="'.($pageNum-1).'">Anterior</a></li>';
for ($i=1;$i<=$total_paginas;$i++) {
if ($pageNum == $i)
//si muestro el índice de la página actual, no coloco enlace
echo '<li class="active"><a>'.$i.'</a></li>';
else
//si el índice no corresponde con la página mostrada actualmente,
//coloco el enlace para ir a esa página
echo '<li><a class="paginate" data="'.$i.'">'.$i.'</a></li>';
}
if ($pageNum != $total_paginas)
echo '<li><a class="paginate" data="'.($pageNum+1).'">Siguiente</a></li>';
echo '</ul>';
echo '</div>';
}
}
la cuestión es que pagination.php tiene una variable espedialidadId (en cursiva) la cual debe ser traida desde la pagina donde esta el javascript (cursos.index.php), actualmente la tengo definida constante para ensayar, pero la idea es que tome el valor que inicialmente se envió por url desde el index.
Por favor ayúdenme a corregir ese error.