Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> jak stworzyc taka tablice wielowymiarowa....
menic
post
Post #1





Grupa: Zarejestrowani
Postów: 493
Pomógł: 0
Dołączył: 14.06.2003
Skąd: Tomaszów Lubelski/Rzeszów

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


Chce pobrac dane z bazy i zapisac do postaci tablicy wielowymiarowej. I dąze do otrzymania takie struktury tablicy
Kod
Array

(

    [1] => Array

        (

            [id] => 1

            [idm] => 1

            [name] => telefony stacjonarne

        )

    [1] => Array

        (

            [id] => 2

            [idm] => 1

            [name] => telefony komórkowe

        )

    [1] => Array

        (

            [id] => 3

            [idm] => 1

            [name] => telefony jakies inne

        )

    [2] => Array

        (

            [id] => 4

            [idm] => 2

            [name] => telewizory

        )

    [2] => Array

        (

            [id] => 5

            [idm] => 2

            [name] => radia

        )

)

Jak zauwazyliscie pierwszy index ma byc równy tyle ile [idm].
Upss... Troche namotalem (IMG:http://forum.php.pl/style_emoticons/default/rolleyes.gif)
Ale potrzebne mi to jest pózniej do wyświetlania danych w petli gdzie jest zmienny pierwszy index. Mam nadzieje ze zrozumieliscie o co mi chodzi (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
menic
post
Post #2





Grupa: Zarejestrowani
Postów: 493
Pomógł: 0
Dołączył: 14.06.2003
Skąd: Tomaszów Lubelski/Rzeszów

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


Wiem że stworzenie takiej tablicy jaka podalem jest nie realne, ale chodzilo mi o przedstawienie problemu. Albo moze ja źle mysql i da sie to jakos inaczej zrobic (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Przedstawie teraz do czego mi to jest potrzebne.
Zazwyczaj gdy musialem wyswietlic w petli np. strukture kategorii i for (tak jak na phpbb) to robilem tak[php:1:10d538156e]<?php
$query = mysql_query( "SELECT * FROM kategorie" );
while( $cat = mysql_fetch_assoc( $query ) )
{
echo '<b>'.$cat['name'].'</b><br />';

$query = mysql_query( "SELECT * FROM fora WHERE cid = '".$cat['id']."'" );
while( $for = mysql_fetch_assoc( $query ) )
{
echo $for['title'];
}
}
?>[/php:1:10d538156e]
Oczywiscie to uproszczony kod. Ale takie rozwiazanie jest mocno nieefektywne gdyz musi pobierac duzo zapytan do bazy danych. Pomyslalem wiec ze mozna wszytskie fora wrzucic do jednej tablicy wielowymiarowej. [php:1:10d538156e]<?php
$query = mysql_query( "SELECT * FROM fora" );
while( $q = mysql_fetch_assoc( $query ) )
{
$for[] = $q;
//Oczywiscie inaczej powinno wygladac stworzenie tej tablicy, lecz nie mam koncepcji (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
}

$query = mysql_query( "SELECT * FROM kategorie" );
while( $cat = mysql_fetch_assoc( $query ) )
{
//Teraz tu bedziemy wyswietlali jakos fora tylko ze wlasnie nie wiem jak (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
//Oczywiscie powinna tu byc petla wyswietlajaca fora nalezace do danej kategorii
echo $for[$cat['id']]['title'];
}
?>[/php:1:10d538156e]Tak to schematycznie wyglada. Teraz powinniscie zalapac i moze podac rozwiazanie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Posty w temacie


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: 26.09.2025 - 07:27