Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Problem z ilością wyświetlania
Dawka
post 17.12.2006, 09:38:10
Post #1





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 17.12.2006

Ostrzeżenie: (0%)
-----


Witam.

Mam następujący problem: Mam skrypt, który pobiera linki do newsów i powinien wyświetlać wyznaczoną ilość linków w bloku. Wyświetla natomiast za dużo linków.

Oto kod skryptu:

Kod
<?
$ilosc_linkow = 6;
//pobieranie id kategorii ..
function news_include($id_kat)
{
//$id_kat = $_GET['id_kat'];
if ($dir = @opendir("baza/news")) {
while (($filee = readdir($dir)) !== false) {
if (eregi("base$",$filee)){
$file[]=$filee;
}
}
closedir($dir);
}
sort($file, SORT_NUMERIC);

for($i=0;$i<count($file);$i++)
{
$x = explode(".", $file[$i]);
$y = explode(",", $x[0]);
$kate = $y[1];
if($kate == $id_kat)
{
$news[] = $file[$i];
}
}

if($ilosc_linkow<count($news)){$ilosc_linkow=count($news);}
for($i=0;$i<$ilosc_linkow;$i++)
{
$x = count($news)-$i;
$pliknewsa=file("baza/news/".$news[$x]);
$odczyt = explode("||", $pliknewsa[0]);
$id = explode(".", $news[$x]);
//Skracanie zadługiego tytulu
$length = strlen($odczyt[0]); // sprawdzanie dlugosci tytulu
$odczyt[0] = substr ($odczyt[0], 0, 25);
if($length > 25)
{
$odczyt[0]="$odczyt[0]...";
}
echo("<li> <a href=\"?news=\"".$id[0]."\ title=\"".$odczyt[0]."\">".$odczyt[0]."</a></li>");
}
}
?>



Skypt includuje komenda:

Kod
<?php include("news_include.php"); news_include(1);?>


gdzie (1) to nazwa kategorii które są kolejno 0,1,2

link do strony: http://www.michaelowen.pl/indexxx2.php

Proszę o pomoc
Go to the top of the page
+Quote Post
WereWolf
post 17.12.2006, 11:19:30
Post #2





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 21.05.2005

Ostrzeżenie: (0%)
-----


Cytat(Dawka @ 17.12.2006, 09:38:10 ) *

na tej stronie nie ma nic konkretnego...


nie wiem czy dobrze rozumiem, ale podejrzewam, że błąd leży tutaj:
  1. <?php
  2. if($ilosc_linkow<count($news)){$ilosc_linkow=count($news);}
  3. ?>


skrypt sprawdza wielkość $ilosc_linkow i porównuje ją z ilością wszystkich newsów...
jeśli jest mniejsza, to przypisuje jej liczbę wszystkich newsów... czyli dajmy na to, ustawiasz liczbę 6, a wszystkich newsów masz 9
skrypt przypisuje wtedy liczbę 9 i wyświetla Ci wszystkie newsy, zamiast zadanych 6...

jeśli dobrze zrozumiałem celowość tego działania, to raczej powinno być odwrotnie... jeśli podasz większą liczbę, niż masz newsów, dajmy na to - podajesz liczbę 6, a newsów masz 3... skrypt powinien wtedy zmniejszyć liczbę_linków do 3, czyli powinno być:

  1. <?php
  2. if($ilosc_linkow>count($news)){$ilosc_linkow=count($news);}
  3. ?>
Go to the top of the page
+Quote Post
Dawka
post 17.12.2006, 13:25:33
Post #3





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 17.12.2006

Ostrzeżenie: (0%)
-----


też tak myślałem, ale nie w tym leży błąd, bo gdy zmieniam znak nierówności, to wtedy skrypt nic nie wyświetla

a na stronie te linki powinny być pod belką Newcastle United... i są ale jest ich za dużo
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.06.2025 - 18:14