#1• Como puedo hacer para poner los link automaticamente en una pagina web, asi por secciones como lo muestran los foros, es decir Index - Seccion 2- Seccion 3, casa uno con sus link, lo quisiera poner mediante codigos o base de datos, no insercion mediante html, o sea, manualmente, no uno por cada pagina...a ver si me entineden... |
#2• paginador.php <?php // Clase de paginacion class Paging { // Varibles to be uses as Menu Config // If not set with the proper Function // they get a default Value /* How Many result Per Page @INT */ var $perPage; /* String with the next Link-Text @STR : Can be html to use images <img src="img/next.gif" alt="next"> */ var $strNext; /* String with the next Link-Text @STR : Can be html to use images <img src="img/next.gif" alt="next"> */ var $strPrev; /* String with the Var name that will be used for Paging @STR : Use Only [a-z][A-Z] Chars Please (DO NOT INCLUDE [0-9]) */ var $varName; // Variables For Calculation Of Result /* Variable that Holds The Number Of Results In the Query @INT */ var $total; /* Total Number Of Pages $INT */ var $totalPages; /* Variable that Holds the number of the begibib in the query @INT */ var $start; /* THe current Value of $_GET[ $varName ] @INT */ var $page; // Variables for Storing Mysql Querys And Results /* This Variable Holds the Original Query Of the User @STR */ var $sql; // Class Constructor PASS the query // Only Selects function Paging($sql) { // Store the Original SQL $this->sql = $sql; // Get The SQL Count Query String $sqlCount = eregi_replace("select (.*) from", "SELECT COUNT(*) FROM", $this->sql); // Fetch the Result $sqlCount = mysql_query($sqlCount); // Set the Total $this->total = mysql_result($sqlCount,0,0); } // Method Used Internaly to Propage the URL GET Variables function propagate(&$a,$pref='',$f='',$idx='') { $ret = ''; foreach ($a as $i => $j) { if ($i != $this->varName) { if ($idx != '') { $i = $idx."[$i]"; } if (is_array($j)) { $ret .= $this->propagate($j,'',$f,$i); } else { $j=urlencode($j); if (is_int($i)) { $ret .= "$f$pref$i=$j"; } else { $ret .= "$f$i=$j"; } } } $f='&'; } return $ret; } // Methods For Configuration function set_perPage($value) { $this->perPage = $value; } function set_strNext($value) { $this->strNext = $value; } function set_strPrev($value) { $this->strPrev = $value; } function set_varName($value) { $this->varName = $value; } function sysConfig() { // This Method Calls All all the Config Methods // To configure the Class if (empty($this->varName)) { $this->set_varName('page'); } if (empty($this->strPrev)) { $this->set_strPrev('<< '); } if (empty($this->strNext)) { $this->set_strNext(' >>'); } if (empty($this->perPage)) { $this->set_perPage(10); } $this->page = isset($_GET[$this->varName]) ? $_GET[$this->varName] : 1; $this->totalPages = ceil($this->total / $this->perPage); $this->start = ($this->page - 1) * $this->perPage; } function getMenu() { // Config CALL $this->sysConfig(); $string = $this->propagate($_GET); $more = $this->page + 1; $less = $this->page - 1; if ($this->page != 1) { $navResult[] = "<a href=\"$_SERVER[PHP_SELF]?$string&$this->varName=$less\">$this->strPrev</a>"; } for ($i=1;$i<=$this->totalPages;$i++) { $navResult[] = ($this->page == $i) ? " <strong>$i</strong> " : "<a href=\"$_SERVER[PHP_SELF]?$string&$this->varName=$i\">$i</a>"; } if ($this->page != $this->totalPages) { $navResult[] = "<a href=\"$_SERVER[PHP_SELF]?$string&$this->varName=$more\">$this->strNext</a>"; } $navResult = implode($navResult,' | '); $navResult = "Mostrando Pagina $this->page de $this->totalPages - $this->total Registros<br/>" .$navResult; return $navResult; } function getResult() { $this->sysConfig(); $this->sql .= " LIMIT $this->start, $this->perPage"; $result = mysql_query($this->sql); return $result; } function debug() { echo '<textarea cols="60" rows="10">'; print_r($this); echo '</textarea>'; } } ?>ç *************************** Ejemplo de como usarlo <? include('paginador.php'); $paging =& new Paging('SELECT * FROM usuarios'); $paging->set_perPage(10); // te muestra X registros por pagina // si no lo llamas el default es 10 $paging->set_strNext('>>'); $paging->set_strPrev('<<'); // Cual sera el str del boton siguiente y anterior? // los defaults son >> << // puede ser incluso una imagen (html : <img src="...">) ;) $paging->set_varName('page'); // pudes cambiarle el nombre a la variable GET // sease http://web.com/usuarios.php?page=1 // sease http://web.com/usuarios.php?pagina=1 // sease http://web.com/usuarios.phpfuck=1 // sease http://web.com/usuarios.php?loquesea=1 // el default es page $res = $paging->getResult(); $nav = $paging->getMenu(); while($row = mysql_fetch_array($res)) { echo "<b>$row[id_user]</b>:$row[userName] <br/>\n"; } echo $nav; ?> |
#3• exacto |
#4•• yo lo inserto y me aparece la barra de navegacion, pero el problema que tengo es que no puedo mostrar la cantidad de datos que quiero, me muestra todo, este es el codigo que me levanta los datos, creo que ahi debe haber un error: <? $res = mysql_query($query); if($total_registros > 0) for($i=0;$i<@mysql_num_rows($res);$i++) $imagen = mysql_result($res,$i,"imagen" ; |
ATENCIÓN: Este tema no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un nuevo tema en lugar de responder al actual |
Opciones: Ir al subforo: |
Permisos: TU NO PUEDES Escribir nuevos temas TU NO PUEDES Responder a los temas TU NO PUEDES Editar tus propios mensajes TU NO PUEDES Borrar tus propios mensajes |
Temas similares |
No se han encontrado temas similares |