Foros del Web » Programando para Internet » PHP »

pagina De registros Duda

Estas en el tema de pagina De registros Duda en el foro de PHP en Foros del Web. Hola El siguiente codigo que voy a mostrar tiene un problema de orden. lo que hace es crear un registro de la pagina, es decir, ...
  #1 (permalink)  
Antiguo 24/06/2008, 19:07
 
Fecha de Ingreso: junio-2008
Mensajes: 6
Antigüedad: 15 años, 10 meses
Puntos: 0
Pregunta pagina De registros Duda

Hola

El siguiente codigo que voy a mostrar tiene un problema de orden. lo que hace es crear un registro de la pagina, es decir, cuando yo le agrego cualquier cosa a la base de datos este, me lo interpreta en una pagina php, pero me lo va haciendo de este modo.

Al agregar por primera ves supongamos dracula este me lo coloca en 1er lugar asi

1 = dracula

Luego cuando agrego por ejemplo hola a la base de datos este, en lugar de agregarmelo en el lugar primero lo que hace es agregarmelo en 2do lugar de este modo

1 = dracula
2 = hola

lo que quiero es lo contrario que cuando yo vaya agregando informacion este codigo me lo vaya poniendo en primer lugar, y la demas informacion se vaya para abajo.

Este es el codigo

Código:
<?php
include ("conexion.php");

######Configuración#######
                         #
$paginas = 3;            #
$tabla = "registros";    #
                         #
##########################

$actual = (!isset ($pg))?1:$pg;
$sql = mysql_query ("SELECT * FROM ".$tabla."");
$total = mysql_num_rows ($sql);
if ($actual == 1) {
$desde = "0";
}
elseif ($actual != 1) {
$desde = $actual * $paginas - $paginas;
}
$tp = ($total / $paginas);
if (strstr($tp,'.')){ 
$tp = explode (".",$tp);
$tp = ($tp[0]+1);
}
$resp = mysql_query ("SELECT * FROM ".$tabla." ORDER BY id LIMIT ".$desde.",".$paginas."");

while ($row = mysql_fetch_array ($resp)) {

//Aqui parte la parte de modificación

echo "Registro: ".$row["nombre"]."<br>";

//Aqui termina xD

}
$pag = ($tp == 1) ? página : páginas;
$reg = ($total == 1) ? registro : registros;
?>
<br>Encontrados <b><?=$total?></b> <?=$reg?> en <b><?=$tp?></b> <?=$pag?><br>
<?php
$anterior = true;
$siguiente = true;
if (($actual == 1) AND ($actual == $tp)) {
$anterior = false;
$siguiente = false;
}
elseif ($actual == $tp) {
$anterior = true;
$siguiente = false;
}
elseif ($actual == 1) {
$anterior = false;
$siguiente = true;
}
if ($anterior) {
echo "<a href=\"pagina.php?pg=".($actual-1)."\">&lt; Página anterior</a> | ";
}
else {
echo "|";
}
for ($i = 1; $i <= $tp;$i++) {
if ($i == $actual) {
echo " <b>".$i."</b> | ";
}
else {
echo "<a href=\"pagina.php?pg=".$i."\"> ".$i."</a> |";
}
}
if ($siguiente) {
echo " <a href=\"pagina.php?pg=".($actual+1)."\"> Página siguiente &gt;</a>";
}
?>
Espero me puedan echar una manita

salu2!!
  #2 (permalink)  
Antiguo 24/06/2008, 21:51
Avatar de Tombar  
Fecha de Ingreso: junio-2008
Ubicación: /home/tombar
Mensajes: 198
Antigüedad: 15 años, 10 meses
Puntos: 11
Respuesta: pagina De registros Duda

No mire tu codigo, pero puedo explicarte un par de cosillas...

cuando agregas un primer registro le pone id 1 cuando creas un segundo registro le pone 2 por que tienes creada tu tabla con un indice autoincremental, es decir cada nuevo registro es una unidad mayo que el anterior :P

No entiendo por que es que necesitas que un nuevo registro tenga id 1 en ves el que le corresponda. yo te recomendaria que en ves de hacerlo como tu quieres, cambiar la logica de tu codigo para usar registros incrementales y hacer la consulta que tu precises.

es decir. en ves de tener 1 hola 2 dracula tengas 1 dracula 2 hola pero en el query selecciones con un order by asc por ejemplo :)

Saludos y a las ordenes
  #3 (permalink)  
Antiguo 24/06/2008, 23:29
 
Fecha de Ingreso: junio-2008
Mensajes: 6
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: pagina De registros Duda

Hola

Muchas Gracias Por tu informacion, Voy a cambiar la logica como tu bn dices.

Si tengo Problemas Espero contar contigo

Salu2!!!

Muchas Gracias
  #4 (permalink)  
Antiguo 24/06/2008, 23:48
Avatar de chalchis  
Fecha de Ingreso: julio-2003
Mensajes: 1.773
Antigüedad: 20 años, 9 meses
Puntos: 21
Sonrisa Respuesta: pagina De registros Duda

tiene razon Tombar lo que importa es como vas a presentar los registros
hacer un select campos from order by desc id_llave

seria lo mas logico

saludos
__________________
gerardo
  #5 (permalink)  
Antiguo 25/06/2008, 12:52
Avatar de Tombar  
Fecha de Ingreso: junio-2008
Ubicación: /home/tombar
Mensajes: 198
Antigüedad: 15 años, 10 meses
Puntos: 11
Respuesta: pagina De registros Duda

De nada! a las ordenes por cualquier otra consulta
  #6 (permalink)  
Antiguo 26/06/2008, 20:51
 
Fecha de Ingreso: junio-2008
Mensajes: 6
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: pagina De registros Duda

Hola

Agregue lo que me decias pero, al parecer no me deja si tengo dos peticiones a mysql_query. Mira

en esta

Código:
$actual = (!isset ($pg))?1:$pg;
$sql = mysql_query ("SELECT * FROM ".$tabla."");
$total = mysql_num_rows ($sql);
if ($actual == 1) {
y en esta

Código:
$resp = mysql_query ("SELECT * FROM ".$tabla." ORDER BY id LIMIT ".$desde.",".$paginas."");

while ($row = mysql_fetch_array ($resp)) {
Ademas si cambio
Código:
SELECT * FROM ".$tabla." ORDER BY id LIMIT
por
Código:
SELECT * FROM ".$tabla." ORDER BY id DESC
o asc me da error.

Segun yo es por las dos peticiones que hago pero no estoy seguro.

Espero me puedas ayudar

salu2!!! y gracias
  #7 (permalink)  
Antiguo 03/07/2008, 22:00
Avatar de Tombar  
Fecha de Ingreso: junio-2008
Ubicación: /home/tombar
Mensajes: 198
Antigüedad: 15 años, 10 meses
Puntos: 11
Respuesta: pagina De registros Duda

podrias pegar todo el codigo de esa pagina por favor ?
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 22:49.