Autor Zpráva
czechiaa
Profil *
Zdravím.
Dělám si své webové stránky a narazil jsem na problém.. Mám výpis novinek na stránku, to jsem si dokázal udělat sám, ale nedokážu udělat to, aby se mi zobrazovalo na stránce určitý počet novinek a níže byla možnost přepnout na další stránku, aby se zobrazili další novinky. Např v adrese index.php?novinky=2 .. Zde přikládám kód, ve kterém bych chtěl pokračovat..

<?
include("connect_clanky.php");

function displayNews(){
   global $database;
   $q = "SELECT id,kategorie,nadpis,obrazek,text,autor,den,mesic,rok,hit "
       ."FROM novinky ORDER BY id DESC";
   $result = $database->query($q);

   $num_rows = mysql_numrows($result);
   if(!$result || ($num_rows < 0)){
      echo "Chyba v nacitani novinek";
      return;
   }
   if($num_rows == 0){
      echo "Zadne novinky";
      return;
   }

   for($i=0; $i<$num_rows; $i++){
      $id  = mysql_result($result,$i,"id");
      $kategorie = mysql_result($result,$i,"kategorie");
      $nadpis  = mysql_result($result,$i,"nadpis");
      $obrazek   = mysql_result($result,$i,"obrazek");
      $text   = mysql_result($result,$i,"text");
      $autor   = mysql_result($result,$i,"autor");
      $den   = mysql_result($result,$i,"den");
      $mesic   = mysql_result($result,$i,"mesic");
      $rok   = mysql_result($result,$i,"rok");
      $hit   = mysql_result($result,$i,"hit");
      
      echo "<div class=\"post\">";
      echo "<div class=\"title\">";
      echo "<h2><a href=\"post.php?id=$id\">$nadpis</a></h2>\n";
      echo "</div>";
      echo "<div class=\"entry\">";
      echo "<img src=\"$obrazek\" alt=\"\" width=\"150\" height=\"102\" class=\"left\" />";
      echo "<p>";
      echo "$text";
      echo "</p>";
      echo "</div>";
      echo "<div class=\"meta\">";
      echo "<p class=\"credit\">Publikoval <a href=\"userinfo.php?user=$autor\">$autor</a> - $den. $mesic, $rok</p>";
      echo "<p class=\"links\"><a href=\"#\" class=\"comments\">Comments ($pocetkomentaru)</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href=\"post.php?id=$id\" class=\"more\">Read more</a></p>";
      echo "</div>";
      echo "</div>";
   }
}
?>

Doufám, že jsem dotaz položil správně. Potřeboval bych jen pošťouchnout jak dál, protože již jsem DJPW prošel a nic takového nenašel. Google mi moc neporadil a spíše ještě přitížil. Předem děkuji
Someone
Profil
Celé to vypisování máš zle navrhnuté.
vypisuj to takto:
$sql = mysql_query("SELECT * FROM novinky");
while ($vysledek = mysql_fetch_assoc($sql)) {
   // výpis novinek
}
a pak řeš limit přímo v dotazu
SELECT * FROM novinky LIMIT 0,10
tady by ti mohl pomoc článek, který jsem o jednoduchém stránkování psal.
czechiaa
Profil
Someone:
čekal jsem, že asi nebude můj zdroják zrovna nejlepší, ale funguje dobře. Upravovat ho nebudu, byla by to zdlouhavá práce. Tvůj článek si přečtu, kdyžtak ještě zareaguju. Díky
Someone
Profil
czechiaa:
zdlouhavá práce
opravdu?
function displayNews() {
    $q = mysql_query("SELECT * FROM novinky ORDER BY id DESC");
    if (mysql_num_rows($q) < 1) {
        echo "Žádné novinky";
        return;
    } else if (mysql_num_rows($q) > 1) {
        while ($v = mysql_fetch_assoc($q)) {
            // výpis
        }
    }
}
czechiaa
Profil
Someone:
Tak jsem využil kód z tvých stránek, nýbrž mám nyní novej problém..
Když si echo upravím dle své potřeby, tak mi to vyhazuje hlášku:
Parse error: syntax error, unexpected T_VARIABLE in _______ on line 21

a zdroják:
echo "<div class=\"post\">";
            "<div class=\"title\">";
            "<h2><a href=\"post.php?id="$vysledek['id']"\">"$vysledek['nadpis']"</a></h2>\n";
            "</div>";
            "<div class=\"entry\">";
            "<img src=\""$vysledek['obrazek']"\" alt=\"\" width=\"150\" height=\"102\" class=\"left\" />";
            "<p>";
            $vysledek['text'];
            "</p>";
            "</div>";
            "<div class=\"meta\">";
            "<p class=\"credit\">Publikoval <a href=\"userinfo.php?user="$vysledek['autor']"\">$vysledek['autor']</a> - $vysledek['den']. $vysledek['mesic']., $vysledek['rok']</p>";
            "<p class=\"links\"><a href=\"post.php?id="$vysledek['id']"#comments\" class=\"comments\">Comments (0)</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href=\"post.php?id=$vysledek['id']\" class=\"more\">Read more</a></p>";
            "</div>";
            "</div>";
  }

pozn.: řádek začínající echo je 19. řádek v mém kódu .. .. kde dělám chybu ?
Someone
Profil
nikdy tu nespojuješ řetězce (v php řetězce spojuje tečka .)
"<h2><a href=\"post.php?id=".$vysledek['id']."\">".$vysledek['nadpis']."</a></h2>\n";
czechiaa
Profil
Someone:
Jééj, má chyba. Tak tedy s využítím tvého zdrojáku to funguje. Díky za rady ;)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: