Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][CSS] Wyświetlanie skryptu kanału RSS w FF ok, problem z IE
floydrose
post
Post #1





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 10.05.2009

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


Zbudowałem stronę i zawarłem na niej 3 skrypty. Po lewej stronie znajdują się 2: jest to czytnik RSS (NEWS - informacje muzyczne) oraz LICZNIK graficzny odwiedzin. Po prawej stronie znajduje się drugi czytnik RSS (AUKCJE - mój kanał z serwisu allegro).

Rzecz w tym, że pod FF wszystko jest ok - a pod IE8 nie. Każdy wyraz z RSS i grafika z licznika odwiedzin znajdują się w nowej linii. Prawy skrypt kanału RSS (tak samo zbudowany, co ten po lewej) wyświetla się poprawnie.

(IMG:http://img33.imageshack.us/img33/9889/firefoxr.jpg)

(IMG:http://img9.imageshack.us/img9/3875/41386311.jpg)

Co mam podesłać, sprawdzić, etc. aby to oczywiście poprawić na obie przeglądarki?

Ten post edytował floydrose 2.07.2009, 19:16:48
Go to the top of the page
+Quote Post
erix
post
Post #2





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Bez kodu to wiesz, co można. [;
Go to the top of the page
+Quote Post
floydrose
post
Post #3





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 10.05.2009

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


Kod czego mam podesłać?

Skrypt czytnika RSS ze strony Allegro znajduje się tutaj. Różnica do tego, który się "rozstrzela" na każdą nową linię tkwi wyłącznie w tym, że RSS Allegro ma czas aktualizacji wiadomości równy 0 (chciałbym mieć 30, ale nie pokazuje wtedy "brak aktualnych ofert w serwisie allegro" - jeśli wiesz jak to wykonać, to kliknij w link koniecznie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) ), a RSS wiadomości NEWS po lewej ma wartość 60 (co godzinę) oraz została usunięta jedna linia w RSS Allegro usuwająca puste linijki. Po identycznym ustawieniu skryptu do tego po prawej stronie (działającego), efekt rozstrzelenia w IE8 nadal istnieje.

Co jest potrzebne do usunięcia błędu?

Kod licznika graficznego:
  1. <?
  2. ### IMAGE FORMAT
  3. $format = ".png";
  4.  
  5. $file = file("count.txt");
  6. $num = ($file[0] + 1);
  7. exec("echo $num > count.txt");
  8. switch($type) {
  9. case "text":
  10.  echo $num;
  11.  break;
  12. case "gfx":
  13.  $i = 0;
  14.  $cntn = strlen($num);
  15.  while($i < $cntn) {
  16.   $tmpnum = substr($num, $i, 1);
  17.   echo("<img src=\"$dir/$tmpnum$format\">");
  18.   $i++;
  19.  }
  20.  break;
  21. case "q":
  22. break;
  23. default:
  24. echo("count.php <b>error</b> : type not specified.");
  25. break;
  26. }
  27. ?>


kod lewej części strony:

  1. <TABLE width="125" height="20" valign="top" align="center" border="0" cellpadding="0" cellspacing="0">
  2. <TR>
  3. <TD background="2.png" align="center" ID="oddz">NEWS</TD>
  4. </TR>
  5. <div style="margin-left:10px;margin-top:10px;margin-bottom:10px;margin-right:5px;">
  6. <table border="0" width="100%" cellspacing="0" cellpadding="0">
  7. <tr>
  8. <td width="20" valign="top" align="left"><font color="navy"><? include("rss/rss.php");?></font></td>
  9. </tr>
  10. </div>
  11.  
  12. <TABLE width="125" height="20" valign="top" align="center" border="0" cellpadding="0" cellspacing="0">
  13. <TR>
  14. <TD background="2.png" align="center" ID="oddz">LICZNIK</TD>
  15. </TR>
  16. <div style="margin-left:0px;margin-top:10px;margin-bottom:10px;">
  17. <table border="0" width="100%" cellspacing="0" cellpadding="0">
  18. <tr>
  19. <td width="20" valign="top" align="center"><? $type = "gfx"; $dir = "digits"; include("count.php"); ?> </font></td>
  20. </tr>
  21. </div>


kod czytnika RSS NEWS:

  1. <?php
  2.  
  3.  #===========================================
  4.  # Silnik tego skryptu zapożyczony został z czytnika RSS w wersji PHP z
  5.  # oprogramowania RSS GET, oryginalna wersja programu na stronie: <a href=\"http://www.aarondunlap.com\" target=\"_blank\">http://www.aarondunlap.com</a>
  6.  #===========================================
  7.  
  8.  $czas = 60; // Co ile ma być aktualizacja
  9.  
  10.  $folder = "rss/"; // Adres folderu, w którym znajdować się będą pliki z newsami.
  11.  
  12.  $adres = "http://www.rockmetal.pl/rss/rockmetal_news.rss"; // Adres URL do kanału RSS
  13.  $nazwa_kanalu = "RockMetal.pl"; // Tytuł kanału RSS
  14.  $liczba = 5; // Ilośc nagłówków newsów, które mają być wyswietlane
  15.  $target = "_blank"; // Opcja target="" dla newsów, możliwe: "_self" oraz "_blank"
  16.  $autoupdate = TRUE;
  17.  $trunc = FALSE;
  18.  $delim = FALSE;
  19.  
  20.  if (isset($_GET['rssHeadline'])) { $rssHeadline = $_GET['rssHeadline'];}
  21.  $basefile = $folder;
  22.  $folder .= md5($adres).".htm"; // Przygotowywanie nazw plików dla danego kanału
  23.  
  24.  #==========================
  25.  # Operacje związane ze sprawdzaniem aktualności nagłówków w pliku tekstowym
  26.  #==========================
  27.  
  28.  if (($czas > 0) && (is_file($folder)) && (((time()-filemtime($folder)) < ($czas * 60)))) {
  29.      include $folder;
  30.    $time = floor((time()-filemtime($folder)) / 60); // Sprawdza ile minut temu plik był aktualizowany
  31.      
  32.  } elseif (@fopen($adres,"r")) { // Sprawdza czy ma dostęp do kanału RSS
  33.  
  34.        #==========================
  35.      # Operacja związane z dodawaniem nowego nagłówka do pliku
  36.      #==========================
  37.  
  38.      $rssHandle = fopen($adres,"r") ; // Otwiera plik kanału RSS
  39.  
  40.      while (!feof($rssHandle)) {
  41.          $rssData .= fgets($rssHandle);
  42.      }
  43.  
  44.      #==========================
  45.      # Przygotowywanie newsa do włączenia do pliku
  46.      #==========================
  47.      $tag = "item ";
  48.      $rssData =  preg_replace("/<" . $tag . "(.|s)*?>/","<item>",$rssData);
  49.      $rssData = chop($rssData); // Usuwanie pustych spacji z końca linijek  
  50.      $rssData = ereg_replace("[r,\n]", "", $rssData); // Usuwwanie pustych linijek
  51.      $rssData = strstr($rssData,"<item>"); // Usuwanie wszystie przez <item>.
  52.        
  53.      #==========================
  54.      # Usuwanie zbędnych elemntów tak aby okrojona zawartość mogła zostać zapisana w pliku
  55.  
  56.      # Tagi <description></description> zostają pominięte
  57.      #==========================      
  58.      $tags_and_content_to_strip = Array("description");
  59.  
  60.      foreach ($tags_and_content_to_strip as $tag) {
  61.           $rssData = preg_replace("/<" . $tag . ">(.|s)*?</" . $tag . ">/","",$rssData);
  62.      }
  63.  
  64.      $rssData = str_replace("<item>","", $rssData); // usuwanie tagu <item>
  65.      $rssData = urldecode($rssData); // Zamiana wszystkich: %20 na spacje.
  66.      $rssData = str_replace(strstr("</channel>",$rssData),"",$rssData);
  67.      $rssArray = explode("</item>",$rssData); // Tworzenie tablicy z nagłówkami
  68.  
  69.        $title = array();
  70.      $link = array();
  71.  
  72.      #==========================
  73.      # Ten mechanizm tworzy tablice dla linków oraz nagłówków
  74.      #==========================  
  75.      $x = 0;
  76.      while($x < $liczba) {
  77.          $link[$x] = strstr($rssArray[$x],"<link>"); // usuwanie wszystkiego przed <link>
  78.        $link[$x] = ereg_replace("<link>","",$link[$x]);
  79.         $link[$x] = str_replace(strstr($link[$x],"</link>"),"",$link[$x]);
  80.         $link[$x] = trim($link[$x]);
  81.        $title[$x] = strstr($rssArray[$x],"<title>");
  82.          $title[$x] = ereg_replace("<title>","",$title[$x]); // Usuwanie <title> z części tytułu newsa
  83.          $title[$x] = str_replace(strstr($title[$x],"</title>"),"",$title[$x]); //  Usuwanie </title> oraz wszystkiego poza nim
  84.          $title[$x] = trim($title[$x]);
  85.            $title[$x] = str_replace("wieść: ","",$title[$x]);
  86.            $title[$x] = str_replace("galeria: ","",$title[$x]);
  87.            $title[$x] = str_replace("recenzja: ","",$title[$x]);
  88.        
  89.        if ($trunc != FALSE) { $title[$x] = str_replace(substr($title[$x],$trunc),"",$title[$x]); }
  90.        if ($delim != FALSE) { $title[$x] = str_replace(strstr($title[$x],$delim),"",$title[$x]); }
  91.        
  92.            if ($title[$x] == "") { $liczba = $x; break; } // Gdy już nie ma nagłówków zmienna $liczba przyjmuje wartość maksumalną.
  93.        $x++;
  94.      }
  95.  
  96.      #==========================
  97.      # Zapis do pliku
  98.      #==========================
  99.      $fp = fopen($folder, "w+");
  100.      $x=0;  
  101.      while ($x < $liczba) { // ta pętla zapisuje każdy link osobno.
  102.        fwrite($fp,"<img src=\"gwiazdka.gif\">&nbsp;<a class=\"menu3\" target=\"$target\" href=\"$link[$x]\">$title[$x]</a><br>\n");
  103.        $x++;
  104.      }
  105.     fclose($fp);
  106.     include $folder;
  107.  
  108. } else {
  109.    #==========================
  110.    # Zwracanie błędu gdy podany adres jest błędny.
  111.    #==========================
  112.    echo "<b>Nie mozna połączyć się z adresem: $adres. </b>";
  113.  
  114. }
  115.  
  116. ?>


Ten post edytował floydrose 2.07.2009, 19:49:54
Go to the top of the page
+Quote Post
erix
post
Post #4





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Mam na myśli wygenerowany HTML gdzieś wrzucony, żebym mógł "poklikać" po nim. (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
floydrose
post
Post #5





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 10.05.2009

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


a czy z tego co podesłałem nie da się nic wywnioskować i poklikać na tym, co udostępniłem? reszta nie ma przecież znaczenia
Go to the top of the page
+Quote Post
erix
post
Post #6





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Nie da się wywnioskować. Stylów CSS tu nie ma.

Cytat
nic wywnioskować i poklikać na tym

Jak odpalisz Firebuga/DragonFly/DevTools for IE na podstawie tego, co podałeś, to chyba jesteś jakimś magikiem.
Go to the top of the page
+Quote Post
floydrose
post
Post #7





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 10.05.2009

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


OK. Nie mogę zamieścić stylu CSS, ponieważ jest zbyt długi. Adres mojej strony. Wejdź i zobacz wygenerowane źródło. Jeśli potrzebna Ci zawartość pliku CSS, to pewnie sobie poradzisz z jego odczytaniem, ewentualnie podaj mail (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) . Dzięki za zainteresowanie tematem, czekam na wyczerpującą odpowiedź (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ten post edytował floydrose 3.07.2009, 17:38:19
Go to the top of the page
+Quote Post
erix
post
Post #8





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




No to o coś takiego mi chodziło...
  1. zdecyduj się - albo korzystasz z HTML, albo z XHTML
  2. <font />?! Pomijam już fakt, że z tego się po prostu nie korzysta, ale musiałeś ten znacznik potraktować jako uniwersalny worek na wszystko?
  3. menu zrób na listach wyliczeniowych, nie rób chały
  4. http://osiolki.net/tabelki - nie pomagam przy tabelkowych layach, bo to zupa tagowa
Przejdź na normalne tworzenie layów, wtedy pogadamy.
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 20.12.2025 - 17:59