Afisare date din baza de date pe cateogorii
Scris: Lun Noi 19, 2012
Am pe site id-uri care se afla in 2 categorii: "masculin" si "feminin" . Acum le afiseaza amestecate pe toate si masculin si feminin. Eu as dori sa imi afiseze toate din categoria x pe link x .
De exemplu:
Masculin
Feminin
Cand cineva vrea sa vada doar id-urile din categoria Masculin sa ii afiseze doar id-uri din categoria masculin+ paginare daca sunt mai multe de 10 inregistrari pe o pagina.
Eu am acest cod dar nu stiu cum sa il modific :
De exemplu:
Masculin
Feminin
Cand cineva vrea sa vada doar id-urile din categoria Masculin sa ii afiseze doar id-uri din categoria masculin+ paginare daca sunt mai multe de 10 inregistrari pe o pagina.
Eu am acest cod dar nu stiu cum sa il modific :
Cod: Selectaţi tot
<?php
include('conectare.php');
// Setarea pentru format UTF-8
$sql = "SET NAMES 'utf8'";
mysql_query($sql, $connect);
// Afla cate linii sunt in tabel (MODIFICATI 'nume_tb') din baza de date
$sql = "SELECT COUNT(*) FROM `membri`";
$result = mysql_query($sql, $connect) or trigger_error(E_USER_ERROR);
$r = mysql_fetch_row($result);
$numrows = $r[0];
// Stabileste numarul de linii din tabel afisate in pagina
$rowsperpage = 20;
// afla numarul total necesar de pagini
$totalpages = ceil($numrows / $rowsperpage); // ceil face rotunjire la int. maxim
// Obtine pagina curenta sau seteaza default
if (isset($_GET['pagina']) && is_numeric($_GET['pagina']))
{
// seteaza variabila ca int
$pagina = (int) $_GET['pagina'];
} else {
// pagina care este initial afisata (pagina default)
$pagina = 1;
}
// daca pagina curenta e mai mare decat total pagini...
if ($pagina > $totalpages) {
// seteaza pagina curenta la ultima pagina
$pagina = $totalpages;
}
// daca pagina curenta e mai mica decat prima pagina...
if ($pagina < 1) {
// seteaza pagina curenta la prima pagina
$pagina = 1;
}
// lista cu pagini, in functie de pagina curenta
$offset = ($pagina - 1) * $rowsperpage;
// obtine datele din tabel (MODIFICATI 'nume_tb') din baza de date
$sql = "SELECT * FROM `membri` ORDER BY `id` DESC LIMIT $offset, $rowsperpage";
$result = mysql_query($sql, $connect) or trigger_error(E_USER_ERROR);
// parcurgerea matricei cu datele obtinute
while ($list = mysql_fetch_assoc($result)) {
// - MODIFICATI numele coloanelor tabelului ('id' si 'texte')
// Stocheaza datele returnate de MySQL in variabile array pt. fiecare coloana
$id[] = $list['id'];
$text[] = $list['*'];
$tara[] = $list['tara'];
$oras[] = $list['oras'];
$stare[] = $list['stare'];
$nume[] = $list['nume'];
}
mysql_close(); // Incheie conexiunea cu mysql
/*** Afisarea datelor obtinute ***/
// Parcurge variabilele array setate in bucla WHILE
echo '<table CELLSPACING=10><tr>';
$j=0;
for($i=0; $i<count($id); $i++) {
// Aici puteti adauga cod HTML pentru aspectul grafic al afisarii
echo '<td bgcolor=#eeeeee width=250>';
echo "<table border=0><tr><td>
<img src=/poza-profil/$id[$i].jpg border=1 width=90 height=130></td><td> <b>$nume[$i]</b><br><br> <b>$text[$i]</b> <br>din <b>$tara[$i]/$oras[$i]</b><br><br> <img src=/imagini/stare.png> <b>$stare[$i]</b></td></tr></table>";
echo '</td>';
$j++;
if($j % 4 == 0 && $j !=20)
echo '</tr><tr>';
}
echo '</tr>';
echo '</table>';
/*** Construirea link-urilor pt. paginare ***/
// raza nr. link-uri din jurul celui curent
$range = 3;
// Link-uri inapoi, daca pagina curenta nu e prima
if ( $pagina > 1) {
// arata << pt. link la prima pagina
echo "<a href='{$_SERVER['PHP_SELF']}'>Prima Pagina</a> ";
// obtine nr. pagina din urma
$prevpage = $pagina - 1;
}
// definirea link-urilor din raza paginii curente
for ($x = ($pagina - $range); $x < (($pagina + $range) + 1); $x++) {
// daca e un nr. de pagina valid ...
if (($x > 0) && ($x <= $totalpages)) {
// daca nr. e pagina curenta ...
if ($x == $pagina) {
// afiseaza nr. pagina fara a fi link
echo " [<b>$x</b>] ";
// daca nr. nu e pagina curenta ...
} else {
// il face link
echo " <a href='/id-uri/pagina$x'>$x</a> ";
}
}
}
// Daca pagina curenta nu e ultima, afiseaza link inainte si spre ultima pagina
if ($pagina != $totalpages) {
// obtine pagina urmatoare
$nextpage = $pagina + 1;
// arata >> pt. ultima pagina
echo " <a href='/id-uri/pagina$totalpages'>Ultima Pagina</a>";
}
?>