Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Tablica.., Jak to wyświetlić?
kajzur
post
Post #1





Grupa: Zarejestrowani
Postów: 385
Pomógł: 26
Dołączył: 22.03.2008
Skąd: TM

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


Witam, mam problem.. Mam taką tablice:

Kod
Array
(
    [0] => Array
        (
            [0] => http://www.pierwszemiejsce.pl/
            [1] => http://www.comweb.com.pl/
            [2] => http://www.forum.optymalizacja.com/
            [3] => http://pozycjonowanie.pl/
            [4] => http://www.e-arteria.pl/
        )

    [1] => Array
        (
            [0] => PierwszeMiejsce.pl :: Skuteczne Pozycjonowanie Stron
            [1] => ComWeb: pozycjonowanie stron - TANIO - pozycjonowanie stron ...
            [2] => Pozycjonowanie i Optymalizacja - SEO Forum, Hosting, Webhosting ...
            [3] => Pozycjonowanie.pl
            [4] => Arteria - Skuteczne Pozycjonowanie stron www w wyszukiwarkach ...
        )

    [2] => Array
        (
            [0] => Skuteczne pozycjonowanie - Infolinia: 0801 000 605. Pozycjonowanie i optymalizacja stron. Lata doświadczeń, setki klientów.
Kontakt - Oferta - Ile inwestujesz - Gwarancja
            [1] => Skuteczne pozycjonowanie i tworzenie stron - 9 lat doświadczenia! W ofercie pozycjonowanie jednorazowe dla haseł mniej konkurencyjnych i stałe dla trudnych ...
            [2] => Pozycjonowanie stron internetowych. Pozycjonowanie i Optymalizacja Forum - Pozycjonowanie i optymalizacja stron internetowych. Otwarta rozmowa na temat ...
Google - Dla początkujących - Ogłoszenia i Zlecenia
            [3] => Witamy nowych użytkowników Pozycjonowanie.pl, przedstaw się tutaj i napisz czym się zajmujesz i ... Pozycjonowanie, promocja serwisów, spamowanie, narzędzia ...
            [4] => Jeżeli pozycjonowana strona w czasie trwania umowy nie znajdzie się na ustalonej pozycji za jej pozycjonowanie nie pobieramy żadnych opłat ! ...
        )

)


Jak ja mogę ją sensownie wyświetlić? Chodzi mi o plik xml:

  1.  
  2. <?xml version="1.0" encoding="iso-8859-2" ?>
  3. <pages>
  4. <page>
  5. <link>Tutaj wartosci z $pages[0]</link>
  6. <title>Tutaj wartosci z $pages[1]</title>
  7. <desc>Tutaj wartosci z $pages[2]</desc>
  8. </page>
  9. <page>
  10. <link>Tutaj wartosci z $pages[0]</link>
  11. <title>Tutaj wartosci z $pages[1]</title>
  12. <desc>Tutaj wartosci z $pages[2]</desc>
  13. </page>
  14.  
  15. </pages>
I tak dalej.. próbowałem różnych dziwnych pętl, np:

  1. echo '<?xml version="1.0" encoding="iso-8859-2" ?><pages>';
  2.  
  3.  
  4.  for($i=0; $i<count($pages); $i++) // double loop for recive data
  5.  {
  6.  
  7.  echo '<page>';
  8.  
  9.     foreach($pages[$i] as $value)
  10.      {
  11.        
  12.        echo '<link>'.$value.'</link>';
  13.        
  14.        
  15.            foreach($pages[$i] as $value)
  16.              {
  17.                
  18.                echo '<title>'.$value.'</title>';
  19.            
  20.                
  21.                        foreach($pages[$i] as $value)
  22.                      {
  23.                        
  24.                        echo '<desc>'.$value.'</desc>';
  25.                    
  26.                        
  27.                      }
  28.                
  29.              }
  30.        
  31.      }
  32.      
  33.      echo '</page>';
  34.  }
  35.  echo '</pages>';
Rzecz jasna nie działa jak powinno.. Proszę o pomoc. Pozdrawiam (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
Fifi209
post
Post #2





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


Tablica jest źle wygenerowana, dlatego masz z tym kłopot.

Ten post edytował fifi209 24.07.2009, 11:53:54
Go to the top of the page
+Quote Post
dotangelo
post
Post #3





Grupa: Zarejestrowani
Postów: 62
Pomógł: 3
Dołączył: 12.04.2007
Skąd: Wągrowiec

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


Musisz przepisać tablicę.
Kod
$count = count($t1[0]); //zakladamy ze wszystkie 3 tablice maja taki sam rozmiar

for ($i = 0; $i < $count; ++$i){
$newArray[] = array('title' => $t1[0][$i], 'desc'=> $t1[1][$i], 'url'=>$t1[2][$i]);
}


Ten post edytował dotangelo 24.07.2009, 12:36:22
Go to the top of the page
+Quote Post
kajzur
post
Post #4





Grupa: Zarejestrowani
Postów: 385
Pomógł: 26
Dołączył: 22.03.2008
Skąd: TM

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


Teraz mam tak:
Kod
Array
(
    [link] => Array
        (
            [0] => http://www.pierwszemiejsce.pl/
            [1] => http://www.comweb.com.pl/
            [2] => http://www.forum.optymalizacja.com/
            [3] => http://pozycjonowanie.pl/
            [4] => http://www.e-arteria.pl/
        )

    [title] => Array
        (
            [0] => PierwszeMiejsce.pl :: Skuteczne Pozycjonowanie Stron
            [1] => ComWeb: pozycjonowanie stron - TANIO - pozycjonowanie stron ...
            [2] => Pozycjonowanie i Optymalizacja - SEO Forum, Hosting, Webhosting ...
            [3] => Pozycjonowanie.pl
            [4] => Arteria - Skuteczne Pozycjonowanie stron www w wyszukiwarkach ...
        )

    [desc] => Array
        (
            [0] => Skuteczne pozycjonowanie - Infolinia: 0801 000 605. Pozycjonowanie i optymalizacja stron. Lata doświadczeń, setki klientów.
Kontakt - Oferta - Ile inwestujesz - Gwarancja
            [1] => Skuteczne pozycjonowanie i tworzenie stron - 9 lat doświadczenia! W ofercie pozycjonowanie jednorazowe dla haseł mniej konkurencyjnych i stałe dla trudnych ...
            [2] => Pozycjonowanie stron internetowych. Pozycjonowanie i Optymalizacja Forum - Pozycjonowanie i optymalizacja stron internetowych. Otwarta rozmowa na temat ...
Google - Dla początkujących - Ogłoszenia i Zlecenia
            [3] => Witamy nowych użytkowników Pozycjonowanie.pl, przedstaw się tutaj i napisz czym się zajmujesz i ... Pozycjonowanie, promocja serwisów, spamowanie, narzędzia ...
            [4] => Jeżeli pozycjonowana strona w czasie trwania umowy nie znajdzie się na ustalonej pozycji za jej pozycjonowanie nie pobieramy żadnych opłat ! ...
        )

)


Plik XML już mam..
  1. echo '<?xml version="1.0" encoding="iso-8859-2" ?><pages>';
  2. for($i=0; $i<= $count; $i++)
  3. {
  4. echo '<page>';
  5. echo '<link>'.$pages['link'][$i].'</link>';
  6. echo '<title>'.$pages['title'][$i].'</title>';
  7. echo '<desc>'.$pages['desc'][$i].'</desc>';
  8. echo '</page>';
  9. }
  10. echo '</pages>';

Dziękuję za pomoc!



PS. Jak mogę wywalić linki? Mam kilka w tablicy $pages['desc'], próbowałem napisać wyrażenie ale nie jestem w tym najlepszy..

  1. <?php
  2. foreach($pages['desc'] as $dsc)
  3. {
  4.  
  5. preg_replace('@<a href="(.*)">(.*) </a>@', '', $dsc);
  6.  
  7. }
  8. ?>


Ten post edytował kajzur 24.07.2009, 13:04:32
Go to the top of the page
+Quote Post
TrevorGryffits
post
Post #5





Grupa: Zarejestrowani
Postów: 139
Pomógł: 24
Dołączył: 29.07.2007
Skąd: Tarnowskie Góry

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


Sprawdź, czy ruszy:
  1. <?php
  2. foreach($pages['desc'] as $key => $dsc)
  3. {
  4.  
  5. $pages['desc'][$key] = preg_replace('@<a href=".*?">.*?</a>@', '', $dsc);
  6.  
  7. }
  8. ?>
Go to the top of the page
+Quote Post
kajzur
post
Post #6





Grupa: Zarejestrowani
Postów: 385
Pomógł: 26
Dołączył: 22.03.2008
Skąd: TM

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


Nie ma błędu, ale nie wywala linków..
Go to the top of the page
+Quote Post
Fifi209
post
Post #7





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


  1. <?php
  2.  
  3.    $tekst = '
  4.    TUtja <a href="asdfsadfsadf.php">kupa</a> asfdasd fasdf sa<a href="asdfsadf.php?asdf=sdf">jh8h9s</a>asfdgasf
  5.    ';
  6.    
  7.    preg_match_all('/<a href="([^\"]+)">([^<]+)</a>/', $tekst, $matches, PREG_PATTERN_ORDER);
  8.    
  9.    echo '<pre>';
  10.        print_r($matches);
  11.        
  12.    echo '</pre>';
  13.    
  14. ?>


Ten post edytował fifi209 24.07.2009, 15:11:21
Go to the top of the page
+Quote Post
osl
post
Post #8





Grupa: Zarejestrowani
Postów: 260
Pomógł: 41
Dołączył: 6.04.2009
Skąd: Gdańsk/okolice

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


jeśli są to linki ze strony, mogą mieć trochę więcej atrybutów niż tylko "href" i dlatego może nie działać.
wstaw te pare linków w wersji źródła html...
Go to the top of the page
+Quote Post
kajzur
post
Post #9





Grupa: Zarejestrowani
Postów: 385
Pomógł: 26
Dołączył: 22.03.2008
Skąd: TM

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


  1. $count = count($pages['title']);
  2.  
  3. foreach($pages['desc'] as $key => $dsc)
  4. {
  5.  
  6. $pages['desc'][$key] = preg_replace('/<a href="([^\"]+)">([^<]+)</a>/','', $dsc);
  7.  
  8. }
  9.  
  10. echo '<?xml version="1.0" encoding="iso-8859-2" ?><pages>';
  11. for($i=0; $i<= $count; $i++)
  12. {
  13. echo '<page>';
  14. echo '<link>'.$pages['link'][$i].'</link>';
  15. echo '<title>'.$pages['title'][$i].'</title>';
  16. echo '<desc>'.$pages['desc'][$i].'</desc>';
  17. echo '</page>';
  18. }
  19. echo '</pages>';


Tak to wygląda, tylko że teraz kasuje tak jakby całą tablice $pages['desc'].. Nie wyświetla wogóle z tej tablicy danych..

Tak wygląda link jeden, jest ich koło 8..

<a href="/url?q=http://www.pierwszemiejsce.pl/kontakt.php&amp;ei=sr9pSvP0HpHbjQfHssW2Cw&amp;sa=X&amp;oi=oneline_sitelinks&amp;resnum=1&amp;ct=result&amp;cd=1&amp;usg=AFQjCNHmAW613r_X213woPODamP8AL7bLA" >Kontakt</a>
Go to the top of the page
+Quote Post
Fifi209
post
Post #10





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


  1. <?php
  2. $tekst = '
  3.    TUtja <a href="asdfsadfsadf.php">kupa</a> asfdasd fasdf sa<a href="asdfsadf.php?asdf=sdf">jh8h9s</a>asfdgasf
  4.    ';
  5.    
  6.    echo preg_replace('/<a href="[^\"]+">[^<]+</a>/', '', $tekst);
  7. ?>


Przerobiony mój poprzedni przykład. Działa - testowałem.

Ten post edytował fifi209 24.07.2009, 15:17:48
Go to the top of the page
+Quote Post
kajzur
post
Post #11





Grupa: Zarejestrowani
Postów: 385
Pomógł: 26
Dołączył: 22.03.2008
Skąd: TM

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


Kod
foreach($pages['desc'] as $key => $dsc)
{

$pages['desc'][$key] = preg_replace('/<a href="[^\"]+">[^<]+</a>/','', $dsc);

}


PRzy takiim kodzie dostaję kilkanaście błędów: Warning: preg_replace() [function.preg-replace]: Unknown modifier 'a' in /home/xx/domains/xxx/public_html/xxx/test.php on line 33

a linia 33 to $pages['desc'][$key] = preg_replace('/<a href="[^\"]+">[^<]+</a>/','', $dsc);
Go to the top of the page
+Quote Post
osl
post
Post #12





Grupa: Zarejestrowani
Postów: 260
Pomógł: 41
Dołączył: 6.04.2009
Skąd: Gdańsk/okolice

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


trzeba pewnie "wyescejpować" (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
<\/a> zamiast </a>
Go to the top of the page
+Quote Post
kajzur
post
Post #13





Grupa: Zarejestrowani
Postów: 385
Pomógł: 26
Dołączył: 22.03.2008
Skąd: TM

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


Nie ma błędu, ale teraz nadal są linki ;>
Go to the top of the page
+Quote Post
Fifi209
post
Post #14





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


Cytat(kajzur @ 24.07.2009, 15:26:26 ) *
Nie ma błędu, ale teraz nadal są linki ;>


pokaż przerobiony kod, bo z fusów trudno się wróży.
Go to the top of the page
+Quote Post
kajzur
post
Post #15





Grupa: Zarejestrowani
Postów: 385
Pomógł: 26
Dołączył: 22.03.2008
Skąd: TM

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


  1. $count = count($pages['title']);
  2.  
  3. foreach($pages['desc'] as $key => $dsc)
  4. {
  5.  
  6. $pages['desc'][$key] = preg_replace('/<a href="[^\"]+">[^<]+</a>/','', $dsc);
  7.  
  8. }
  9.  
  10. echo '<?xml version="1.0" encoding="iso-8859-2" ?><pages>';
  11. for($i=0; $i<= $count; $i++)
  12. {
  13. echo '<page>';
  14. echo '<link>'.$pages['link'][$i].'</link>';
  15. echo '<title>'.$pages['title'][$i].'</title>';
  16. echo '<desc>'.$pages['desc'][$i].'</desc>';
  17. echo '</page>';
  18. }
  19. echo '</pages>';
Go to the top of the page
+Quote Post
Fifi209
post
Post #16





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


Już wiem co nie grało. (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Daj tak:
Kod
/<a href="[^\"]+"[ ]?>[^<]+<\/a>/
Go to the top of the page
+Quote Post
kajzur
post
Post #17





Grupa: Zarejestrowani
Postów: 385
Pomógł: 26
Dołączył: 22.03.2008
Skąd: TM

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


Wielkie dzięki, czas najwyższy abym zaczął się uczyć tych wyrażeń.. Ale coś ciężko idzie. Ale wielkie dzięki za pomoc!
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: 2.01.2026 - 20:27