buenas al foro :) tengo una duda y es esta, cree un sistema de noticias con php y una base de datos, como el de un foro en el caso como el de este mismo cctw, pero como le hago para cuando ya hayan echos 15 publicaciones no siga agregando mas publicaciones en la misma pag si no que de forma automatica pase a una siguiene pag, osea q por cada hoja solo sean permitida 15 publicaciones al llegar a la numero 15, siga pero en otra pag y no en la misma, espero y me sepan entender lo q quiero decir, aki les coloco unas imagenes para q tengan una idea.
[contenido no disponible]
como pueden ver en la imagen, en esa seccion del foro al llevar a 25 noticias pasa a una siguiente pag de forma automatica, me gustaria saber como hacer ese codigo. :S alguien me da una idea, ya tengo echo lo principal. que son las secciones y esas cosas ^^ :D.
Esto es cuestion de que preguntes a Jorgens, o esperes que el te responda, ya que si es un foro de VBulletin, te dira exactamente donde modificarlo.
Normalmente, es cuestion de buscar el trozo de codigo que realiza esa accion, y modificar los 25 (por defecto) por los 15 que pretendes; no obstante, si nos das mas datos, codigo, etc te podre ayudar mas.
Bien te refieres a que hiciste un sistema de noticias y lo quieres paginar , bien pues es simple aqui te dejo una paginacion que hize para victor en alguna ocasion que era para el buscador, en este caso al principio de la consulta haz tu consulta que quieras para mas tarde volverla hacer en el otro mysql_query pero con la diferencia del uso del LIMIT que es la funcion con la que te permitira paginar cualqueir cosa que tu quieras bueno ahi va:
$noticia = mysql_query("SELECT * FROM TUTABLA ... la demas sentencia") or die ("<p>Ocurrio un error</p>"); // Tu sentencia Mysql
$numeroRegistros = mysql_num_rows($noticia); //HAGAMOS AQUI LA PAGINACION, POR SI HAY MAS DE 25 NOTICIAS PARA PROCEDER A PONER LAS PAGINAS
$tamPag=5; //el numero de noticias que mostrara por pagina (la puedes editar cuando quieras) if(!isset($_GET["pagina"])) { $pagina=1; $inicio=1; $final=$tamPag; }else{ $pagina = $_GET["pagina"]; }
if ($final>$numPags){ $final=$numPags; } } $noticia2 = mysql_query("SELECT * FROM TU TABLA ..... la demas sentencia y al final LIMIT ".$limitInf.",". $tamPag ." ") or die ("<p>Ocurrio un error</p>");
$numeroDeresultados = mysql_num_rows($noticia2);
if($numeroDeresultados <= 0) { echo "<p>No se encontraron resultados</p>"; } else { if(mysql_num_rows($noticia2)) { while ($qry = mysql_fetch_array($noticia2)) { //AQUI TU CODIGO DE NOTICIAS } } } } if($pagina>1)
tengo un problema, ya me aparece todo bien cuando llego a los 8 comentarios, aparece la segunda pag pero cuando comento nuevamente aparece en la pag 1 y cuando le doy siguiente aparecen en la pag dos los mismos mensajes q en la pag uno :(, aki les dejo el codigo..
<div id="noticias">
<? $host= "localhost"; $user="root"; $password="******"; $db="foro"; $connect= mysql_connect($host,$user,$password); mysql_select_db("foro", $connect); $consulta = mysql_query("SELECT * from forol WHERE identificador = 0 ORDER BY fecha DESC",$connect);
$noticia2 = mysql_query("SELECT * FROM forol WHERE identificador = 0 ORDER by fecha DESC LIMIT ".$limitInf.",". $tamPag."8") or die ("<p>Ocurrio un error</p>");
es que tienes muchos errores porque no te basas en lo que te di solo cambiando las cosas, en tam pag le pones "8" con comillas se transforma en variable tipo string y no en variable booleana como deberia serlo, primera en $tampag= "8"; pon $tampag=8; ademas en la variable $noticia2; no se porque pones LIMIT $tampag."8" O.O OMG! , ademas de que las sentencias sql siempre deben ir con mayusculas para soporte con servidores con linux/unix, poneses SELECT * from O.O asi no asi no, correiglelo tu mismo basandote en el codigo que te he creado.
disculpa, esos fueron errores mios. :) ya arregle los errores q tenia :), muchas gracias por su atencion. pero ya tengo un problemita, yo le puse al tampag q mostrara 15 publicaciones por pag y solo me muestra 14. porq pasa eso.