Foros del Web » Programando para Internet » PHP »

Paginación - YA NO SE COMO MONTÁRMELO!!!

Estas en el tema de Paginación - YA NO SE COMO MONTÁRMELO!!! en el foro de PHP en Foros del Web. Hola, antes que nada agradecer a todos aquellos que me han ayudado antes. Me encuentro ante un problema a la hora de implementar el script ...
  #1 (permalink)  
Antiguo 11/09/2003, 16:08
Avatar de Seia Cair  
Fecha de Ingreso: agosto-2003
Mensajes: 42
Antigüedad: 20 años, 7 meses
Puntos: 0
Paginación - YA NO SE COMO MONTÁRMELO!!!

Hola, antes que nada agradecer a todos aquellos que me han ayudado antes.

Me encuentro ante un problema a la hora de implementar el script que crea paginacion de "equis" tabla. El caso es que el script que tome devuelve un array de todos los registros que hay en una tabla, y eso para un monótono sistema de noticias está bien pero si lo que quiero es que cada tema que haga sea paginado solo y unicamente el que ha sido insertado?


es decir, quiero INSERTAR entrevistas, luego imprimir un indice de cada una de ellas y luego que cada una de ellas una vez elegida para el usuario, sea paginada. Pero el script que tengo me pagina todos los registros de mi tabla por lo que deberia de añadirle algún criterio como un campo tal vez que lleve el nombre de cada registro y que ese sea el unico que lo distanga de los demás? no tengo ya ni idea de como hacerlo.


mirad este es mi script:


Código PHP:
$con=mysql_connect($server,$db_user,$db_pass);
mysql_select_db($base,$con);

if (!isset(
$pg))
$pg 0// $pg es la pagina actual
$cantidad=2// cantidad de resultados por pagina
$inicial $pg $cantidad;

$pegar "SELECT * FROM rpg_noticias WHERE plataforma_text = '$consola' 
ORDER BY ID LIMIT $inicial,$cantidad"
;
$cad mysql_db_query($base,$pegar) or die (mysql_error());

$contar "SELECT * FROM rpg_noticias 
WHERE plataforma_text = '$consola' ORDER BY ID"

$contarokmysql_db_query($base,$contar);
$total_records mysql_num_rows($contarok);
$pages intval($total_records $cantidad);

// Imprimiendo los resultados
echo "<table width='100%'>";

while(
$array mysql_fetch_array($cad)) {

   if (
$colorfila==0){
       
$color"#DEDEBE";
       
$colorfila=1;
    }else{
       
$color="#F0F0F0";
       
$colorfila=0;
    }

    echo 
"<tr><td bgcolor='".$color."'>
<font face='Arial' size='2'>"
.$array['titulo_cabecera']."</font></td></tr>";


echo 
"</table>";

// Cerramos la conexion a la base
$con=mysql_close($con);

// Creando los enlaces de paginacion
echo "<p>";
if (
$pg <> 0)
{
$url $pg 1;
echo 
"<a href='paginacion.php?pg=".$url."'>&laquo; Anterior</a>&nbsp;";
}
else {
echo 
" ";
}

for (
$i 0$i<($pages 1); $i++) {
if (
$i == $pg) {
echo 
"<font face=Arial size=2 color=ff0000><b>&nbsp;$i&nbsp;</b></font>";
}
else {
echo 
"<a href='paginacion.php?pg=".$i."'>".$i."</a>&nbsp;";
}
}

if (
$pg $pages) {
$url $pg 1;
echo 
"<a href='paginacion.php?pg=".$url."'>Siguiente &raquo;</a>";
}
else {
echo 
" ";
}
echo 
"</p>";
?> 

Ahora dos cosas:

1. Como hacer que unicamente se me presente paginacion de una determinada entrevista?

2. Como me monto el formulario para enviar registros con multiples paginas? eske no me entra en la cabeza... pffff

esto es demasiado.

ayudadme porfavor, os lo agradezco de todo

__________________
Tú no necesitas una razón para ayudar a alguien.
  #2 (permalink)  
Antiguo 11/09/2003, 17:34
Avatar de Jesús  
Fecha de Ingreso: mayo-2001
Mensajes: 23
Antigüedad: 22 años, 11 meses
Puntos: 0
Sorry por no responder tu duda, pero te doy un tip aparte. Usa CSS para definir colores de tabla y eso, ayuda más y baja el peso a tu página:
por ejemplo yo tengo un estilo asi:
//estilo.css
.texto1 {
font-family: Verdana;
font-size: 10px;
color: #666633;

}
.bordes{
font-family: Verdana;
font-size: 10px;
color: #666633;
border-color: #999999;
border-top-width: 1px;
border-bottom-width: 1px;
border-left-width: 1px;
border-right-width: 1px;
border-style: dashed;
}

Hago el include para el css y en el echo pues le pongo algo asi:
echo (""<tr><td class=\"bordes\">.... y tal
Disminuye el peso de tu página y hace más fácil cualquier cambio.
Disculpa que no te ayude con lo de la paginación, aunque la verdad no entendi tampoco mucho de lo que querias hacer. Creo que si la entrevista que escojo tiene 5 páginas pues que las pagine.
¿Eso?
  #3 (permalink)  
Antiguo 11/09/2003, 18:06
 
Fecha de Ingreso: abril-2003
Mensajes: 656
Antigüedad: 21 años
Puntos: 1
pues creo que tienes de poner otra clausula en el where, algo
como el id de la entrevista que qieres que aparezca

un saludo
  #4 (permalink)  
Antiguo 11/09/2003, 18:16
Avatar de Seia Cair  
Fecha de Ingreso: agosto-2003
Mensajes: 42
Antigüedad: 20 años, 7 meses
Puntos: 0
yap eso es lo que estoy intentando hacer, darle un nombre y poner la condicion cuando hago la consulta a mysql. le digo where esto iwal a la variable de modo que la variable es un link del tipo ?entrevista=primera

pero es unpoco lioso deberia de ser algo más automatico... no sep...


respecto al css gracias tio. una idea estupenda, no lo habia pensado. Probaré con los css. Gracias.
__________________
Tú no necesitas una razón para ayudar a alguien.
  #5 (permalink)  
Antiguo 11/09/2003, 19:13
 
Fecha de Ingreso: abril-2003
Mensajes: 656
Antigüedad: 21 años
Puntos: 1
imagino que primero tendrias de identificar las entrevistas con
un numero osese un id, ese id lo pones de primary key, y luego
lo buscas siguiendo el where a este id, que puede ir identificado
en una url o en sesion, o a traves de un campo oculto de form

no se algo asi tendria de ser

un saludo
  #6 (permalink)  
Antiguo 11/09/2003, 19:27
Avatar de Seia Cair  
Fecha de Ingreso: agosto-2003
Mensajes: 42
Antigüedad: 20 años, 7 meses
Puntos: 0
aja, entendido. Es lo que creo ke voy a hacer solo que ahroa se me resiste un tema. Como meter multiples registros de un solo golpe...voy a informarme...aver...

gracias for all! ojalá en el futuro os devuelva los favores ;)
__________________
Tú no necesitas una razón para ayudar a alguien.
  #7 (permalink)  
Antiguo 11/09/2003, 19:38
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
"meter multiples registros de un sólo golpe"? ...

Te refieres a INSERT (o UPDATE) .. si es así sólo te recuerdo que mysql_query() de PHP sólo puede mandar a ejecutar -UNA- sóla instrucción SQL a la vez (no sirve separaralas por ; .. como lo hariás en "consola") ...

Así que si quieres hacer eso "multiple" tendrás que usar un bucle minimo para recorrer la variable (tal vez array? o el mismo bucle que uses para obtener esos "id" de el registro en cuestión ..) y poder mandar una por una mysql_query()

Un saludo,

pd: Ejemplo .. phpMyadmin en un "textarea" le puedes mandar X instrucciónes SQL separardas por ; pero, al final lo que hace es un "explode()" al ";" y los ejecuta en un bucle los mysql_query() ..
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #8 (permalink)  
Antiguo 11/09/2003, 20:08
Avatar de Seia Cair  
Fecha de Ingreso: agosto-2003
Mensajes: 42
Antigüedad: 20 años, 7 meses
Puntos: 0
Cluster Me he montao aquí un follon que a más de uno le hará gracia.
Lo que he echo es lo siguiente:

en el primer formulario tengo tres campos
titulo
contenido
id_entrevista
el que los recoge tb lleva campos que luego son insertados a la misma web que recogio los primeros campos.

esa web contiene en los campos

id_entrevista con el código:

<?php echo $_POST['titulo'] ?>

y el campo id_entrevista

<?php echo $_POST['id_entrevista'] ?>


de tal modo que solo tengo que ir rellenando el campo "contenido" mientras los otros se mantienen con su id_entrevista y el titulo que al principio tenian.

Ahora haciendo una llamada del tipo

pagina.php?nombre=lokeinserte_en_campo

y en la clausala de la conexion a db la condicion WHERE id_entrevista = '$nombre'

asi me las ordena todas por el id_entrevista

digo yo..... para los ke no saben programar.....un bonito truco no?

decidme si estoy loco


P.D. cluster, ya se que tu manejas la ostia pero la verdad es que yo nosoy capaz de crear esas intrucciones lógicas. No tengo profesor y ando kemandome la cabeza aki por lo que poco puedo llegar a programar...

tamos en ello....

Salu2 y regracias otras vez
__________________
Tú no necesitas una razón para ayudar a alguien.
  #9 (permalink)  
Antiguo 11/09/2003, 20:16
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Ok .. Ok ..Sólo explicaba como trabaja la función mysql_query() .. mucha gente se confunde y cree que puede enviarle várias instrucciones SQL (separadas por ;) como lo hace en el "textarea" de phpmyadmin por lo que comenté de como lo hace el mismo ...

Por lo demás ..ya me perdí así q no entendí nada :PPP

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #10 (permalink)  
Antiguo 11/09/2003, 20:31
Avatar de Seia Cair  
Fecha de Ingreso: agosto-2003
Mensajes: 42
Antigüedad: 20 años, 7 meses
Puntos: 0
jajaja....vale. De todos modos ya entenidi lo que explicabas, me servirá para el futuro evitando más de un desánimo.
salu5
__________________
Tú no necesitas una razón para ayudar a alguien.
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 23:54.