1
C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más / Integrar Paginacion y filtros en PHP (paginado automático)
« en: 10 de Marzo 2015, 20:11 »
Hola, mucho gusto y antes que nada felicidades por el trabajo que realizan en el tema de programación,
Quisiera saber si me pueden sacar de un apuro y es que no he logrado el método de paginar este script:
"tabla.php"
js.js
en el index.php he insertado:
Todo sale muy bien me da los resultados y el filtro si se aplica correctamente el tema es que la paginación no funciona adecuadamente.
Por lo que reitero la solicitud de tu apoyo.
Agradeciéndote infinitamente
Saludos De México
Quisiera saber si me pueden sacar de un apuro y es que no he logrado el método de paginar este script:
"tabla.php"
Código: [Seleccionar]
<?php
$hostname = "******";
$database = "*******";
$username = "****";
$password = "******";
$cliente = "*******";
$proyecto = "********";
$Conn = mysql_connect($hostname, $username, $password)or die("Error de conexion!");
mysql_select_db($database, $Conn);
if($_GET['action'] == 'listar')
{
$vpro = $_POST['Proyecto'];
$vtem = $_POST['Tickets_Emitidos'];
$vtco = $_POST['Tickets_Cobrados'];
$vttc = $_POST['Importe_Total_Cobrado'];
$vtcr = $_POST['Tickets_Cortesia'];
$vtpr = $_POST['Ticket_Promedio'];
$vdel = ($_POST['del'] != '' ) ? explode("/",$_POST['del']) : '';
$val = ($_POST['al'] != '' ) ? explode("/",$_POST['al']) : '';
$sql = "SELECT Codigo_de_Sistema, Proyecto, Fecha_de_operacion_Inicio, Fecha_de_operacion_Fin, Tickets_Emitidos, Tickets_Cobrados, CONCAT('$',round(Importe_Total_Cobrado,2))Importe_Total_Cobrado, Tickets_Cortesia, CONCAT('$',round(Ticket_Promedio,2)) Ticket_Promedio FROM $cliente WHERE Fecha_de_operacion_Inicio";
$sql .= ($vpro != '') ? " AND Proyecto LIKE '%$vpro%'" : "";
$sql .= ($vfoi != '') ? " AND Fecha_de_operacion_Inicio LIKE '%$vfoi%'" : "";
$sql .= ($vtem != '') ? " AND Tickets_Emitidos LIKE '%$vtem%'" : "";
$sql .= ($vtco != '') ? " AND Tickets_Cobrados LIKE '%$vtco%'" : "";
$sql .= ($vttc != '') ? " AND Importe_Total_Cobrado LIKE '%$vttc%'" : "";
$sql .= ($vtcr != '') ? " AND Tickets_Cortesia LIKE '%$vtcr%'" : "";
$sql .= ($vtpr != '') ? " AND Ticket_Promedio LIKE '%$vtpr%'" : "";
$sql .= ($vdel && $val) ? " AND Fecha_de_operacion_Inicio BETWEEN '$vdel[2]-$vdel[1]-$vdel[0]' AND '$val[2]-$val[1]-$val[0]'" : "";
$vorder = $_POST['orderby'];
if($vorder != ''){
$sql .= " ORDER BY ".$vorder;
}
$query = mysql_query($sql);
$datos = array();
while($row = mysql_fetch_array($query))
{
$datos[] = array(
'Codigo_de_Sistema' => $row['Codigo_de_Sistema'],
'Proyecto' => $row['Proyecto'],
'Fecha_de_operacion_Inicio' => $row['Fecha_de_operacion_Inicio'],
'Fecha_de_operacion_Fin' => $row['Fecha_de_operacion_Fin'],
'Tickets_Emitidos' => $row['Tickets_Emitidos'],
'Tickets_Cobrados' => $row['Tickets_Cobrados'],
'Importe_Total_Cobrado' => $row['Importe_Total_Cobrado'],
'Tickets_Cortesia' => $row['Tickets_Cortesia'],
'Ticket_Promedio' => $row['Ticket_Promedio']
);
}
echo json_encode($datos);
}
?>
js.js
Código: [Seleccionar]
// JavaScript Document
var ordenar = '';
$(document).ready(function(){
// Llamando a la funcion de busqueda al
// cargar la pagina
filtrar()
var dates = $( "#del, #al" ).datepicker({
yearRange: "-50",
defaultDate: "+1w",
changeMonth: true,
changeYear: true,
onSelect: function( selectedDate ) {
var option = this.id == "del" ? "minDate" : "maxDate",
instance = $( this ).data( "datepicker" ),
date = $.datepicker.parseDate(
instance.settings.dateFormat ||
$.datepicker._defaults.dateFormat,
selectedDate, instance.settings );
dates.not( this ).datepicker( "option", option, date );
}
});
// filtrar al darle click al boton
$("#btnfiltrar").click(function(){ filtrar() });
// boton cancelar
$("#btncancel").click(function(){
$(".filtro input").val('')
$(".filtro select").find("option[value='0']").attr("selected",true)
filtrar()
});
// ordenar por
$("#data th span").click(function(){
var orden = '';
if($(this).hasClass("desc"))
{
$("#data th span").removeClass("desc").removeClass("asc")
$(this).addClass("asc");
ordenar = "&orderby="+$(this).attr("title")+" asc"
}else
{
$("#data th span").removeClass("desc").removeClass("asc")
$(this).addClass("desc");
ordenar = "&orderby="+$(this).attr("title")+" desc"
}
filtrar()
});
});
function filtrar()
{
$.ajax({
data: $("#frm_filtro").serialize()+ordenar,
type: "POST",
dataType: "json",
url: "/Nueva_Pagina/Acosta_Verde/Resultados/Tabla_Resultados_Plaza las Torres Cd Juarez.php?action=listar",
success: function(data){
var html = '';
if(data.length > 0){
$.each(data, function(i,item){
html += '<tr>'
html += '<td>'+item.Fecha_de_operacion_Inicio+'</td>'
html += '<td>'+item.Proyecto+'</td>'
html += '<td>'+item.Tickets_Emitidos+'</td>'
html += '<td>'+item.Tickets_Cobrados+'</td>'
html += '<td>'+item.Importe_Total_Cobrado+'</td>'
html += '<td>'+item.Tickets_Cortesia+'</td>'
html += '<td>'+item.Ticket_Promedio+'</td>'
html += '</tr>';
});
}
if(html == '') html = '<tr><td colspan="7" align="center">No se encontraron registros..</td></tr>'
$("#data tbody").html(html);
}
});
}
en el index.php he insertado:
Código: [Seleccionar]
<table width="463" cellpadding="0" cellspacing="0" id="data">
<thead>
<tr>
<th width="15%"><div align="center"><span title="Fecha_de_operacion_Inicio">Fecha</span></div></th>
<th width="15%"><div align="center"><span title="Proyecto">Proyecto o Estacionamiento</span></div></th>
<th width="15%"><div align="center"><span title="Tickets_Emitidos">Tickets Emitidos</span></div></th>
<th width="15%"><div align="center"><span title="Tickets_Cobrados">Tickets Cobrados</span></div></th>
<th width="15%"><div align="center"><span title="Importe_Total_Cobrado">Importe Total Cobrado</span></div></th>
<th width="15%"><div align="center"><span title="Tickets_Cortesia">Tickets Cortesia</span></div></th>
<th width="15%"><div align="center"><span title="Ticket_Promedio">Ticket Promedio</span></div></th>
</tr>
</thead>
<tbody>
</tbody>
</table>
Todo sale muy bien me da los resultados y el filtro si se aplica correctamente el tema es que la paginación no funciona adecuadamente.
Por lo que reitero la solicitud de tu apoyo.
Agradeciéndote infinitamente
Saludos De México