Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Problem z tablicami
Fifi209
post
Post #1





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

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


Mam problem z tablicami, pierwszy raz mi się to zdarzyło. ;d

Pobieram dane ze strony, wszystko ładuje do tablic. Potem robię "porządek".
Poprzez funkcję print_r()" title="Zobacz w manualu PHP" target="_manual wyświetlam i jest wszystko ok...
Ale gdy próbuję się dostać poprzez klucz to nic się nie dzieje (nawet błędu ;( )

Kod:

index.php

  1. <?php
  2. include('user.php');
  3. $info = userInfo($_GET['nick']);
  4.  
  5. echo $info['poziom'];
  6. ?>



user.php jest nieważny, odpowiada za pobranie informacji o danym graczu i wrzucenie do tablicy

Wygląd tablicy: (przykładowo)
Kod
Array
(
    [profesja] => Druid
    [plec] => Mezczyzna
    [poziom] => 411
    [mlvl] => 113
)


print_r()" title="Zobacz w manualu PHP" target="_manual jak i
Kod
foreach()
doskonale radzą sobie z obsługą tej tablicy.

Miał ktoś podobny przypadek?

@edit
Zapomniałem powiedzieć, funkcja poprawnie zwraca wszystko do zmiennej $info (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Hmm, gdzie leży przyczyna? (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)

@edit2
var_dump()" title="Zobacz w manualu PHP" target="_manual też sobie z nią poradził...
Kod
array(4) { ["profesja"]=>  string(26) "Druid" ["plec"]=>  string(48) "Mezczyzna" ["poziom"]=>  string(42) "411" ["mlvl"]=>  string(42) "113" }



@edit3
Dodam ten plik user.php

Jest tylko inny link niż u mnie, a tak się niczym nie różni.
Jak widać pobieram dane i wrzucam sobie do tablicy player.
  1. <?php
  2. function userInfo($nick) {
  3.        $user = file_get_contents('http://xxx.pl/'.urlencode($nick));
  4.        $user = str_replace(array(':', 'ł', 'ć', 'ę', 'ż', '-'), array('', 'l', 'c', 'e', 'z', ''), $user);
  5.        preg_match_all('/<td width=\"50%\">([a-zA-Z0-9 ]{5,9})</td>/', $user, $player, PREG_PATTERN_ORDER);
  6.        $info[] = array($player[0][0] => $player[0][1]);
  7.        preg_match_all('/<td width=\"[0-9]+%\" bgcolor=\"#4F4F4F\">([a-zA-Z0-9 ]+)</td>/', $user, $player, PREG_PATTERN_ORDER);
  8.        $info[] = array($player[0][0] => $player[0][1], $player[0][2] => $player[0][3], $player[0][4] => $player[0][5]);
  9.        
  10.        unset($player);
  11.        $player=array();
  12.        
  13.            foreach($info as $key => $value) {
  14.                foreach($value as $key2 => $value2) {
  15.                    $player[strtolower($key2)] = $value2;
  16.                }
  17.            }
  18.  
  19.        return $player;
  20.    }
  21. ?>


Gdzie ja robię błąd? Niby tablica jest itd. ale nie mogę przez te klucze się do niej dostać.

Ten post edytował fifi209 27.04.2009, 18:37:45
Go to the top of the page
+Quote Post

Posty w temacie
- fifi209   [PHP]Problem z tablicami   27.04.2009, 18:37:06
- - #luq   Ogólnie nie możliwe Jedyne co mi przychodzi na m...   27.04.2009, 20:06:08
- - fifi209   Używałem poza funkcją. Też u...   27.04.2009, 20:18:57


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: 22.08.2025 - 19:48