Foros del Web » Programando para Internet » PHP »

Problemas con Paginator al eliminar

Estas en el tema de Problemas con Paginator al eliminar en el foro de PHP en Foros del Web. hola a todos los que participan en este excelente foro , mi duda surge estoy usando paginator de jpinedo pero a la hora de eliminar ...
  #1 (permalink)  
Antiguo 28/04/2011, 12:46
 
Fecha de Ingreso: enero-2011
Ubicación: /root
Mensajes: 530
Antigüedad: 13 años, 3 meses
Puntos: 61
Problemas con Paginator al eliminar

hola a todos los que participan en este excelente foro , mi duda surge estoy usando paginator de jpinedo pero a la hora de eliminar registros debo actualizar la pagina para que me muestre el dato eliminado pongo mi codigo haber si alguien me puede corregir en que estoy mal

<div id="div-regForm" style="width:600px">
<div class="form-title">Lista de Clientes</div><br><br>

<?php
//Sentencia sql (sin limit)
$_pagi_sql = "SELECT * FROM tb_clientes ORDER BY nombrecliente";

//cantidad de resultados por página
$_pagi_cuantos = 10;

//Incluimos el script de paginación. Éste ya ejecuta la consulta automáticamente
include("../include/paginator.inc.php");

//Leer y escribir los registros de la página actual
echo '<table width="100%">';
echo '<tr><td width="300"><b>Clientes</b></td>';
echo '<td width="300"><b>Acci&oacute;n</b></td></tr>';

while($row = mysql_fetch_array($_pagi_result)){
echo '<tr>';
echo '<td>'.strtoupper($row['nombrecliente']).'</td>';
$idcliente = $row["idcliente"];
echo '<td><a href="index.php?opcion=actualizarcliente&idcliente ='.$idcliente.'">Editar&nbsp;<img src="../imagenes/ico_editar.png" border="0" alt="Editar"></a>&nbsp;';
echo '<a href="index.php?opcion=clientes&accion=del&idclien te='.$idcliente.'">Eliminar&nbsp;<img src="../imagenes/ico_eliminar.png" border="0" alt="Eliminar"></a></td>';

}
echo "</tr></table>";

//Incluimos la barra de navegación
echo"<p>".$_pagi_navegacion."</p>";
echo"<p>Mostrando Clientes ".$_pagi_info."</p>";


switch ($_GET['accion']) {

case del:

if ($idcliente == NULL){
echo 'No se ha seleccionado un Cliente';
} else {
mysql_query("DELETE FROM tb_clientes WHERE idcliente=".$_GET["idcliente"]."") or die (mysql_error());

if(mysql_affected_rows($connect)){
$contarok = mysql_query("SELECT * FROM tb_clientes");
$total_records = mysql_num_rows($contarok);
//$pages = intval($total_records / 10);
echo "Dato eliminado correctamente";
header("Location:index.php?opcion=clientes");
} else {
echo "Error eliminando Cliente";
}
}

break;


}//cierra switch

?>
</div>

Saludos , espero puedan ayudarme .
  #2 (permalink)  
Antiguo 28/04/2011, 14:32
 
Fecha de Ingreso: diciembre-2008
Mensajes: 31
Antigüedad: 15 años, 4 meses
Puntos: 2
Respuesta: Problemas con Paginator al eliminar

No entendi bien... hay error al Eliminar el registro de la base de datos? o para que muestre el nombre del registro eliminado luego de haberla borrado de la base de datos? o ambos?
  #3 (permalink)  
Antiguo 28/04/2011, 14:35
 
Fecha de Ingreso: enero-2011
Ubicación: /root
Mensajes: 530
Antigüedad: 13 años, 3 meses
Puntos: 61
Respuesta: Problemas con Paginator al eliminar

Juveitor:

el registro efectivamente me lo borra de la base de datos , pero debo actualizar la pagina para que me muestre el dato borrado hice una modificacion espero sea mas facil de entender .

switch ($_GET['accion']) {

case del:

if ($idcliente == NULL){
echo 'No se ha seleccionado un Cliente';
} else {
mysql_query("DELETE FROM tb_clientes WHERE idcliente=".$_GET["idcliente"]."") or die (mysql_error());
header("Location:index.php?opcion=clientes");
}

break;
}//cierra switch

saludos
  #4 (permalink)  
Antiguo 28/04/2011, 15:13
 
Fecha de Ingreso: diciembre-2008
Mensajes: 31
Antigüedad: 15 años, 4 meses
Puntos: 2
Respuesta: Problemas con Paginator al eliminar

Hola Matt, no soy gran experto en PHP, pero... si no hay problema con el borrado del registro en la base de datos.. pues habria muchas formas de mostrar en un echo la confirmacion de del borrado de tal registro...

pero en header el archivo index.php y la variable opcion=clientes deberia tener el:
echo ("Se borro el cliente".$_GET["idcliente"]);

creo que es asi o no? te faltaimprimir texto y el dato borrado...
perdon si sigo sin enteder
  #5 (permalink)  
Antiguo 28/04/2011, 15:21
 
Fecha de Ingreso: enero-2011
Ubicación: /root
Mensajes: 530
Antigüedad: 13 años, 3 meses
Puntos: 61
Respuesta: Problemas con Paginator al eliminar

Juveitor:

Lo que me falta es volver a al registro anterior al que borre por ej si ese registro esta en la pagina 1 que vuelva a esa pagina , si borro un registro de la pagina 2 que vuelva a esa , espero haber sido mas claro .

Saludos y gracias por tomarte el tiempo en responder a mis consultas .
  #6 (permalink)  
Antiguo 28/04/2011, 15:45
 
Fecha de Ingreso: diciembre-2008
Mensajes: 31
Antigüedad: 15 años, 4 meses
Puntos: 2
Respuesta: Problemas con Paginator al eliminar

Matt quedo claro tu duda, yo sugeriria:

- JPinedo paginator tiene la variable $_pagi_actual.
- guardar $_pagi_actual en una sesion global por ejemplo: $_SESSION['ultima_pagina_visitada']=$_pagi_actual;

- y en cada actualizacion del archivo index.php comprobar si hay dato en la sesion:

if (empty($_SESSION['ultima_pagina_visitada'])){
$_pagi_actual = 1;// la primera pagina del paginacion de los resultados
}else{
// Si se "pidió" una página específica:
// La página actual será la que se pidió.
$_pagi_actual = $_SESSION['ultima_pagina_visitada'];
}


Bueno es una forma de hacerlo pero puedes adaptarlo...


ah y en el headar tendria que ir:

header("Location:index.php?opcion=clientes&pag=".$ _pagi_actual);

Última edición por Juveitor; 28/04/2011 a las 15:47 Razón: mas info
  #7 (permalink)  
Antiguo 28/04/2011, 15:50
 
Fecha de Ingreso: enero-2011
Ubicación: /root
Mensajes: 530
Antigüedad: 13 años, 3 meses
Puntos: 61
Respuesta: Problemas con Paginator al eliminar

Juveitor:

Exactamente esa era la duda que tenia , apenas pruebe la funcion que me indicas te cuento como me fue , gracias nuevamente .

Etiquetas: paginator
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 16:03.